[Perl]如何在 VScode 建立 Perl 的程式開發環境 (Windows/Linux)
據說 Perl 可能是近幾年會消失的 5 種程式語言之一,另外 4 個語言則是 Ruby、Haskell、Object-C 跟 R! 現在在 VScode 建立 Perl 的程式開發環境算是幫 Perl 續一下命,大慈大悲、功德無量。
在 VScode 建立 Perl 的開發環境主要分為三個步驟:
- 安裝 Perl 的執行環境
- 安裝 VScode IDE
- 在 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 Navigator: 即時程式補完、即時語法檢查、即時錯誤訊息、前往定義、自動排版 (格式器)...
- Perl Debug Adapter: 執行與偵錯、檢視變數、中斷點... (Debug Adapter installation)
安裝好 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 延伸模組
顯示/美化:
- Chinese (Traditional) Language Pack: 正體中文語言套件。
- One Dark Pro: 不錯看的深色佈景主題。
- indent-rainbow: 用不同顏色修飾程式碼縮排的層級。
- Highlight Line: 突顯你游標的所在行。
Markdown:
- Markdown Preview Enhanced: 在 VScode 直接預覽 Markdown 文件,支援 Latex 語法的數學公式,以及 Mermaid 流程圖 (簡介)。
- Paste Image: 在編輯 Markdown 文件時,按 Ctrl + Alt + V 即可將剪貼簿中的圖片貼到該文件的資料夾,並且自動於 Markdown 文件中插入圖片語法: ,這些動作一氣呵成,能節省我們許多寶貴的時間。建議於 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 + J 或 L 切換書籤。
- Favorites: 增加「我的最愛」面板及功能,讓你將檔案加入我的最愛。
AI:
SVN 版本控制:
- TortoiseSVN Helper: 如果你有安裝 TortoiseSVN,這模組會把 TortoiseSVN 的功能整合在滑鼠右鍵選單,幫你呼叫 TortoiseSVN 的圖形介面來使用 (for Windows)。
- SVN: 這模組可在 VScode 的側邊欄檢視檔案提交的 Log,也可讓你用「指令」操作 SVN。你的電腦必須安裝 TortoiseSVN 的命令列工具 (for Windows)。
- rabbitvcs-svn: 你的主機需安裝 RabbitVCS (for Linux)。
for Python:
- Python (Microsoft)
- Pylance (Microsoft): Python 語言伺服器。
- autoDocstring: 快速產生 Docstring。
網頁/圖片編輯:
- Live Preview: 在你的電腦啟動一個 Web 伺服器,當你在 VScode 編輯的網頁時,可以在 VScode 的分頁「即時」預覽網頁的效果。與 Live Server 擇一安裝即可。
- Live Server: 在你的電腦啟動一個 Web 伺服器,當你在 VScode 編輯的網頁按「儲存」時,會在瀏覽器中自動重新載入網頁內容。與 Live Preview 擇一安裝即可。
- SVG: 加入 SVG 圖片的預覽及編輯功能。
其它:
- Code Spell Checker: 英文拼字檢查。
VScode 常用的鍵盤快速鍵
- F1 或 Ctrl + ⇧Shift + P: 命令選擇區
- Alt + 左 或 右: 切換開啟的檔案
- Ctr + Tab: 切換開啟的檔案
- Ctrl + J: 顯示/隱藏下方面版
- Ctrl + B: 顯示/隱藏左側邊欄
- Ctrl + Alt + B: 顯示/隱藏右側側邊欄
- Alt + 上 或 下: 移動程式行
- ⇧Shift + Alt + 上 或 下: 複製程式行
- Ctrl + K → Ctrl + F: 排版選取的程式碼
- ⇧Shift + Alt + F: 排版整個文件
- Ctrl + G: 前往指定行
- Ctrl + K → Ctrl + Q: 前往上次編輯位置
- 按住 Ctrl 點選物件: 前往定義
- F8: 移至有錯誤的程式行
- Ctrl + E: 搜尋並開啟檔案
- Ctrl + P: 搜尋並開啟檔案
- Ctrl + D: 快速選取相同字串
- Ctrl + K → Z: Zen 模式
- Ctrl + K → Ctrl + T: 變更色彩佈景主題
- Ctrl + ,: 偏好設定
No comments yet.