Расширения VSCode для комфортной работы с проектами

Введение

Для работы с проектами существует куча редакторов кода и IDE (VSCode, NeoVim, SublimeText, WebStorm и т.д.). В данный момент наиболее популярны VSCode и Webstorm и у каждого есть свои плюсы и минусы. Webstorm является примером прекрасного IDE от компании JetBrains, где многие вспомогательные модули идут «из коробки». К сожалению, сейчас нет возможности легально получить доступ к этому продукту гражданам России, поэтому многим приходится искать альтернативу. Такой альтернативой вполне может стать Visual Studio Code от компании Microsoft, который имеет открытую кодовую базу, полностью бесплатный и гибко настраиваемый под ваши нужды. В данной статье мы рассмотрим пример настройки рабочего пространства VSCode для комфортной работы с нашими проектами. Я покажу вам, какими расширениями я пользуюсь для лучшего удобства и продуктивности. Эти расширения я использую давно и они хорошо зарекомендовали себя, но возможно некоторые из них могут не подойти под ваш стиль работы и написания кода. Итак, начнем!

Внешний вид

Для VSCode я использую тему Dark+, которая раньше стояла по умолчанию и называлась просто Dark, но со временем на смену ей по дефолту начала стоять тема Modern Dark, которая имеет ряд визуальных отличий (панели стали темнее). Возможно это лишь дело привычки, но мне по душе серый оттенок боковой панели и синий оттенок нижней панели, который присутствует в теме Dark+.

5d82fe91bcb422638618e21905986532.png

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

ca9aee0822ef569803ebbf45533470fc.png

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

1373d3230d1e02685ac1a715c903d5e2.png

Работа с кодом

Для удобной работы с компонентами нам помогут эти расширения для редактора:

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

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

Оба этих расширения объединены в одно под названием Auto Complete Tag, что позволяет нам установить оба этих расширения сразу.

49c1b2e421df07b17f87dfdc1a82177b.png

Для работы с комментариями существует Better Comments, которое раскроется еще лучше, если будет его использовать вся ваша команда. Она позволяет задавать виды комментариев, выделяя их определенным цветом (обычные, важные, срочные, уточняющие, TODO). Расширение поддерживает различные языки и его можно гибко настроить под себя и свою команду.

Чтобы быстро протестировать какую либо функцию-утилиту, может помочь расширение Code Runner, которая позволяет вам запустить функцию и вывести в консоль результат ее выполнения.

6758f64db92a90576e5d022e6f46838c.png9d8214948da891e6d07d5f484bfe9d8f.png

Бывает так, что нам нужно менять стиль написания составных слов, например перевести camelCase в CONSTANT_CASE, что вручную сделать довольно долго. Для этого нам поможет расширение change-case, что поможет нам сделать это за пару секунд

8a4b05923b9463060d963c7c4da95f17.gifeba5ebbf043da99394c69e3694bb8e88.png

Для подсветки выбранных цветов для стилей, хорошо подойдет расширение Color Highlight. Оно позволяет видеть сразу в редакторе, что за цвет был выбран в том или ином компоненте

b9d02022f772f278df6997c51cfc211f.pnga4f23e6c4d8143ada4e1004d593bd566.png

Иногда есть необходимость сравнить между собой два по виду одинаковых файла и найти в них отличия (например json файл с переводами для i18next). На помощь к нам придет Diff

bf28da51c64c3ca87af7e93f389747b8.png

Для проверки правописания нашего кода, хорошо справится Code Spell Checker, который также поддерживает и русский язык

0091a1435900fdd9f97d9c16ea34765c.png

Искусственный интеллект сейчас находится у всех на слуху, так что не будем и мы обходить его стороной, а воспользуемся расширением Codeium, которое помогает нам быстрее писать наш код, беря на себя всю рутинную работу (например хорошо помогает при написании Enum или Switch case конструкций, предугадывая что вы можете написать в дальнейшем). Сразу скажу, что это всего лишь ваш помощник, не стоит бездумно использовать подобные инструменты для написания кода с нуля, в первую очередь творец и создатель здесь вы и вся ответственность лежит на ваших плечах, пользуйтесь с умом.

