Perl plugin version 1.5 released for IntelliJ IDEA
A landmark plugin release for me. A year ago I started working on it and sometimes I can not believe that all this was done. More than two thousand commits passed to the repository.
This version introduces support for POD, Mojolicious helpers, contextual help and many nice little things.
What's new?
Support for POD files and inline documentation: parsing, highlighting, auto-complement, navigation through links and documented elements, refactoring of the first and second
Context hint: by pressing the Ctrl + Q combination, you can get a hint both on perl-elements and on your functions, if you, of course, keep records
Helpers support for Mojolicious. For explicitly defined helpers, navigation, autocompletion, and refactoring now work. Clever constructions like $app->helper($_, sub{}) for @something; plugin does not understand (tnx greyhard )
Added new annotation #@inject , which allows injecting other languages into strings. Initially, this feature was only for the here-doc based on the test of the marker, now you can do the same in strings, which can be very convenient for, for example, short queries. Annotation may be located in front of the line, with a string or at the end of the line. The latter option may confuse and should be considered experimental. Need feedback
Class methods now correctly refactor in child classes and, optionally, in parent classes.
Packages can now be created by full name, folders for the path will be created automatically
Basic syntax support for TryCatch , namely: catch{} , catch($var){} and catch(Foo::Bar $var){}
Inspection for unnecessary explicit namespaces. For example, when you call the function Foo::Bar::somesub() from the namespace Foo::Bar
Lexical variables are now at the top of the auto-complement list.
Significantly improved and accelerated the work of the parser for unfinished expressions. Situations when the half of the file below is turned off almost completely disappears during input and errors become more adequate
Added an action for file de-parsing with the help of B::Deparse , which can be extremely convenient when working with someone else's code (thanks to the idea thanks to the lectures from Meil.ru )
Added Perl::Critic annotator. The plugin can launch it and mark in the code the comments issued by it. All settings must be in the .perlcriticrc file in the project root or configured through the environment. There is currently no UI for settings.
Added reformatting action with Perl::Tidy . Similar to criticism, everything is configured in the project root in the .perltidyrc file or in the environment. UI for settings in this version is missing.
The list of bug fixes can be found in the release notes on the plugin page in the JetBrains repository (see below). ')