ИДЕЯ IntelliJ – потрясающая ИДЕЯ, а менее известная и используемая функция – Живые шаблоны.
Живые шаблоны позволяют использовать фрагменты кода всего несколькими нажатиями клавиш. Многие замечательные из них предоставляются IntelliJ “из коробки”. Вы можете просмотреть их с помощью сочетания клавиш Двойная смена
а затем введите Живые шаблоны
. Ярлык работает независимо от операционной системы, которую вы используете в данный момент (и я слишком ленив, чтобы указывать меню для конкретной ОС).
Вот некоторые примеры живых шаблонов:
Ввод psvm
заменяет его на
public static void main(String[] args){ }
Ввод psfs
волшебным образом превращает его в
public static final String
Недавно я занимался рефакторингом многих классов
исп. и мне пришлось заменить множество устаревших инструкций инициализации ведения журнала на использование slf4j
библиотека ведения журнала, подобная следующей:
import org.slf4j.Logger; import org.slf4j.LoggerFactory; public class LoggerTest { public static final Logger logger = LoggerFactory.getLogger(LoggerTest.class); }
У меня было более 30 различных классов для рефакторинга, как указано выше, и я, конечно, не хотел снова кропотливо писать все вручную (подтверждает, что я ленив).
К счастью, мне на помощь пришли живые шаблоны IntelliJ! Я запустил меню живых шаблонов, используя ярлык, упомянутый выше, и нажал на кнопку +
в правом верхнем углу.
Затем я нажал на кнопку Живой шаблон
. Пользовательский интерфейс теперь указывает на нижнюю часть, которая просит вас ввести аббревиатуру.
Давайте введем аббревиатуру как psfl
, которая расшифровывается как публичный статический конечный регистратор
, который также можно указать в описании.
Введите следующий код в текстовое поле шаблона:
public static final Logger logger = LoggerFactory.getLogger();
Но подождите, среда IDE предупреждает нас об определении контекста, в котором она будет использоваться. Мы хотим, чтобы шаблон использовался только в Java, поэтому мы нажимаем на Определите кнопку
и выберите Java
.
Теперь вы можете заметить, что IDE теперь применяет подсветку синтаксиса к шаблону.
Подождите, мы все еще не пришли туда. Я, конечно, не хочу вручную записывать каждое имя класса внутри функции getLogger
! В тот момент я не был уверен, как мне этого добиться. После небольшого поиска в Google stackoverflow снова пришел на помощь.
Я нашел следующий ответ: Я нашел следующий ответ:
public static final org.slf4j.Logger logger = org.slf4j.LoggerFactory.getLogger($CLASS_NAME$); $END$
Поэтому я скопировал и вставил код на экран своего шаблона (чего вы ожидали?:P)
Затем вам нужно будет определить, что означает $ИМЯ_КЛАССА$
. Для этого нажмите на кнопку Редактировать переменные
и выберите Имя класса()
в поле Выражение
.
Переменная $END$
означает, куда вы хотите поместить курсор после применения шаблона.
Нажмите на Применять
и Хорошо
.
Мы закончили!
Запускайте свои классы и проводите рефакторинг с 10-кратной скоростью!
Соответствующая ссылка: https://www.jetbrains.com/help/idea/creating-and-editing-live-templates.html
Оригинал: “https://dev.to/darshitpp/using-intellij-idea-live-templates-2bce”