Шпаргалка по работе с IntelliJ IDEA и WebStorm

Так вышло, что в качестве основного рабочего инструмента по написанию кода я для себя выбрал
IDE от JetBrains. IDEA - очень мощная среда разработки, которая поддерживает большое количество языков и дает очень много возможностей. Но хорошо, если кто-то пользуется этими возможностями хотя бы на 50%. В этой статье я попробую для себя собрать полезные плюшки по работе с IDEA. В WebStorm и PhpStorm, думаю, они будут работать аналогично.

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

Ctrl + Space

Автозаполнение. При наличии вариантов открывается всплывающее окошко с ними. Если вариантов нет, то происходит вставка.

Ctrl + /

Перемещение по словам.

Ctrl + /

Прокрутка кода. Курсор при этом остается на месте.

Ctrl + Shift + /

Перемещение строки или выделенного фрагмента вверх / вниз.

Home / End

Перевести курсор в начало / конец строки.

Ctrl + Home / End

Перевести курсор в начало / конец документа.

Shift + Home / End

Выделить от курсора и до начала / конца строки.

Ctrl + Shift + Home / End

Выделить от курсора и до начала / конца документа.

Ctrl + W

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

Ctrl + Del

Удаляет символы от курсора и до конца слова.

Ctrl + Backspace

Удаляет символы от начала слова и до курсора.

Ctrl + Insert

Скопировать текущую строку.

Ctrl + D

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

Tab / Shift + Tab

Добавляет / удаляет отступ.

Ctrl + /

Однострочный комментарий.

Ctrl + Shift + /

Многострочный комментарий.

Ctrl + - / +

Свернуть / развернуть текущий блок кода (функцию, объект)

Ctrl + Shift + Enter

Перевод курсора в тело функции, метода. С правильным отступом.

Ctrl + Alt + L

Переформатирование кода в соответствии со стилистическими требованиями (отступы, пробелы и т.д.).

Ctrl + Alt + Shift + J

Слово, в котором находится курсор, будет выделено во всем файле. Его редактирование происходит во всех вхождениях.

Ctrl + Shift + V

Специальная вставка. Можно вставить не только последнее скопированное, но и предыдущие.

Навигация

Ctrl + Tab / Ctrl + Shift + Tab

Переключение между последними открытыми вкладками в прямом / обратном направлении.

Ctrl + E

Последние открытые файлы.

Ctrl + Shift + E

Последние отредактированные файлы.

Alt + /

Перемещение по панели с вкладками.

Alt + /

Переход к предыдущему / следующему методу или функции.

Ctrl + G

Переход к строке по номеру.

Ctrl + F4

Закрыть вкладку.

Ctrl + F12

Показывает структуру файла. Можно быстро переходить по свойствам и методам.

Ctrl + B или Ctrl + Left click

Переход к реализации метода.

Ctrl + Shift + I

Реализация метода открывается в отдельном окне. Курсор при этом остается на месте.

Alt + Q

Показать, где находится курсор (название класса, метода).

Поиск

Ctrl + Shift + A

Поиск по настройкам

Ctrl + N

Поиск класса.

Ctrl + Shift + N

Поиск файла.

Ctrl + Alt + Shift + N

Поиск символа (метода, поля и т.д.).

2*Shift (двойное нажатие)

Поиск везде.

Ctrl + F

Поиск в текущем файле.

Ctrl + Shift + F

Поиск во всех файлах.

Ctrl + R

Найти и заменить в текущем файле.

Ctrl + Shift + R

Найти и заменить во всех файлах.

Ctrl + Alt + F7

Найти все строки, где используется данная функция или переменная.

Контроль версий

Alt + ~

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

Ctrl + Alt + A

Добавить файл в контроль версий.

Ctrl + K

Сделать коммит.

Ctrl + Shift + K

Сделать пуш.

Помощь и подсказки

Ctrl + Q

Показать документацию к тому элементу, где стоит курсор.

Ctrl + P

Информация об аргументах функции.

Ctrl + F1

Показать описание ошибки.

Alt + Enter

Раскрыть подсказку-лампочку.

Прочие полезности

Postfix Completion

Используя posfix completion можно немного ускорить написание кода. Например в JavaScript можно написать имя переменной, поставить точку и написать if. После нажатия на Enter эта запись преобразуется в:

if (variable) {

}

и курсор поместится в тело условия.

А, например, variable.log преобразуется в console.log(variable).

Полный список можно посмотреть в настройках Editor > General > Postfix Completion.

Live Templates

Шаблоны. Пишем itar, нажимаем Enter, получаем:

for (var i = 0; i < list.length; i++) {
    var obj = list[i];
    
}

Остается только изменить названия переменных.

Посмотреть на существующие шаблоны можно в настройках Editor > Live Templates. Там же можно создавать свои.

Emmet

Когда пишем html в IDEA, можем написать CSS селектор, например такой:

ul#nav>li.item$*4>a{Item $}

нажать Tab и получить:

<ul id="nav">
    <li class="item1"><a href="">Item 1</a></li>
    <li class="item2"><a href="">Item 2</a></li>
    <li class="item3"><a href="">Item 3</a></li>
    <li class="item4"><a href="">Item 4</a></li>
</ul>

Очень много интересного и полезного. Осталось только это все запомнить и начать использовать.