Можно ли назначить разные ярлыки для разных задач в VS Code?
VS Code позволяет определять несколько задач в массиве ["tasks"]
tasks.json
а та, у которой есть свойство isBuildCommand: true
по умолчанию получает сочетание клавиш Ctrl + Shift + B.
Я хотел бы назначить разные сочетания клавиш для каждой из задач, которые я создал. Возможно ли это, и если да, то как?
Все, что я нашел до сих пор, - это возможность назначить ярлык для команды workbench.action.tasks.runTask
которая будет отображать меню всех задач в алфавитном порядке, через которые я могу перемещаться вверх/вниз по стрелке. Я хотел бы настроить код для запуска каждой задачи непосредственно с помощью одной комбинации клавиш.
Ответы
Ответ 1
Да есть еще одно свойство, которое можно использовать для привязки ярлыка. Его имя isTestCommand. Если установлено значение true, оно связывает Ctrl + Shift + T с задачей. У нас есть внутренний рабочий элемент, который позволяет связать произвольные короткие сокращения с задачами.
Ответ 2
Как и в VS Code 1.10, вы можете использовать команду workbench.action.tasks.runTask
в ваших ключевых привязках и передать имя задачи в качестве своего аргумента.
Документация по работе с VS-кодом дает следующий пример:
{
"key": "ctrl+h",
"command": "workbench.action.tasks.runTask",
"args": "build"
}
Ответ 3
Начиная с VSCode 1.19 (февраль 2018 года):
В /myproject/.vscode/tasks.json
вам нужно добавить label
(ранее устаревшая: taskName
) к вашей задаче npm.
(Я назвал свой ярлык так же, как сценарий package.json
который я собираюсь запустить. Но это только личный стиль, а не техническая необходимость):
{
"label": "ui",
"type": "npm",
"script": "ui"
}
Затем вы ссылаетесь на эту задачу по метке в ваших пользовательских сочетаниях /home/johndoe/.config/Code/User/keybindings.json
:
{"key": "ctrl+r",
"command": "workbench.action.tasks.runTask",
"args": "ui"
},
Если вам интересно: Нет, в vscode нет привязки клавиш на уровне проекта. Причины здесь
Ответ 4
Я только что представил PR для этого: https://github.com/Microsoft/vscode/pull/10676
Итак, как только он будет объединен, у вас будет возможность назначить любую задачу для сочетания клавиш.