#visual-studio-code #format #key-bindings
#visual-studio-code #форматирование #привязки клавиш
Вопрос:
Мне часто приходится открывать и вносить небольшие изменения в проекты, которые используют другие параметры форматирования кода, чем те, которые использую я. Чтобы не переформатировать весь файл, я обычно открываю пользовательские настройки, ищу настройки, содержащие «формат», а затем отключаю параметры Editor: Format On Paste
, Editor: Format On Save
Editor: Format On Type
. Когда я возвращаюсь к своим проектам, я снова включаю эти параметры.
Я хотел бы, чтобы это было проще, например, привязка сочетания клавиш для быстрого переключения всех трех этих параметров. Однако я не смог найти действия быстрого доступа, которые могли бы привязываться к ним.
Кто-нибудь знает, возможно ли то, чего я пытаюсь достичь?
Ответ №1:
Вы можете сделать это с помощью расширения: Toggle, которое позволяет переключать множество настроек одновременно.
В вашем keybindings.json:
{
"key": "alt capslock", // whatever keybinding you wish
"command": "toggle",
"when": "editorTextFocus",
"args": {
"id": "toggleFormats",
"value": [
{
"editor.formatOnType": true,
"editor.formatOnPaste": true,
"editor.formatOnSave": true,
"window.enableMenuBarMnemonics": false
},
{
"editor.formatOnType": false,
"editor.formatOnPaste": false,
"editor.formatOnSave": false,
"window.enableMenuBarMnemonics": true
}
]
}
},
Я не тестировал это, но это должно сработать.
Единственная проблема в том, что нет визуального индикатора, в каком состоянии вы находитесь — возможно, вы можете найти какую-нибудь другую настройку для переключения, которая бы делала это и была «безвредной». Вот почему я вставил enableMenuBarMnemonics
туда, на моей клавиатуре клавиша capslock загорается, когда для format
s установлено значение false, и вы также можете проверить, нажав alt F, чтобы увидеть, открыта ли опция главного меню File
. Возможно, вам не понадобится визуальное напоминание, чтобы указать состояние или придумать лучшее.