【问题标题】:Is there a way to run a command with VS Code tasks?有没有办法使用 VS Code 任务运行命令?
【发布时间】:2018-07-08 16:21:17
【问题描述】:

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

【问题讨论】:

    标签: visual-studio-code vscode-tasks


    【解决方案1】:

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

    {
        "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>
    

    然后专注于集成终端


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

    【讨论】:

      猜你喜欢
      • 2022-08-16
      • 2023-01-21
      • 1970-01-01
      • 1970-01-01
      • 2014-04-05
      • 1970-01-01
      • 2021-02-02
      • 2018-11-03
      • 2022-10-21
      相关资源
      最近更新 更多