- Vixual - http://www.vixual.net/blog -

[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 變數,加入這三個路徑即可使用:

另一個方法是用 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 延伸模組

我還有安裝過這兩個延伸模組:

補充資料

補充幾個在 VS Code 中,有助於加強程式設計或管理功能的延伸模組:

由於本文是著重在 Perl 的程式開發,其它關於 VS Code 的相關說明、延伸模組、快速鍵...等資料,請參考本站的這篇文章

參考網頁