Выполнить файл bat по нажатию клавиши в VsCode - PullRequest
2 голосов
/ 21 января 2020

Я пишу шейдеры для vulkan, которые должны быть скомпилированы в spir-v. У меня есть очень хороший пакетный файл, который будет go проходить и создавать мои шейдеры для меня с помощью GLSlangvalidator. Я пытаюсь получить нажатие клавиши для запуска моего пакетного файла в VsCode, чтобы я мог проверить свой код на наличие ошибок и чтобы он был собран. У меня есть следующее:

    {
    "key": "f5",
    "label": "build",
    "type": "shell",
    "command": "workbench.action.terminal.sendSequence",
    "args" : {"text": ".\\compile.bat"},
    "presentation" : {
        "reveal": "always"
    }

Это почти работает - но я все еще должен сосредоточиться на встроенной панели терминала и нажать Enter. Конечно, есть способ выполнить команду, а не просто ввести строку? Спасибо!

1 Ответ

3 голосов
/ 22 января 2020

В tasks.json создайте задачу для запуска .bat. Примерно так:

{
    "label": "build",
    "type": "shell",
    "command": "MY_BAT_FILE.bat",
    "presentation": {"echo": true, "reveal": "always", "focus": false, "panel": "shared", "showReuseMessage": false, "clear": true},
    "group": {"kind": "build", "isDefault": true},
},

Затем используйте горячую клавишу Tasks: Run Build Task ( Ctrl Shift * по умолчанию B ).
Он запустит задачу, помеченную "isDefault": true.

Если вам нужно более одной горячей клавиши, вы можете вместо этого добавить записи, подобные следующим, в keybindings.json:

{"key": "f5", "command": "workbench.action.tasks.runTask", "args": "build"},
//       ^~ shortcut                                                ^~~~~ task name
...