LINUX.ORG.RU

Вышла первая версия Perl5 плагина для IntelliJ IDEA & Co

 , , , ,


0

2

К первому сентября была выпущена первая версия опенсорс-плагина для продуктов JetBrains, добавляющая поддержку Perl5.

Реализованные фичи:

  • Создание Perl5 модуля и выбор Perl5 интерпретатора
  • Парсинг Perl5 (без source-фильтров), POD, Mojolicious шаблонов и Embedded Perl (Это как php только с Perl5 внутри)
  • Подсветка синтаксиса
  • Подсветка и дополнение скобок, кавычек, разделителей для регулярных выражений.
  • Интерполяция строк, here-doc-ов и регулярных выражений
  • Авто-комплит для функций, методов, пакетов, констант и переменных
  • Переход для функций, переменных, классов и констант (Go to symbol/class)
  • Просмотр структуры файла и иерархии классов (Structure view/Hierarchy view)
  • Поддержка наследования с DFS/C3
  • Поддержка импортов функций и переменных
  • Навигация и рефакторинг для функций, констант, глобов, пакетов, неймспейсов, лексических и глобальных переменных
  • Разрешение AUTOLOADed методов
  • Шаблоны (File templates) для скриптов, пакетов и Mojolicious шаблонов
  • Шаблоны (Live templates) для compound конструкций (съешь лишние скобки, Komodo)
  • Поддержка объявления глобальных переменных через use vars
  • Рефакторинг маркеров для here-doc
  • Поддержка IntelliLang для here-doc и автоматическое инжектирование другого языка в зависимости от текста маркера
  • Аннотации для функций: #@deprecated, #@method, #@returns (последняя необходима для корректного разрешения типа возвращаемого значения)
  • Аннотация для неймспейсов: #@deprecated
  • Поддержка типизации переменных при объявлении
  • Intentions: конвертация строки в here-doc
  • Inspections:
    • Пакеты: отсутствующий файл пакета, неизвестный namespace, множественное объявление namespace, пересечение с core namespace, отсутствующие strict/warnings.
    • Функции: deprecated, неизвестная фунция, множественные определения, модный вызов (new Foo::Bar), неиспользуемые функции/константы/глобы.
    • Переменные: неиспользуемые переменные, неопределенные переменные, затенения переменной, объявление встроенной переменной как лексической или глобальной.
  • Extension point для реализации процессоров пакетов. Позволяет описать функционал нестандартных модулей. Например Mojo::Base, являющимся одновременно и strict, и warnings, и base и feature.

Плагин в репозитории JetBrains

Плагин на GitHub



Проверено: splinter ()
Последнее исправление: splinter (всего исправлений: 6)

Ответ на: комментарий от hurricup

Не знаю кто это, но вероятно он тоже мертв.

anonymous
()
Ответ на: комментарий от hurricup

Срочно нужно сообщить букингу.

И MusicBrainz! :) Правда, у них недавно уволился главный разработчик (т.к. ему надоело писать на Perl) и теперь они ищут человека, который мог бы потянуть проект: http://blog.musicbrainz.org/2015/07/17/team-change/ :(

А плагин работает только с IntelliJ IDEA Ultimate или с Community Edition тоже?

X-Pilot ★★★★★
()

Годно молодцы. Спасибо будем пользоваться.

necromant ★★
()

К первому сентября была выпущена

это типа в чесчть праздника? школота врятли оценит.

anonymous
()
Ответ на: комментарий от anonymous

это типа в чесчть праздника? школота врятли оценит.

Хочешь наказать детей за двойки? Заставь выучить перл!

anonymous
()

Сплошная некрофилия на ЛОР последние недели. Хватит, тошнит уже!

anonymous
()
Ответ на: комментарий от sT331h0rs3

Никогда. Денег на этом не заработать.

hurricup
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.