Шаблон Intellij Live


81

Чи є спосіб використовувати значення маркера за замовчуванням у Intellij Live templates? Наприклад, у мене є такий живий шаблон, який оголошує приватну змінну, яку я хотів би створити майже для кожного класу:

private static final Logger logger = Logger.getLogger($CLASS$.class)

Здається, непотрібно вводити текст $CLASS$кожного разу, коли використовується цей шаблон, оскільки його можна отримати з класу за обсягом або іменем файлу. Мені цікаво, чи можна використовувати маркери, визначені середовищем, у живих шаблонах як за замовчуванням?

Відповіді:



54

log4j:

private static final org.apache.log4j.Logger log = org.apache.log4j.Logger.getLogger($CLASS_NAME$.class);

slf4j:

private static final org.slf4j.Logger log = org.slf4j.LoggerFactory.getLogger($CLASS_NAME$.class);

Переконайтеся, що ви встановили відповідний контекст для Java, а також скорочуєте імена FQ і пропускаєте, якщо визначено , увімкнено.


3
Мені подобається доповнення, яке згадується в цій статті для налаштування виразу en для заповнення змінної розумним за замовчуванням. coderwall.com/p/hzmhbw
Снексе

@Snekse Це гарне доповнення. Ви можете покращити мою відповідь, відредагувавши її.
Nowaker

Ця відповідь насправді не відповідає на запитання запитувача: щоб автоматично заповнити $CLASS_NAME$змінну іменем класу, потрібно встановити значення "Вираз", пов’язане зі $CLASS_NAME$змінною className(). Див. Відповідь CrazyCoder для знімка екрана.
Adil Hussain

3

log4j 2:

private static final org.apache.logging.log4j.Logger log = org.apache.logging.log4j.LogManager.getLogger($CLASS_NAME$.class);

Ця відповідь насправді не відповідає на запитання запитувача: щоб автоматично заповнити $CLASS_NAME$змінну іменем класу, потрібно встановити значення "Вираз", пов’язане зі $CLASS_NAME$змінною className(). Див. Відповідь CrazyCoder для знімка екрана.
Adil Hussain
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.