JetBrains plugin - когда на маркетплейсе нет нужного

Ты садишься и делаешь свой.

JetBrains plugin - когда на маркетплейсе нет нужного Java, Jetbrains, Плагин, Криптовалюта, Cryptocurrency, Видео, YouTube, Длиннопост

По крайней мере мне так было проще.
А началось все с того, что документация для RPC API Bitcoin Core на официальном сайте отображается кривовато.

JetBrains plugin - когда на маркетплейсе нет нужного Java, Jetbrains, Плагин, Криптовалюта, Cryptocurrency, Видео, YouTube, Длиннопост

Тут мы видим псевдо json и описание полей. Длинное описание переходит на новую строку и ломает удобочитаемость и понимание вложений в объектах json... "Ну "штош". Давайте поправим, а заодно запихнем это дело в студию" - подумал я и приступил.

Ожидал, что с ходу ничего не выйдет, но нет. Сложность написания плагина зависит от целей. Для работы плагина прям в редакторе, а уж тем более с языковой разметкой - придется вникнуть в дебри SDK JB)
Мне же вполне хватило Tool Window, которое по факту представляет из себя приложение на Java Swing. Окно - это уже готовый JFrame, который вызывается студией (только в plugin.xml надо указать, какой класс дергать). В остальном можно писать обычное swing приложение. В наличии у SDK есть унаследованные элементы интерфейса с более простым конструктором. Например вместо JLabel можно использовать JBLabel. Для поддержки темной и светлой темы вообще ничего не надо. Делаем все для одной из тем, а остальное студия преобразит сама. Публикация в JB Market тоже проста до безобразия)

В прочем это пост о плагине BitcoinDocs, так что к нему и вернемся.
Чего-то подобного я не нашел.
Что делает плагин. Шастает на сайт https://bitcoincore.org/en/doc/, и парсит его с помощью Jsoup. Вытаскивает все версии для доков. Вытаскивает все API для конкретной версии. Вытаскивает все методы для конкретного API. Дергает доку и парсит ее, исправляя вид и повышая читабельность.
Проще посмотреть видео.

Знаю, знаю. Ничего особенного.
Ничего особенного ни в исходниках под лицензией MIT, ни в самом плагине, доступном в маркете JB (а значит доступна установка прямо из студии) и так же под лицензией MIT.

В будущем хочу добавить сравнение методов в двух версиях (на выбор юзера) доков, ибо они могут удаляться и появляться.

P.S.
Все. Похвастался. Ставим плюс и листаем дальше) Всем спасибо.

Лига программистов

1.5K постов11.4K подписчика

Добавить пост

Правила сообщества

- Будьте взаимовежливы, аргументируйте критику

- Приветствуются любые посты по тематике программирования

- Если ваш пост содержит ссылки на внешние ресурсы - он должен быть самодостаточным. Вариации на тему "далее читайте в моей телеге" будут удаляться из сообщества