是的,您可以通过创建供您自己使用的个人扩展来将菜单项添加到上下文菜单。在您的扩展中的
package.json
中,添加 contributes.menus
部分。文本编辑器上下文菜单称为 editor/context
。
(如果您之前没有开发过扩展,请从 Microsoft 的 Your First Extension 教程开始。)
查看另一个将项目添加到上下文菜单的扩展可能会有所帮助。执行此操作的(众多)扩展之一是Bookmarks,它添加了三个上下文菜单条目。其
package.json
的相关部分是:
{
"name": "Bookmarks",
...
"contributes": {
...
"menus": {
...
"editor/context": [
{
"command": "bookmarks.toggle",
"group": "bookmarks",
"when": "editorTextFocus && config.bookmarks.showCommandsInContextMenu"
},
{
"command": "bookmarks.jumpToNext",
"group": "bookmarks@1",
"when": "editorTextFocus && config.bookmarks.showCommandsInContextMenu"
},
{
"command": "bookmarks.jumpToPrevious",
"group": "bookmarks@1",
"when": "editorTextFocus && config.bookmarks.showCommandsInContextMenu"
}
],
....
},
....
},
....
}
command
可以是任何命令;它不一定是由您的分机安装的。
API 文档 对于
group
属性的含义有点模糊:
最后,
属性定义菜单项的排序和分组。group
其含义在组排序下有更全面的描述。像“书签”这样的词建立了一组通过水平规则与其他组分开的菜单条目,各组按字母顺序排序,“@
对于不需要安装扩展的解决方案,这是通过功能请求问题票来跟踪的:用户可配置菜单#9285,它显然应该支持在上下文菜单中添加和删除条目。您可以通过点赞来表达您对功能请求的支持,并且您可以订阅它以获取有关讨论和进度的通知。请避免在那里发表嘈杂的评论,例如“+1”/“bump”。如果您想为那里的设计讨论做出贡献,请保持建设性。