logo
Ещё

Обзор горячих клавиш в VS Code: дефолтные и настраиваемые

Visual Studio Code – практически лучший редактор кода, если вы работаете под графическим интерфейсом. Во первых, Visual Studio поддерживает множество языков; во вторых, на оформлении кода Visual Studio не останавливается – редактор может работать с Git, предоставлять рефакторинг, у него есть крайне удобный отладчик и так далее. В третьих, для VS есть множество полезных плагинов (как встроенных, так и сторонних), позволяющих манипулировать комбинациями клавиш и настраивать хоткеи под себя. О последнем мы и будем говорить: при каких сочетаниях клавиш VS ведет себя так или иначе, как не запутаться в горячих клавишах и как можно настроить горячие клавиши через собственноручно написанную (кодом!) конфигурацию.

Дефолтные клавиши

Здесь мы предоставим список горячих клавиш, который редакторы кода из семейства VS имеют по дефолту.

Стандартное редактирование

Нужно зажать…

… и нажать

Действие

Ctrl + …

X

Вырезать. Если ничего не выделили – вырежет всю линию

 

C

Скопировать. Если ничего не выделили – скопирует всю линию

 

V

Вставить

 

Shift + K

Стереть линию

 

Enter / Shift + Enter

Вставить пустую строку сверху/снизу. Курсор сдвигается только во втором случае

 

Z

Отмена какого-либо действия

 

Y

Повторить отмененное

 

U

Отмена какого-либо действия, сделанного курсором

 

Shift + L

Выбрать все совпадения с тем, что выделено курсором

L

Выбрать ту линию, на которой установлен курсор

Shift + \

