VSCode插件开发从“Hello World”起步很简单,只需用yo code脚手架生成TypeScript模板,配置package.json的activationEvents、main和commands字段,编写命令逻辑并调试运行即可。

开发一个 VSCode 插件,从“Hello World”开始并不难,关键是理解插件的基本结构和激活时机。你不需要写一堆配置或打包脚本,VSCode 官方的 yo code 脚手架能快速生成标准模板,剩下的就是改几行代码、注册一个命令、触发一次弹窗。
创建插件项目
确保已安装 Node.js(v16+)和 Yeoman:
- 运行
npm install -g yo generator-code - 执行
yo code,选择 “New Extension (TypeScript)” - 按提示填写插件名(如
hello-world-sample)、描述、ID 等信息
完成后会生成一个含 src/extension.ts、package.json 和调试配置的完整项目。
理解 package.json 中的关键字段
这是插件的“身份证”,VSCode 靠它识别功能和权限:
-
"activationEvents":定义插件何时被加载,比如"onCommand:hello-world.helloWorld"表示只在用户执行该命令时激活(推荐,提升启动性能) -
"main":指向编译后的入口文件(默认是./out/extension.js) -
"contributes.commands":声明插件提供的命令,必须与代码中注册的 ID 一致
别漏掉 engines.vscode 字段,建议设为 =1.80.0" 保证兼容性。
编写核心逻辑(extension.ts)
打开 src/extension.ts,修改 activate 函数即可:
- 用
vscode.commands.registerCommand注册一个命令,ID 必须和package.json里声明的一致 - 回调函数中调用
vscode.window.showInformationMessage弹出 “Hello World” - TypeScript 类型已自动导入,不用手动补全
示例片段:
export function activate(context: vscode.ExtensionContext) {
let disposable = vscode.commands.registerCommand('hello-world.helloWorld', () => {
vscode.window.showInformationMessage('Hello World from hello-world-sample!');
});
context.subscriptions.push(disposable);
}
运行与调试
按 F5 启动插件调试环境——VSCode 会打开一个新窗口(Extension Development Host),在里面按 Ctrl+Shift+P(Win/Linux)或 Cmd+Shift+P(Mac),输入 “Hello World”,选择对应命令即可看到弹窗。
修改代码后保存,调试窗口会自动热重载(部分变更仍需重启)。想装到主 VSCode 里?执行 npm run package 生成 .vsix 文件,然后通过 “Extensions → … → Install from VSIX” 安装。
基本上就这些。没有复杂构建、不涉及 UI 渲染、也不用处理进程通信——真正的 Hello World 级起步。后续再加状态管理、Webview 或设置项,都是在这个骨架上延展。










