信息发布→ 登录 注册 退出

VSCode上下文菜单_右键菜单项自定义添加

发布时间:2025-11-20

点击量:
通过扩展开发可自定义VSCode右键菜单:1. 创建扩展并修改package.json,在contributes.menus中指定位置如explorer/context;2. 添加命令项并设置when条件与分组;3. 在extension.js中用registerCommand实现逻辑;4. 使用group和when控制排序与显示。重启或调试即可生效,适用于提升效率与工具集成。

VSCode 右键菜单(上下文菜单)的自定义可以通过扩展开发实现,原生设置中不支持直接修改菜单项,但你可以通过创建或修改 package.json 中的 contributes.menus 来添加自己的命令菜单项。

1. 创建或修改扩展插件

如果你想在右键菜单中添加自定义功能,需要编写一个简单的 VSCode 扩展:

  • 运行 yo code(需先安装 Yeoman 和 generator-code)生成扩展模板
  • 或手动创建 package.jsonextension.js 等基础文件

2. 在 package.json 中添加菜单项

使用 contributes.menus 字段指定菜单出现的位置。常见右键菜单位置包括:

  • editor/context:编辑器内右键菜单
  • explorer/context:资源管理器文件/文件夹右键
  • timeline/item/context:时间线右键等

示例:在资源管理器右键添加“Open in Terminal”命令

"contributes": { "menus": { "explorer/context": [ { "command": "extension.openTerminal", "when": "resourceScheme == file", "group": "navigation" } ] }, "commands": [ { "command": "extension.openTerminal", "title": "Open in Terminal" } ] }

3. 实现命令逻辑

extension.js(或 .ts)中注册对应命令:

const vscode = require('vscode'); function activate(context) { let disposable = vscode.commands.registerCommand('extension.openTerminal', (uri) => { const terminal = vscode.window.createTerminal(`Terminal: ${uri.fsPath}`); terminal.show(); terminal.sendText(`cd "${uri.fsPath}"`); }); context.subscriptions.push(disposable); } module.exports = { activate };

4. 菜单项分组与排序

可通过 group 控制菜单分组位置:

  • navigation:主操作区
  • copyedit:编辑相关
  • custom:自定义组,可用 group: "myGroup@3" 控制顺序

使用 when 表达式控制显示条件,如文件类型、资源类型等。

基本上就这些。重启 VSCode 或按下 F5 启动调试即可看到右键菜单新增项。自定义右键菜单适合提升开发效率,尤其适用于团队工具集成。
标签:# vscode  # js  # json  # 工具  # 资源管理器  # win  # require  # const  # copy  
在线客服
服务热线

服务热线

4008888355

微信咨询
二维码
返回顶部
×二维码

截屏,微信识别二维码

打开微信

微信号已复制,请打开微信添加咨询详情!