vscode-ext-commands 是做什么的?
为 VS Code 扩展贡献命令的指南,涵盖命名约定、可见性、本地化及其他相关属性,遵循 VS Code 扩展开发指南、库和最佳实践。
命令命名约定
命令名称应使用点分隔的层次结构,例如:extensionName.commandName。命名应清晰、唯一,并避免与内置或其他扩展的命令冲突。
可见性
通过 when 子句控制命令的可见性,例如在命令定义中指定上下文键值对,确保命令只在适当的上下文中显示。
本地化
使用 package.nls.json 文件定义命令的本地化标题和描述。在 package.json 中引用本地化键,以便 VS Code 根据用户语言环境自动选择对应的文本。
其他属性
命令还支持 category 属性(用于分组)、icon 属性(指定图标)、以及 enablement 属性(基于条件启用/禁用)。参考 VS Code 扩展开发文档获取完整列表。
注册命令
在扩展的 activate 函数中通过 vscode.commands.registerCommand 注册命令,并传入命令 ID 和回调函数。
最佳实践
- 始终为命令提供本地化的标题和描述。
- 使用
when子句避免在无关上下文中显示命令。 - 优先使用已有的
vscode贡献点名称空间,避免与核心命令冲突。 - 在回调函数中处理错误,提供用户友好的反馈。