d7eb6e4f0f2ff0d3168a75b9b9f0f6d8.png

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

a530c21713b159f18300090ba8fb14e5.png1c78ec1e1e8cdbaf0568ed9ad6bed1a2.png

Для оптимизации времени, затраченного на отлавливание багов путем расстановки логов по коду, нам поможет прекрасное расширение Turbo Console Log. Путем выделения нужного кода и нажатия сочетания клавиш, оно само напишет лог за вас, указав где именно этот лог находится для лучшей навигации по логам в консоли.

63f1ed128e309eec2d5662f633458a23.gifdd989ba89d0a11ae1ccb4640223c823d.png

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

235a735e2d5f363e8bc74a17241701da.png

Для упрощения нахождения пути до нужного нам файла при импорте (через import или require) призван помочь Path Intellisense. Просто начните писать ваш путь до файла и он предложит варианты, основываясь на существующих файлах в проекте.

70e59c94c991c8567fe3ca58e85a9652.png

Визуализаторы

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

Расширение Bookmarks поможет нам лучше ориентироваться в проекте, расставляя закладки в коде. Для создания закладки необходимо лишь щелкнуть правой кнопкой мыши слева от номера строки и выбрать Add Bookmark или Add Labeled BookMark.

b534b83e472cc2fcab7f8cd38cb2f741.png

 Все закладки можно посмотреть на отдельной вкладке нашего редактора на боковой панели слева. Есть возможность создавать закладки как с описанием, так и без него.

d332a12c10c84266a503d8896579aa1c.pngf64dfce959d5d71bde439235296edae8.png

Для работы с ассетами придет на помощь Image preview, который визуально отобразит ваши картинки сразу в коде.

821971f24f2c10258c338ed976ed8457.png8b57bd830bd711801b849704caf6536d.png

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

355fee6013681578208bc3bb9fd18049.png9adbc8f3fa28c651892e81ad31cbcaf4.png

Для быстрой работы с вашими проектами я использую Project Manager. Он позволяет создавать ссылки на ваши проекты и визуально отображать их на панеле слева.

Находясь в вашем проекте перейдите на эту вкладку и сохраните ваш проект под нужным вам именем. Также он позволяет задать теги для разделения ваших проектов (например на Личное и Работа)

6c4f4588c66369d566d43829efc0d557.png

Для комфортной работы с TODO комментариями стоит использовать Todo Tree, которое отобразит в отдельной вкладке все ваши комментарии по проекту со словами TODO и FIXME

e6f8af835769fe1501fa7ac3cde7c182.png

Далее переходим на нужную вкладку и увидим в каком файле находится данный комментарий

c5631ac77ed9b2a0b70115a18a3732c1.png6f1a994b6b729a41c33b2a3335b9a6a8.png

Для того чтобы держать все ваши зависимости проекта в актуальном состоянии поможет Version Lens. Он визуально покажет, какие версии пакетов актуальны, а какие стоит обновить. Для этого мы переходим в файл package.json и нажимаем специальную кнопку в верхнем правом углу нашего редактора

5a0f27c560ff3995eaeaad3fcfadd972.png09c61ad89f3236f0f85abd4bf6600323.png

Работать с переводами на разные языки бывает нелегко. Для этого можно использовать i18n Ally, которые предоставит вам таблицу со всеми вашими переводами в проекте, с возможностью редактирования и добавления переводов сразу для всех языков.

4d975c856b61f5e6dfe218c4079209c5.png

Итоги

На данным момент это все основные известные мне расширения для редактора VSCode, которые призваны упростить и улучшить ваше взаимодействие с проектами и увеличить скорость написания кода. Если у вас есть какие-то расширения, которые как вы считаете могут быть полезны, но не были упомянуты в данной статье, жду ваших комментариев!

© Habrahabr.ru