Не самые причудливые ярлыки, а те, которые я активно использую каждый день

Когда дело доходит до разработки программного обеспечения, я жажду продуктивности, и VS Code может многое предложить.

Из 753 действий в keybindings.json я хотел бы поделиться с вами теми, которые я активно использую. Это не самые красивые, но я действительно не могу без них жить.

1. Палитра команд

Все действия, которые вы можете делать в VS Code, находятся здесь. Это отличное место для изучения и повышения производительности.

2. Редактирование

Удалить строку

Во многих случаях строка может быть утверждением, и это основная единица удаления. Когда вы находитесь в середине строки и внезапно сожалеете о том, что написали это, нажмите ⇧⌘K, чтобы избавиться от целого, вместо того, чтобы идти до конца строки и нажимать Backspace тысячу раз.

Переключить комментарий

В большинстве языков есть блочный комментарий /* like this */, чтобы закомментировать несколько строк кода. Однако для добавления комментария к блоку требуется слишком много перемещений курсора:

  • перейти к голове целевого блока
  • тип /*
  • перейти в конец целевого блока
  • тип */

Почему бы просто не сделать выбор и не нажать ⌘/, чтобы закомментировать их все?

Кроме того, вы не можете добавить комментарий блока «вне» комментария блока. Как в следующем примере:

line1
/*
line2
*/
line3

Добавление блочного комментария для line1 в line3 затруднительно, потому что в середине есть один блочный комментарий.

⌘/ элегантно решает эту проблему. Он не использует комментарий блока, поэтому вы можете переключать комментарии в любом месте, даже в середине блока кода с комментариями.

Выберите следующее вхождение

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

  • Выделите #<space> и нажмите ⌘D, чтобы прыгать по всем h1 заголовкам в уценке (возможно, с некоторыми ложными срабатываниями, но это нормально, если вы просто хотите осмотреться)
  • Выделите "name": "Henry в файле JSON и нажмите ⌘D, чтобы переключаться между именами, начинающимися на Генри.

Как только вы поиграете с ним, вы обнаружите, что используете ⌘F или ⇧⌘F реже, потому что ⌘D не только выполняет поиск текста для вас, но также немедленно перемещает ваш курсор к следующему вхождению, а повторное нажатие на него переводит вас к следующему. .

Бонус: используйте этот нюанс себе на пользу

  • выделите текст → ⌘D → совпадение без учета регистра (регулярное выражение: /word/i)
  • текст не выбран → ⌘D → точное соответствие (регулярное выражение: /\bword\b/i)

Выбрать все вхождения

Когда вы решаете заменить все вхождения hello в текстовом файле, я всегда использую ⇧⌘L вместо функции замены в ⌘F.

Добавить несколько курсоров

Если вы хотите выполнить идентичные операции с несколькими строками, вы просто добавляете несколько курсоров к интересующим позициям и начинаете редактирование. Пример использования: добавление запятой к нижеследующим 3 строкам.

Выбор коробки

Есть два способа сделать это:

  • Щелчок средней кнопкой мыши + перетаскивание с выделением
  • ⇧⌥ + перетаскивание и выделение

Наш код очень часто форматируется с помощью IDE или таких инструментов, как go fmt. Поэтому многие блоки кода одной и той же природы выровнены, и иногда мы хотим редактировать их целиком.

Пример использования: удалить все значения в литерале карты "ключ-значение".

Это происходит гораздо чаще, чем вы думаете, и поэтому iTerm имеет такую ​​же функциональность. (с другим сочетанием клавиш: ⌘⌥ + перетаскивание)

Выход из мульти-курсора

Вышеупомянутые методы выбора переводят нас в режим нескольких курсоров, и вот как выйти:

Объединяя все вместе: редактирование с помощью нескольких курсоров

Теперь давайте объединим вышеперечисленное, чтобы раскрыть сверхдержавы.

Образ мышления: сделать выбор (например, ⌘D) → выполнить действие (например, удалить строку)

  • Если вы знаете 10 действий → выучить еще 1 метод выбора = еще 10 комбинаций в вашем кармане
  • Это также одна из вещей, которые делают Vim таким мощным. (На жаргоне Vim это называется движение + действие)

Переименовать или выполнить рефакторинг

Хотя ⌘D - это наша горячая клавиша для поиска / редактирования вхождений, мы могли бы предпочесть F2 для редактирования вхождений при редактировании языка программирования (вместо текстовых файлов, таких как уценка). В этих случаях F2 переименовывает все вхождения во всех файлах. Это очень полезно, особенно при рефакторинге кода:

Триггер Intellisense (предложение кода)

