typescript - VS 代码扩展 : Hide commands from command palette

标签 typescript visual-studio-code vscode-extensions

背景:

我目前正在开发一个简单的 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/

相关文章:

visual-studio-code - 用于显示按键输入的 VSCode 扩展

jquery - Angular 2/4 和 jquery 脚本

c# - .NET Interactive - 如何更改集合输出大小

docker - 我可以在 Mac 上的 docker 容器中运行 Visual Studio 和 .Net Framework 吗?

visual-studio-code - 如何保留 vscode 扩展的信息?

visual-studio-code - 更改代码中光标的颜色

typescript - 如何使用 ionic 2/angular 2 和 typescript 设置 firebase

typescript - 为什么 TypeScript 无法推断递归函数的类型

angular - 表未在 Angular 2 中更新

visual-studio-code - 如何在 Visual Studio Code 中禁用 PHP 验证?