如何在VS Code中从扩展名隐藏调色板菜单中的命令

时间:2018-08-04 16:03:40

标签: visual-studio-code vscode-extensions

我正在从this页开始构建VS Code扩展。现在,我想在运行命令后将其隐藏在调色板菜单中extension.timerStart。我已阅读this页,但没有帮助。我有package.json的代码。如何使varFromMyExtension===false部分起作用?

  "contributes": {
    "commands": [
      {
        "command": "extension.timerStart",
        "title": "Timer Start"
      }
    ],
    "menus": {
      "commandPalette": [
        {
          "command": "extension.timerStart",
          "when": "varFromMyExtension===false"
        }
      ]
    }

1 个答案:

答案 0 :(得分:-1)

我认为不可能直接在when子句中从扩展名访问变量。但是,您可以访问settings.json的任何配置。

docs(在本章底部)开始:

  

注意:您可以在此处使用任何前缀为"config."的布尔值的用户或工作区设置。

因此,当您的扩展名贡献了名为boolean的{​​{1}} configuration时,您应该可以在varFromMyExtension子句中使用它。然后,该配置也可以是manipulated programmatically

因此您的when可能包含以下内容(未经测试):

package.json

但是请记住,用户也可以查看和编辑此设置