Intellisense предлагает вам варианты кода, когда вы попадаете в определенные моменты в операторе. Например, когда вы вводите эту «точку» в context., VS Code запускает для вас Intellisense.

Однако иногда мы набираем context.XXX и понимаем, что на самом деле хотим чего-то еще (кроме XXX). Тогда вы потеряете предложенный код, когда удалите XXX. Теперь вы можете нажать ^ Пробел, чтобы снова запустить Intellisense.

3. Навигация

Перейти к файлу

Быстро открывайте файл, не двигая мышью!

  • Нечеткий поиск: sec.md соответствует SECURITY.md (user/reg соответствует user/apis/register.py)

Следующее приглашение на самом деле очень мощное. Введите ?, чтобы просмотреть доступные команды:

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

В языках программирования нам часто нужно искать определения прототипов функций, классов и структур. Это позволяет нам быстро ознакомиться с API или доступными методами класса. В конце концов, большую часть времени мы тратим на чтение кода, а не на его написание. Ускорение этого распространенного случая - огромный выигрыш в производительности!

Перебрать определения или ссылки

F12 приведет вас к

  • определение, если вы на ссылке
  • ссылки, если вы в его определении

Это помогает нам быстро определить объем переменных или функций и чрезвычайно полезно, особенно при рефакторинге, поиске ошибок или просто чтении кода.

Назад / Вперед (расположение курсора)

Итак, вы перешли к определению, теперь вы хотите вернуться. VS Code поможет вам!

Вернуться: ^-

Вперед: ⇧^-

Хорошая комбинация: ⌘ + click (перейти к определению) → ^- (вернуться)

F12, переход назад / вперед чрезвычайно полезен, особенно при чтении кода. Вы можете настроить эти действия в BetterTouchTool или в мыши Logitech, если вы их используете.

Перейти к предыдущему файлу

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

Вы помещаете текущий файл в свой мысленный стек и выходите, чтобы редактировать эти затронутые файлы, а затем вам нужно вытащить этот стек, чтобы «вернуться» к предыдущему файлу, который вы редактировали, чтобы завершить или просмотреть изменения.

Бонус: продолжайте нажимать клавишу табуляции, удерживая клавишу управления, для просмотра других предыдущих файлов.

Перейдите к N-му файлу во вкладке

Вы можете использовать ⌘1 для перехода к первой (крайней левой) вкладке в ваших браузерах. В VS Code это тоже есть, но с другим ярлыком.

Навигация без использования мыши просто быстрая и захватывающая. Кроме того, связанные файлы обычно открываются вовремя, поэтому они, скорее всего, будут находиться рядом друг с другом на вкладках. Это позволяет нам быстро обходить их и вносить соответствующие изменения.

4. Дисплей

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

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

Разделенный редактор

split → edit → close - хорошая комбинация, которая полезна, когда вы:

  • хотите быстро добавить глобальную переменную вверху файла
  • хотите посмотреть на определенный блок кода для справки при написании кода

Показать определенную боковую панель

Это наиболее часто используемые боковые панели, поэтому стоит помнить об их ярлыках.

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

Переключить боковую панель

Боковые панели занимают большую часть нашего драгоценного экрана. Их закрытие повышает продуктивность, потому что мы можем видеть больше кода одновременно. Так что давайте делать это чаще и быстрее, используя ⌘B.

Переключить интегрированный терминал

Этот ярлык пригодится, когда вам нужно выполнить быструю установку pip / npm или запустить скрипты.

Узнать больше

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

Сочетания клавиш (Настройки)

Вы всегда можете посетить эту страницу, как будто делаете покупки, и вы можете найти новые интересные жемчужины.

Заключение

На самом деле продуктивность заключается в быстром выполнении высокоуровневых действий. Редакторы / IDE - это просто инструменты, которые помогут нам в этом.

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

  • Добавьте одно поле в класс очень быстро, чтобы я мог использовать его в этом методе (F12 → Изменить класс → ^-, чтобы вернуться назад)
  • Откройте этот файл для регистрации пользователя где-нибудь в каталоге services (⌘P → нечеткий поиск: services/userregservices/users/registration.go)

Чем выше уровень вашего ума, тем более продуктивным вы будете. Подумайте о своем начальнике, который, я уверен, самый продуктивный человек в вашей компании. Вы пишете тысячи строк кода, потому что ваш босс написал вам одно электронное письмо с просьбой сделать это. Электронная почта работает на более высоком уровне, чем любой язык программирования, который вы используете, и, следовательно, продуктивность вашего босса.

Теперь вы знаете истинную мощь VS Code, вы можете поднять свой ум на новый уровень и быть боссом VS Code, чтобы он работал на вас!

Удачного кодирования!

Дальнейшее чтение