Горячие клавиши VS Code: мой набор для ускорения работы

VS Code — редактор, который живёт на клавиатуре. Чем меньше тянешься к мыши, тем быстрее работаешь. Ниже — набор кастомных горячих клавиш, которые экономят секунды на каждом действии.

Все настройки хранятся в keybindings.json (Cmd+Shift+P → Preferences: Open Keyboard Shortcuts (JSON)).


F1 → Copilot Chat

{
    "key": "f1",
    "command": "-workbench.action.showCommands"
},
{
    "key": "f1",
    "command": "workbench.action.chat.open",
    "when": "!chatSetupDisabledInWorkspace && !chatSetupHidden"
},
{
    "key": "ctrl+cmd+i",
    "command": "-workbench.action.chat.open",
    "when": "!chatSetupDisabledInWorkspace && !chatSetupHidden"
}

Командную палитру я перенёс на Shift+Shift, поэтому F1 освободилась. Теперь она открывает Copilot Chat — можно быстро задать вопрос AI прямо из редактора.

Первая строка с -workbench.action.showCommands — это отключение стандартного биндинга F1. Префикс - перед командой означает «убрать этот биндинг». Без этого F1 будет открывать и палитру, и чат одновременно.

Третьим правилом отключаю стандартный Ctrl+Cmd+I (он же Cmd+I на Mac), который раньше открывал чат — чтобы не было дублирования.


Shift+Shift → Командная палитра

{
    "key": "shift shift",
    "command": "workbench.action.showCommands"
}

Стандартная командная палитра висит на F1, но двойной тап по Shift удобнее. Рука уже лежит на Shift — не надо целиться в F-ряд. Быстрее, чем Cmd+Shift+P, потому что не требует аккорда из двух клавиш.

Двойной Shift — паттерн из IntelliJ и PHPStorm, в VS Code работает так же.

Нюанс: менять нужно только через JSON-файл, как описано выше. Из UI настроек это не настроить.



Cmd+T → Быстрый поиск файлов

{
    "key": "cmd+t",
    "command": "runCommands",
    "args": {
        "commands": [
            "editor.action.clipboardCopyAction",
            "workbench.action.quickOpen",
            "editor.action.clipboardPasteAction"
        ]
    }
}

Трюк, который экономит время. Выделяешь слово в коде (название класса, функции, файла) — жмёшь Cmd+T — и оно копируется в буфер, открывается Quick Open, сразу вставляется в строку поиска. По сути: «найди файл с таким же именем, как то, что у меня выделено».

Стандартный Cmd+T на Mac открывает «Go to Symbol in Workspace», но поиск файлов нужен чаще.


Shift+F1 и Shift+F2 — Скрыть панели

{
    "key": "shift+f1",
    "command": "workbench.action.togglePanel"
},
{
    "key": "shift+f2",
    "command": "workbench.action.toggleAuxiliaryBar"
}

Shift+F1 — скрыть или показать нижнюю панель (терминал, problems, output). Дефолтный Cmd+J тоже работает, но Shift+F1 ближе к F-ряду, который я использую для действий с интерфейсом.

Shift+F2 — скрыть или показать боковую панель (explorer, source control, extensions). Стандартно это Cmd+B. Shift+F2 не конфликтует ни с чем и ложится в общую схему: F1 и F2 — переключение видимости панелей.


Cmd+U Cmd+U → SFTP Upload

{
    "key": "cmd+u cmd+u",
    "command": "sftp.upload.activeFile"
}

Если работаете с удалённым сервером через расширение SFTP — двойное Cmd+U заливает текущий файл. Cmd+U сам по себе в VS Code ни на что не завязан (undo cursor), поэтому двойной тап — безопасный chord.

Cmd+F → Поиск текста по всему проекту

{
    "key": "shift+cmd+f",
    "command": "workbench.action.quickTextSearch"
}

Дефолтный Cmd+F ищет только в текущем файле. Я перевесил его на поиск по всему проекту — обычно это Cmd+Shift+F. Зачем? Потому что в 80% случаев ищу не в одном файле, а по проекту.


Бонус: ещё два полезных биндинга

Cmd+D → Дублирование строки

{
    "key": "cmd+d",
    "command": "-editor.action.addSelectionToNextFindMatch",
    "when": "editorFocus"
},
{
    "key": "cmd+d",
    "command": "editor.action.duplicateSelection"
}

Стандартный Cmd+D добавляет следующее совпадение к выделению (multi-cursor). Я перевесил на дублирование строки — как в IntelliJ. Multi-cursor у меня через Cmd+Click.

Shift+Cmd+G → Source Control

{
    "key": "shift+cmd+g",
    "command": "workbench.view.scm"
}

Быстрый доступ к Git-панели. Стандартный Ctrl+Shift+G на Mac неудобен — Cmd просится под пальцы.

По аналогии с:

  • Shift+Cmd+E — Explorer
  • Shift+Cmd+F — Find, поиск по всему проекту
  • Shift+Cmd+X — Extensions

Пальцы и мозг быстро привыкают — переключение между файлами, поиском, гитом и расширениями становится автоматическим.


Как найти command ID для своей клавиши

  1. Открыть Keyboard Shortcuts (Cmd+K Cmd+S)
  2. Найти нужное действие в списке
  3. Правый клик → Copy Command ID
  4. Вставить в keybindings.json

Или через командную палитру: Preferences: Open Keyboard Shortcuts (JSON) — и писать руками, зная ID.


Пример keybindings.json для VS Code

[
    {
        "key": "shift shift",
        "command": "workbench.action.showCommands"
    },
    {
        "key": "cmd+t",
        "command": "runCommands",
        "args": {
            "commands": [
                "editor.action.clipboardCopyAction",
                "workbench.action.quickOpen",
                "editor.action.clipboardPasteAction"
            ]
        }
    },
    {
        "key": "cmd+f",
        "command": "workbench.action.quickTextSearch"
    },
    {
        "key": "shift+f1",
        "command": "workbench.action.togglePanel"
    },
    {
        "key": "shift+f2",
        "command": "workbench.action.toggleAuxiliaryBar"
    },
    {
        "key": "cmd+u cmd+u",
        "command": "sftp.upload.activeFile"
    },
    {
        "key": "f1",
        "command": "-workbench.action.showCommands"
    },
    {
        "key": "f1",
        "command": "workbench.action.chat.open",
        "when": "!chatSetupDisabledInWorkspace && !chatSetupHidden"
    },
    {
        "key": "ctrl+cmd+i",
        "command": "-workbench.action.chat.open",
        "when": "!chatSetupDisabledInWorkspace && !chatSetupHidden"
    },
    {
        "key": "cmd+d",
        "command": "-editor.action.addSelectionToNextFindMatch",
        "when": "editorFocus"
    },
    {
        "key": "cmd+d",
        "command": "editor.action.duplicateSelection"
    },
    {
        "key": "shift+cmd+g",
        "command": "workbench.view.scm"
    }
]

Копируйте, пробуйте, подгоняйте под себя. Горячие клавиши — как разложить инструменты на верстаке: у каждого своя система, но порядок экономит время.

Фото аватара

Antony I

Веб разработчик, специализация на лучших мировых практиках: WordPress, WooCommerce, NextJS, Strapi, JAMStack ...

Основные типы проектов: CMS, eCommerce, SEO, LMS, ECM, BPM

Ответить

Ваш адрес email не будет опубликован. Обязательные поля помечены *