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

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

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

  1. 安装 Perl 的执行环境
  2. 安装 VS Code Editor
  3. 在 VS Code 安装 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 的执行环境之后,要达到 VS Code 延伸模组的需求,要再安装以下几个 Perl 模组:

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

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

 

2. 安装 VS Code Editor

下载网址:

for Windows:

下载 .exe 执行档来安装...没什么特别要写的。

for RHEL/CentOS Linux:

下载 .rpm 档,安装指令:

$ rpm -ivh Filename.rpm

执行 VS Code:

$ code

for Ubuntu Linux:

下载 .deb 档,安装指令:

$ dpkg -i Filename.deb

执行 VS Code:

$ code

 

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

Perl 延伸模组

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

安装好 Perl 的延伸模组后,当第一次按 F5 要执行与侦错时,VS Code 会请你建立一个 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 就不会暂停了。

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

不推荐的 Perl 延伸模组

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

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

补充资料

补充几个在 VS Code 中,有助于加强程式设计或管理功能的延伸模组:

  • Chinese (Traditional) Language Pack: VS Code 的正体中文语言套件。
  • Error Lens: 将侦错器诊断出来程式的错误讯息显示在程式行的后面。
  • Code Runner: 一键执行程式档,或选取范围的程式码,支援 50+ 种程式语言 (不过你必须自己安装编译器)。安装后工具列会多出一个“执行”图示,也可用快速键: 按 Ctrl + Alt + N 执行程式,按 Ctrl + Alt + M 停止执行 (作者的说明)。
  • Todo Tree: 汇整程式备注中的待办事项,可用的关键字: BUG, TODO, FIXME, HACK, XXX, [ ], [x]
  • Bookmarks: 增加“书签”面板及功能,可将档案的特定位置加入书签。快速键: 按 Ctrl + Alt + K 新增书签,按 Ctrl + Alt + J / L 切换书签。

由于本文是着重在 Perl 的程式开发,其它关于 VS Code 的相关说明、延伸模组、快速键...等资料,请参考本站的这篇文章

参考网页

  1. No comments yet.

  1. No trackbacks yet.

return top

%d 位部落客按了赞: