Вчера прошел еще один стрим от Jetbrains на тему разработки плагинов.
На стриме рассказали о полезных тулзах, которыми вы 100% будете пользоваться, даже не замечая этого.
Коротко про инструменты:
🐳 DevKit
Плагин для интеграции с plugin.xml (настройки плагина), добавляет инспекций и подсказок в ваш код, который будет взаимодействовать с IDEA SDK. Must-have штука, особенно для начала.
Для *.bnf и *.flex файлов предоставляет удобный запуск генераторов через контекстное меню.
🖥 UI Inspector
DevTools в мире JB IDEA. По Control+Command+Click на элемент открывает модалку, где показано дерево UI элементов, их характеристики “кто создал”, “какой id”, “какая ширина” и т.п.
Помогает найти кнопку/экшен и взять её ID, чтобы вызвать программно или подсмотреть как сверстать такой же элемент самому.
🧱 PsiViewer
Существует как отдельный плагин, так и внутренние тулзы. Делаю практически одно и то же: представляют код в редакторе в виде дерева.
Именно по таким деревьям в плагинах вы и будете “ходить” по коду. Каждый язык имеет свои элементы и способ формирования элементов, поэтому деревья могут быть очень разными. Тем более, на 1 файл могут претендовать несколько языков и можно посмотреть на 2 параллельных дерева.
Помимо деревьев можно узнать некоторую информацию об элементах: что за класс, какие ссылки на него есть, как выглядит структура блоков для будущей работы с форматированием кода.
Для большинства полезных вещей в IDE нужно включить Internal Mode, для этого необходимо добавить
idea.is.internal=true к “Custom properties” в “Help” меню.Можете сделать такое для своей IDE и поиграться.
Я еще заметил у Jakub “Kotlin Notebook”, как Jyputer Notebook, только для IDE!
Очень хочу потестить, хоть это и не официально рабочая штука!
——
Это уже второй стрим за последние полгода про разработку плагинов для JB IDEA.
Невозможно не заметить, что в ребята создают активность и это очень правильно.
Из последнего глобального: переехали со Slack на свой форум. Я думаю это очень сильно поможет индексации в гугле. Сейчас все ссылки ведут на YouTrack, в котором, обычно, ничего не решено и не понятно.
Теперь же у них будет свой stackoverflow, в котором можно помогать и изучать API IDEA.
——
Стрим: https://www.youtube.com/live/blXmgF5gbWg
Enabling Internal Mode: https://plugins.jetbrains.com/docs/intellij/enabling-internal.html
Jetbrains Platform Forum: https://platform.jetbrains.com
@handle_topic