[Perl]如何在 VScode 建立 Perl 的程式开发环境 (Windows/Linux)

据说 Perl 可能是近几年会消失的 5 种程式语言之一,另外 4 个语言则是 RubyHaskellObject-CR! 现在在 VScode 建立 Perl 的程式开发环境算是帮 Perl 续一下命,大慈大悲、功德无量。

在 VScode 建立 Perl 的开发环境主要分为三个步骤:

  1. 安装 Perl 的执行环境
  2. 安装 VScode IDE
  3. 在 VScode 安装 Perl 的延伸模组 (Extension)

1. 安装 Perl 的执行环境

for Windows:

Windows 作业系统就直接安装 Strawberry Perl for Windows。Strawberry Perl 整合了 Perl 执行环境及 GNU 编译器 (后续要安装模组时会用到 GNU 编译器),下载网址:

选择你要的版本下载即可,怕麻烦的就直接安装最新版本的 MSI 档,安装程式会帮你设定好 Windows 的环境变量。

不怕麻烦,或需要同时拥有不同 Perl 版本的,就下载 Portable 版来使用。Portable 版安装好需自己设定环境变量中的 Path 变量,加入这三个路径即可使用:

  • <安装目录>\perl\bin
  • <安装目录>\perl\site\bin
  • <安装目录>\c\bin

另一个方法是用 Miniconda 建立 Perl 执行环境,指令:

$ conda create -n perl-env
$ conda activate perl-env
$ conda install perl

Miniconda 可参考本站另一篇教学。不过 Miniconda 仍需要自己设定环境变量中的 Path 变量。

for Linux:

Linux 作业系统通常都会具备 Perl 的执行环境了,如果没有,就自行用套件管理程式安装 Perl 与编译工具,例如:

$ yum install perl perl-CPAN
$ yum install make

或:

$ apt install perl
$ apt install make

记得要安装 make 唷!

查看 Perl 版本:

进入命令列模式或终端机,查看一下 Perl 与 CAPN 的版本,确保可以正常执行。例如:

C:\>perl -v
This is perl 5, version 28, subversion 2 (v5.28.2) built for MSWin32-x64-multi-thread
Copyright 1987-2019, Larry Wall
...

C:\>cpan -v
Loading internal logger. Log::Log4perl recommended for better logging
>(info): C:\Strawberry-Perl\5.28\perl\bin/cpan script version 1.675, CPAN.pm version 2.26

安装 Perl 模组:

在你的作业系统安装好 Perl 的执行环境之后,要达到 VScode 延伸模组的需求,还要安装以下几个 Perl 模组:

$ cpan PadWalker
$ cpan Data::Dumper
$ cpan Perl::Tidy

其中,PadWalker & Data::Dumper 是为了让 VScode 在侦错时的“变量”面板可以取得程式执行时的变量,而 Perl::Tidy 则是自动排版程式码的格式器。

 

2. 安装 VScode IDE

下载网址:

for Windows:

没什么好写的。

for RHEL/CentOS Linux:

下载 .rpm 档,安装指令:

$ rpm -ivh Filename.rpm

执行 VScode:

$ code

for Ubuntu Linux:

下载 .deb 档,安装指令:

$ dpkg -i Filename.deb

执行 VScode:

$ code

 

3. 在 VScode 安装 Perl 的延伸模组 (Extension)

Perl 延伸模组

只要安装这两个模组即可:

安装好 Perl 的延伸模组后,第一次按 F5 要执行与侦错时,VScode 会请你建立一个 launch.json 档案,点一下 [建立 launch.json 档案] 让它自动建立即可。launch.json 的内容如下:

{
    "version": "0.2.0",
    "configurations": [
        {
            "type": "perl",
            "request": "launch",
            "name": "Perl Debug",
            "program": "${workspaceFolder}/${relativeFile}",
            "stopOnEntry": true
        }
    ]
}

这个档案可以修改 stopOnEntry 参数,将 true 改为 false,避免每次按 F5 执行 Perl 程式都会先暂停在第一行程式码,要再按一次 F5 才会执行到最后! 改成 false 就不会暂停了。

另外,你如果想要在 VScode 侦错时查看“变量”面板显示的变量,那么你得在程式中设“中断点”才行,这点不如 Spyder 方便 (不过 Spyder 不支援 Perl)。

其它 Perl 延伸模组

我还有安装过这两个延伸模组:

  • Perl Toolbox: 这模组于程式码执行后才会取得语法与程式错误,并非即时。而显示的 Linting 警告过于严格,除非你想要看到严格的警告讯息才安装。不过程式写得太严谨会违反 Perl 的中心思想 😅 。
  • Perl (Gerald Richter): 这是在 VScode 的延伸模组搜寻 perl 时,会出现在第一笔的模组。要使用这个模组,你的主机环境也要自行安装 Perl::LanguageServer 模组。只是我好不容易将全部的模组都装好了,在 VScode 里却只有“程式补完”可使用,其它网页上写的功能,如: 语法检查、除错、显示变量、前往定义、自动排版 (格式器)...通通无法使用! 我不死心的在 Windows 与 Ubuntu 中测试都一样! 在这里写出来是叫大家可以不用试了! 但是你如果知道是什么原因造成的,也请留言告诉我!

 

