Visual studio code 是否可以为VS代码中的不同任务分配不同的快捷方式?

Visual studio code 是否可以为VS代码中的不同任务分配不同的快捷方式?,visual-studio-code,Visual Studio Code,VS Code允许在tasks.json中的[“tasks”]数组中定义多个任务,默认情况下,属性为isBuildCommand:true的任务将获得键盘快捷键Ctrl+Shift+B 我想为我创建的每个任务分配不同的键盘快捷键。这可能吗?如果可能,如何实现 到目前为止,我所发现的就是能够为命令workbench.action.tasks.runTask分配一个快捷方式,该快捷方式将按字母顺序弹出所有任务的菜单,我可以向上/向下箭头浏览。我想将代码配置为使用一个组合键直接运行每个任务。是的,还有

VS Code允许在tasks.json中的[“tasks”]数组中定义多个任务,默认情况下,属性为isBuildCommand:true的任务将获得键盘快捷键Ctrl+Shift+B

我想为我创建的每个任务分配不同的键盘快捷键。这可能吗?如果可能,如何实现


到目前为止,我所发现的就是能够为命令
workbench.action.tasks.runTask
分配一个快捷方式,该快捷方式将按字母顺序弹出所有任务的菜单,我可以向上/向下箭头浏览。我想将代码配置为使用一个组合键直接运行每个任务。

是的,还有一个属性可用于绑定快捷方式。它的名称是isTestCommand。如果设置为true,则将Ctrl+Shift+T绑定到任务。我们确实有一个内部工作项,允许将任意快捷方式绑定到任务。

我刚刚为此提交了一份PR:


因此,一旦它被合并,您将能够将任何任务分配给键盘快捷键。

从VS Code 1.10开始,您可以在您的键绑定中使用workbench.action.tasks.runTask命令,并将任务的名称作为参数传入

下表给出了以下示例:

{
“键”:“ctrl+h”,
“命令”:“workbench.action.tasks.runTask”,
“args”:“构建”
}
自VSCode 1.19(2018年2月)起:

/myproject/.vscode/tasks.json
中,您需要在npm任务中添加
标签(以前,现在已弃用:
taskName
)。

(我将我的标签命名为我打算运行的
package.json
脚本。但这只是个人风格,不是技术需要):

然后通过用户密钥绑定中的标签引用该任务
/home/johndoe/.config/code/user/keybindings.json

{"key": "ctrl+r",
    "command": "workbench.action.tasks.runTask",
    "args": "ui"
},

如果您想知道:不,vscode中没有项目级别的键绑定

有一个很好的
tasks.json
文件示例。它还没有实现,但有(里程碑2016年7月)。所以希望它能在7月份发布。您需要将它添加到keybindings.json:[{“key”:“ctrl+shift+t”,“command”:“workbench.action.tasks.test”}]什么属性?添加了吗?当我在我的
task.json
中键入
commandBinding
时,我得到的信息是不允许这样做。(只需补充:这属于
keybindings.json
,而不是
tasks.json
,“args”实际上在
tasks.json
中反映了你的
“taskName”
,令我积极惊讶的是:空格不是问题,即
“args:“Run Sample”
也很好。)对于macOS,
keybindings.json
的位置似乎
~/Library/Application Support/code/User/keybindings.json
。访问它的更好方法:命令调色板(⇧⌘P) -->打开键盘快捷键(JSON)
{"key": "ctrl+r",
    "command": "workbench.action.tasks.runTask",
    "args": "ui"
},