Переместиться к открывающим/закрывающим скобкам, которые совпадают с выделенными

] / [

Выделить отступом/Убрать выделение 

Home

К началу исходника

End

К концу исходника

Shift + [ / Shift + ]

Закрыть/Раскрыть регион. Действие касается функций, циклов и так далее

/

Закомментировать линию

K, после чего Ctrl + U

Раскомментировать линию

F

Открыть поиск

Alt + …

Стрелочка вверх/вниз

Переместиться на строку вверх/вниз

PgUp/PgDown

Переместиться на экран вверх/вниз

Enter

Выбрать все совпадения с тем, что задано в поиске

Shift + …

Enter

Перейти к предыдущему совпадению

Alt + стрелочка вверх/вниз

Скопировать строчку выше/ниже

Alt + A

Закомментировать выделенное блочным комментарием

Богатое редактирование (Rich Languages Editing)

Нужно зажать…

… и нажать

Действие

Ctrl + …

Пробел

Вызвать предложение (в VS code настроить предложения можно либо автоматически, либо вручную)

Shift + Пробел

Вызывать подсказки по параметрам

K, после чего Ctrl + F

Форматировать выделенное в соответствии с правилами оформления, стандартными или заданными

.

Быстрое исправление

Shift + . / ,

Заменить следующим/предыдущим значением

K, после чего Ctrl + X

Обрезать лишние пробелы у строки

Shift + …

Alt + F

Форматировать весь документ в согласно правилам оформления, стандартным или заданным

F12

Перейти к ссылкам

Ничего

F12

Перейти к определению

Навигация

Нужно зажать…

… и нажать

Действие

Ctrl + …

T

Показать все символы

G, после – указать номер строки

Перейти к указанной строке

P, после – указать имя файла

Быстро открыть указанный файл

Shift + O, после – указать символ

Перейти к символу

Shift + M

Показать все проблемы

Клавишу TAB

Перейти к истории

Alt + …

Стрелочки влево/вправо

Перемещаться назад-вперед по истории

Shift + …

F8

Перейти к предыдущей ошибке/предупреждению

Ничего

F8

Перейти к следующей ошибке/предупреждению

F1

Показать все команды

Управление окнами

Нужно зажать…

… и нажать

Действие

Ctrl + …

Shift + N

Открыть новое окно

W

Закрыть редактор

K, после чего F

Закрыть папку

\

Разделить редактор на 2 экрана

1/2/3

Перейти к 1/2/3 группе редакторов

Shift + PgUp/PgDown

Переместить редактор влево/вправо

Alt + …

F4

Закрыть текущее окно

Файлы

Нужно зажать…

… и нажать

Действие

Ctrl + …

N

Новый файл

O

Открыть файл

S

Сохранить файл

K, после чего S

Сохранить все файлы

Shift + S

Сохранить как

W

Закрыть файл

K, после чего W

Закрыть группы файлов

K, после чего Ctrl + W

Закрыть все файлы

Shift + T

Открыть последний закрытый редактор

K, после чего Enter

Оставить открытым

K, после чего P

Скопировать путь текущего файла

K, после чего R

Показать текущий файл в проводнике

K, после чего O

Показать текущий файл в новом окне

Отображение

Нужно зажать…

… и нажать

Действие

Ctrl + …

K, после чего Z

Перейти в Дзен. Дзен – это как фуллскрин, только немного другой

= / -

Увеличить/уменьшить масштаб

0 на дополнительной цифровой клавиатуре

Сбросить масштабирование на 100%

B

Включить/выключить боковые панели

Q

Открыть быстрый поиск

` (символ находится там, где в русской раскладке расположена буква ё)

Открыть встроенный терминал

Ctrl + Shift + …

E

Показать внутренний браузер

F

Открыть поиск

G

Вывести дерево источников

D

Вывести окно «Run»

X

Вывести окно расширений

U

Вывести вывод

C

Открыть cmd

Ничего

F11

Полный экран

Esc, затем Esc

Выйти из Дзена

Поиск

Нужно зажать…

… и нажать

Действие

Ctrl + Shift + …

F

Открыть поиск

H

Заменить во всех открытых файлах

J

Открыть детали поиска

Alt + …

C

Пометить совпадения

W

Пометить совпадения по словам

R

Пометить совпадения, используя регулярные выражения

Дебаггинг

Нужно зажать…

… и нажать

Действие

Ctrl + …

F5

Запустить без дебаггинга

Ничего

F5

Запустить/продолжить дебаггинг

F9

Поставить точку останова в текущей строке

F6

Пауза

F11

Зайти внутрь

Настройка клавиш

Со стандартными клавишами все понятно – нажмите комбинацию и получите результат. Иногда нажатия клавиши регистрируются после того, как вы вошли в «командный режим» (эту идею Microsoft подсмотрела у Vim), для этого нажмите Ctrl + K, и затем уже вводите команду. Если вы хотите переназначить клавиши, зайдите в соответствующий раздел в настройках и выставьте все так, как вам удобно.

Но на этом возможности не заканчиваются – как и у других популярных редакторов, у VS Code есть функция установки расширения. Вы можете либо установить расширение, которое было написано кем-то, либо написать свое собственное. В частности, расширения позволяют переназначать клавиши. Сделать это можно через специальный файл – keybindings.json. В нем, как понятно из формата, в формате JSON лежат все горячие клавиши, каждая запись состоит из 3-х частей: клавиша, команда, условие. Условие – необязательная часть, клавиша и команда должны быть обязательно. 

Кроме того, вы можете задавать для команд аргументы, после чего триггерить команды по условию. Например, можно сделать так, чтобы по нажатию на Enter вместо выделенного фрагмента вставлялся определенный кусок текста. Еще командами со знаком «-» можно отменять другие команды (это полезно, если задать условия назначения/отмены), и команды можно разбивать на несколько различных сетов, между которыми можно переключаться как между раскладками клавиатуры (по сути это и есть раскладки). VS Code умеет распознавать коды особых клавиш и контекст окружения, сами условия можно писать с помощью логических операторов. В общем, внутри VS Code встроен отдельный скриптовый фреймворк, который позволяет кодом описывать горячие клавиши. Ссылки на документацию будут ниже.

Шпаргалки, документация, плагины

  • Базовая документация по горячим клавишам и скриптингу: ссылка. Здесь вы можете взять названия команд для всех операций.
  • Документация по встроенным командам: ссылка.
  • Шпаргалка для Linux: ссылка.
  • Шпаргалка для Windows: ссылка.
  • Шпаргалка для Mac: ссылка.

Популярные плагины с раскладками:

Вывод

Тезисно:

  • VS Code имеет большой набор встроенных горячих клавиш. Клавиши разбиты по группам: стандартное редактирование, богатое редактирование, управление окнами, файлы, дебаггинг и так далее.
  • Внутри Visual Studio есть большой функционал для создания собственных раскладок – можно триггерить команды по комбинациям клавиш, при этом можно задавать условия, контекст и другие параметры.
  • Самый простой способ получить удобную раскладку – скачать один из популярных плагинов.
Часто ищут