背景:
我目前正在开发一个简单的 VS Code 扩展,它将提供动态设置 command variables到我的构建和调试任务。计划是拥有一系列可通过 "${command:extension.myCommand}"
语法在 launch.json 等中访问的属性。
像这样注册命令就像在 package.json 文件中添加一个条目一样简单,例如:
"contributes": {
"commands": [
{
"command": "extension.myCommand",
"title": ""
}
]
}
并在我的主扩展文件中实现相应的命令:
let disposable = vscode.commands.registerCommand('extension.myCommand', () => {
return "dynvar";
});
context.subscriptions.push(disposable);
问题:
不幸的是,这些命令现在也出现在命令面板中,而且由于它们没有任何交互作用,这很烦人。
问题:
有什么方法可以隐藏通过 VS Code 命令面板的扩展提供的命令吗?
最佳答案
如果您不需要将"icon"
或"title"
与您的命令相关联,您可以简单地从"commands"中省略它
- 未在此处列出的命令仍然可以调用,只要它们已通过 vscode.commands
注册。
否则,您可以使用以下技巧将其从命令面板中隐藏:
"contributes": {
"menus": {
"commandPalette": [
{
"command": "extension.myCommand",
"when": "false"
}
]
}
}
关于typescript - VS 代码扩展 : Hide commands from command palette,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55270915/