Как стать автором
Обновить

Комментарии 8

overmes, большое спасибо за статью! Я недавно заинтересовался разработкой плагинов для Идеи. Поэтому для меня это очень актуально.

> Документация для разработки плагинов состоит всего лишь из нескольких страниц и горстки примеров.

В Eclipse все горздо хуже, кстати. Тут хоть удосужились все основные этапы кратко изложить. По паре доков создается картина что и как там работает хотя бы.

У меня, кстати, такой вопрос есть. Насчет разработки языковых плагинов. Допустим, у меня есть компилятор, который уже сам умеет инкрементально парсить файл, строить синтаксическое дерево(есть API для получения). Но формат сильно расходится с PSI. Есть ли возможность имлпементировать все эти идеевские код-камплишены минуя PSI, на более низком уровне?
я не писал языковых плагинов, но думаю можно миновать PSI. Не знаю, есть ли уже созданные методы для этого или придется его переписывать для себя читая исходники оригинала(у нас ведь есть код IDE). В последнем случае мы потеряем большую часть уже созданных плюшек и это займет много времени.
Привет. Я еще не прочитал статью, на будущее возьмусь.

Планировал плагин написать, эдакий хитрый. У меня есть сервис, куда можно заливать исходник скрипта, там его компилировать. Можно ли такой плагин написать? Возможно ли и не слишком ли сложно?

Надо по первости, чтобы была панелька с кнопочками типа слить с сервера, залить, скомпилировать.
Вторая хотелка — это языковая поддержка. Можно ли там напихать некоторых исключений для джаваскрипты, чтобы оно не подчеркивало некоторые расширения языка, как ошибки. АПИ внешний подсоеденить бы как-нить.
Третья хотелка- панелька сбоку, типа как набор файлов в папках, только это дерево скриптов панелька с сервера загружает.

Вот, что из этого можно сделать, а что — нет, насколько это сложно? Скажите, пожалуйста.
Мне кажется, что второе сделать, скорее всего, можно только грязными хаками, свой хайлайтинг запустить после джаваскриптового и удалить в нужных местах ненужный красный код (звучит просто, а на самом деле не так, скорее всего, если такой возможности таки нет, лучше обратиться к разработчикам, чтобы они добавили подобное API).
Первое и третье сделать можно, причем, я полагаю, что малой кровью (но по первости, скорее всего, какое-то время это отнимет).
Другой разговор, что если затронуть не openapi (особенно с грязными хаками), то вероятность, что надо будет постоянно, что-то чинить от версии IDEA к версии, довольно высока.
Согласен. Возможно что-то уже есть в плагинах, тогда можно взять или модифицировать.
Первое скорее всего совсем просто. В плагине соединяться с сервером и отображать результат.
Второе я не совсем понял, но думаю многое можно настроить через стандартные настройки.
Третье в PyCharme есть, называется Remoute Server, можно подключаться к серверу по ssh и синхронизироваться с локальным проектом, причем если настроить, то изменения в локальном проекте будут автоматически передаваться на сервер.
Насчёт первого — можно попробовать написать скрипт на любом языке, а потом вызывать через CommandLine tools, либо по событиям after build и т.д.

Насчёт второго, можно поиграться с настройками инспекций. Причём инспекции можно отключать как глобально для проекта, так и локально для какой-либо строки\выражения.
Писать плагин для такой цели кажется нецелесообразным и очень трудозатратным.
Статья здоровская, но скажите, у вас глаза не ломаются при работе с такими шрифтами?
если вы про качество изображений, то они выглядят хуже чем есть на самом деле
на мониторе все выглядит значительно лучше
image

а если вы именно про шрифт, то я от них не сильно завишу
этот меня устраивает, хотя другие вроде и не пробовал
Только полноправные пользователи могут оставлять комментарии. Войдите, пожалуйста.