自定义VS代码扩展(上下文菜单命令)

时间:2018-10-08 18:57:02

标签: visual-studio-code

我正在使用此VS代码extension,并且我想更改命令在上下文菜单中的显示位置。我可以通过直接修改package.json来做到这一点。 例如,我在editor/context列表中(第100行附近)添加了:

{
    "command": "fileutils.renameFile",
    "group": "edit"
} 

而且有效,我可以在上下文菜单中看到重命名命令,但是...当有更新时,我将放弃编辑。因此,我尝试将这段代码添加到C:\Users\<user>\AppData\Roaming\Code\User\settings.json中,但无法正常工作。

如何自定义VS Code扩展名,尤其是editor/context命令?

1 个答案:

答案 0 :(得分:1)

无法在settings.json中添加contributions,例如菜单项。这只能通过扩展名提供的package.json文件来完成。

但是,您可以相当轻松地创建自己的小型个人扩展名(请参阅tutorial),其package.json可以创建引用其他扩展名命令的新菜单项。请注意semantics for ordering,以便您可以在正确的位置获得新项目。

这里是一个package.json片段,可以将其添加到个人分机中,以添加调用GitLens的菜单项(复制其自身的菜单项之一,仅用于说明):< / p>

  "contributes": {
    "menus": {
      "editor/context": [
        {
          "command": "gitlens.copyMessageToClipboard",
          "group": "1_modification"
        }
      ],
    },
  },

现在,该问题提到您要“ 更改”命令在上下文菜单中的显示位置(添加了重点)。我认为无法删除菜单项,因此,如果按照我的建议,将有两个条目。

注意:扩展教程省略了如何安装(而不是仅测试)个人扩展而不将其发布在marketplace上。我碰巧在instructions上有自己的个人扩展名,以了解如何安装它(主要供我自己参考!)。我的指令没有说的一个细节是您必须在publisher中拥有一个package.json属性,但是可以是任何东西。