Так вышло, что в качестве основного рабочего инструмента по написанию кода я для себя выбрал
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>
Очень много интересного и полезного. Осталось только это все запомнить и начать использовать.