以下是开发并发布 VS Code 扩展的简易指南,帮你一步步创建一个可以在 VS Code 中运行的扩展。
1. 准备开发环境
在开始开发前,需要安装一些基础工具:
# 安装 Yeoman 和 VS Code 扩展生成器
npm install -g yo generator-code
Yeoman 和生成器工具会帮助你快速创建一个扩展项目的基本框架。
2. 创建扩展项目
使用生成器来创建项目框架:
# 运行命令来创建新扩展项目
yo code
按照以下提示进行选择:
- 选择 “New Extension (TypeScript)”
- 输入扩展名称,例如
markdown-helper - 设置标识符为
markdown-helper - 其他选项可以使用默认值
这将生成一个包含基本文件结构的项目,为后续开发打好基础。
3. 实现扩展的功能代码
在这个例子中,我们将添加一个功能,让用户可以加粗选中的 Markdown 文本。
打开 src/extension.ts 文件,添加以下代码:
import * as vscode from 'vscode';
export function activate(context: vscode.ExtensionContext) {
let disposable = vscode.commands.registerCommand('markdown-helper.formatText', () => {
const editor = vscode.window.activeTextEditor;
if (!editor) return;
const selection = editor.selection;
const text = editor.document.getText(selection);
// 加粗选中的文本
const formattedText = `**${text}**`;
editor.edit(editBuilder => {
editBuilder.replace(selection, formattedText);
});
});
context.subscriptions.push(disposable);
}
export function deactivate() {}
实际应用举例
当你写作 Markdown 文档时,选中一段文本,按下快捷键或运行该命令,可以快速将该段文本加粗,例如从 文本 变成 **文本**。
4. 设置配置文件
在项目根目录的 package.json 中配置命令和快捷键:
{
"contributes": {
"commands": [
{
"command": "markdown-helper.formatText",
"title": "Format Markdown Text"
}
],
"keybindings": [
{
"command": "markdown-helper.formatText",
"key": "ctrl+m",
"mac": "cmd+m",
"when": "editorTextFocus"
}
]
}
}
5. 调试与测试扩展
- 按下
F5进入调试模式,会在 VS Code 中打开一个新的窗口。 - 在新窗口中:
- 打开一个文件并选中一段文本
- 按下
Ctrl+Shift+P,输入Format Markdown Text并选择该命令
- 检查选中的文本是否成功加粗,确保功能正常。
6. 打包与发布
在准备发布前,需要打包扩展:
- 安装打包工具
vsce:npm install -g vsce - 运行打包命令生成
.vsix文件:vsce package - 你可以在本地安装
.vsix文件测试扩展效果:code --install-extension markdown-helper-0.0.1.vsix
7. 主要功能概述
这个扩展的核心功能是为选中的 Markdown 文本提供加粗格式。它:
- 允许用户通过命令或快捷键快速加粗文本
- 支持用户在 Markdown 编辑器中流畅操作
8. 开发和发布建议
- 使用 TypeScript:提供类型检查,减少代码错误。
- 错误处理:确保在功能操作时给出清晰的错误提示,避免用户体验受到影响。
- 优化用户体验:测试功能的注册情况和快捷键,保证操作简单有效。
9. 更新 README.md
发布前,更新 README.md 让用户了解功能和使用方法:
# Markdown Helper
## 功能描述
为 Markdown 文本加粗提供快捷方式
## 使用方法
1. 选中文本
2. 执行命令 `Format Markdown Text` 或使用快捷键 `Ctrl+M`
## 更新日志
记录每次更新的内容,便于用户了解改进情况
10. 发布扩展
发布到 VS Code Marketplace 前:
- 更新版本号:确保
package.json中的版本号递增。 - 打包并发布:
vsce package vsce publish - 如果命令行发布有问题,可以在 VS Code Marketplace 手动上传
.vsix文件。
11. 常见问题与发布注意事项
- 图标规范:推荐使用 128x128 的 PNG 图片作为图标。
- 等待时间:首次发布后需要约 5-30 分钟才能在 Marketplace 上显示。
通过这些简单的步骤,你可以快速开发一个实用的 VS Code 扩展,为更多用户提供便捷的功能体验。