11

在 VS Code 中,我有一个扩展,我可以通过按 F1 并按名称搜索来运行其命令。但是我想从任务(tasks.json)中自动运行它。我从键盘快捷键知道它的全名。

4

1 回答 1

2

tasks.json您可以使用以下${command:}语法运行有效命令:

{
    "version": "2.0.0",
    "tasks": [
        {
            "label": "echo",
            "command": "${command:editor.action.addCommentLine}",
            "group": {
                "kind": "build",
                "isDefault": true
            }
        }
    ]
}

上面的例子注释掉当前行

复合命令

如果您想顺序/并行运行命令,可以使用该dependsOn属性运行多个命令:

代表另一个任务的字符串或该任务所依赖的其他任务数组。

例如,假设有一个场景,你想复制你所在的当前行,在上面注释掉它,并且为了演示目的,任意地立即关注终端:

{
    "version": "2.0.0",
    "tasks": [
        {
            "label": "create temporary duplicate line",
            "command": "${command:workbench.action.terminal.focus}",
            "dependsOn": [
                "duplicate line up",
                "comment line out"
            ],
            "group": {
                "kind": "build",
                "isDefault": true
            }
        },
        {
            "label": "comment line out",
            "command": "${command:editor.action.addCommentLine}"
        },
        {
            "label": "duplicate line up",
            "command": "${command:editor.action.copyLinesUpAction}"
        }
    ]
}

假设您复制的行是:

<div></div>

该任务将运行并执行以下操作:

<!-- <div></div> -->
<div></div>

然后专注于集成终端


您可以查看他们关于命令变量和其他占位符语法的文档,例如接收用户输入以创建动态任务,或使用该runOn属性在文件夹启动时自动运行任务

于 2020-07-29T01:13:45.940 回答