前置作業
VSCode
Nodejs
,可安裝nvm
隨意切換與安裝不同版本
Git
初始化專案
使用Yeoman
來初始化擴展專案
npm install --global yo generator-code
yo code
Yeoman
導覽會帶你一步一步建立專案
設定好一些專案的詳細資訊後就可以開始寫code
了!
一些基本文件介紹
F5
可以進入debug
模式,測試擴展
.vscode
資料夾存放程式執行和debug
的命令
vsc-extension-quickstart.md
簡單介紹了擴展的入門知識
src
就是放原始碼的地方
package.json
是擴展設定的檔案
Package.json
main
為擴展入口,也就是程式的root
contributes
中的commands
是設定命令的地方,該命令需與原始碼中的命令一致才能呼叫
實際開發
vscode.commands.registerCommand
可以設定command
- 使用
context.subscriptions.push
把命令註冊到context
中,這樣擴展關閉的時候會自動釋出
本次的目標是開發一個能夠透過commands
自動貼入程式碼片段的擴展
我把extension.ts
當作程式入口,並且根據不同command
呼叫對應的功能(放在util
裡面)
Note
功能範例
這個擴展功能很好開發,剩下的就是準備好各式文件,並上架marketplace
我主要動到的有以下
package.json
: 整個擴展的詳細資訊與各種設定(官方手冊有說明文件)
pacakge-lock.json
: 各種依賴的版本號
README.md
: 擴展的說明與手冊
CHANGELOG.md
: 版本的修改紀錄,撰寫手冊
LICENSE
: MIT, GPL-3等,上架會需要用到
發布與上架
測試完成後就準備發布
安裝擴展封裝與發布工具npm install -g @vscode/vsce
vsce package
命令可以把擴展封裝,並且在vscode
本地安裝測試
vsce publish
命令發布擴展
但是在發布前需要到azure
註冊與建立用戶,請參閱
註冊好了之後就可以使用token
進行發布了!過幾分鐘後會在marketplace看到
一些參考網站