补充资料

推荐的 VScode 延伸模组

显示/美化:

Markdown:

  • Markdown Preview Enhanced: 在 VScode 直接预览 Markdown 文件,支援 Latex 语法的数学公式,以及 Mermaid 流程图 (简介)
  • Paste Image: 在编辑 Markdown 文件时,按 Ctrl + Alt + V 即可将剪贴簿中的图片贴到该文件的资料夹,并且自动于 Markdown 文件中插入图词组法: ![](Filename.png),这些动作一气呵成,能节省我们许多宝贵的时间。建议于 settings.json 加入以下的设定:
    "pasteImage.path": "${currentFileDir}/images"

    这样可以将贴上的图片集中于 images 资料夹

程式功能:

  • Code Runner: 一键执行程式或选取范围的程式码,支援超过 50 种程式语言 (不过你必须自己安装编译器),安装后工具列会多出一个“执行”图示,也可用快速键: 按 Ctrl + Alt + N 执行程式,按 Ctrl + Alt + M 停止执行 (作者说明)。如果执行 Python 程式时的中文全都变成乱码,可于 settings.json 加入以下的编码设定:
    "code-runner.executorMap": {
        "python": "set PYTHONIOENCODING=utf8 && python -u",
    }
  • IntelliCode API Usage Examples: 帮你查询函式在网络上的使用范例,可惜只支援 Python、JavaScript、TypeScript。

管理:

  • Todo Tree: 整理程式备注中的待办事项,可用的关键字: TODO, FIXME, HACK, XXX, [ ], [x]
  • Bookmarks: 增加“书签”面板及功能,可将档案的特定位置加入书签。快速键: 按 Ctrl + Alt + K 新增书签,按 Ctrl + Alt + JL 切换书签。
  • Favorites: 增加“我的最爱”面板及功能,让你将档案加入我的最爱。

AI:

  • Tabnine: 真正的“自动完成”程式码,几乎支援所有的程式语言。要注册免费的 Tabnine 帐号才能使用。

SVN 版本控制:

  • TortoiseSVN Helper: 如果你有安装 TortoiseSVN,这模组会把 TortoiseSVN 的功能整合在鼠标右键选单,帮你呼叫 TortoiseSVN 的图形接口来使用 (for Windows)。
  • SVN: 这模组可在 VScode 的侧边栏检视档案提交的 Log,也可让你用“指令”操作 SVN。你的电脑必须安装 TortoiseSVN 的命令列工具 (for Windows)。
  • rabbitvcs-svn: 你的主机需安装 RabbitVCS (for Linux)。

for Python:

网页/图片编辑:

  • Live Preview: 在你的电脑启动一个 Web 服务器,当你在 VScode 编辑的网页时,可以在 VScode 的分页“即时”预览网页的效果。与 Live Server 择一安装即可。
  • Live Server: 在你的电脑启动一个 Web 服务器,当你在 VScode 编辑的网页按“储存”时,会在浏览器中自动重新加载网页内容。与 Live Preview 择一安装即可。
  • SVG: 加入 SVG 图片的预览及编辑功能。

其它:

 

VScode 常用的键盘快速键

  • F1Ctrl + ⇧Shift + P: 命令选择区
  • Alt + : 切换开启的档案
  • Ctr + Tab: 切换开启的档案
  • Ctrl + J: 显示/隐藏下方面版
  • Ctrl + B: 显示/隐藏左侧边栏
  • Ctrl + Alt + B: 显示/隐藏右侧侧边栏
  • Alt + : 移动程式行
  • ⇧Shift + Alt + : 复制程式行
  • Ctrl + KCtrl + F: 排版选取的程式码
  • ⇧Shift + Alt + F: 排版整个文件
  • Ctrl + G: 前往指定行
  • Ctrl + KCtrl + Q: 前往上次编辑位置
  • 按住 Ctrl 点选物件: 前往定义
  • F8: 移至有错误的程式行
  • Ctrl + E: 搜寻并开启档案
  • Ctrl + P: 搜寻并开启档案
  • Ctrl + D: 快速选取相同字串
  • Ctrl + KZ: Zen 模式
  • Ctrl + KCtrl + T: 变更色彩布景主题
  • Ctrl + ,: 偏好设定

 

参考网页

  1. No comments yet.

  1. No trackbacks yet.

return top

%d 位部落客按了赞: