Perl
for IntelliJ IDEA

Compatible with all products except MPS
01.02.2017
76 849

Camelcade plugin adds Perl5 support for IntelliJ IDEA and other JetBrains products.

Wiki | Bug Tracker | Twitter | Google Group | Sources

Donate to support Project

Download plugin

Recent change notes

Plugin moves to the IDEA-like versioning to make things more consistent. Also, future updates will be released for current version of JetBrains products only. Critical things may be backported to previous version, but current - 2.2 version is pretty stable for those, who don't want or need to upgrade.

Changes:

  • IDEA 2017.1 EAP compatibility
  • Multiple internal tools upgrades
  • Moved to Java 8
  • Lexer and parser deeply reworked and should be much faster:
    • Initial parsing and reparsing on typing should be much faster
    • Highlighting is now instant for unambiguous entities
    • %hash, &code and *glob can't be passed as first argument to the rightward call anymore without braces, except some perl functions. Please, use leftward calls instead (the one with parens) or disambiguate with %{varname} form. Plugin will treat identifier % identifier as mod operator.

      Ambiguous things like regexps without explicit m, hashes, globs and code-refs works in boundaries of common sense. If plugin parses it wrong - adjust your code to be less ambiguous. Feel free to post a bug-report if something is going wrong, but keep in mind that plugin's lexer and parser (unlike perl itself) processes sources without knowing anything about included files or defined subs. So it doesn't know if you've declared sub with list prototype for example.

    • Implemented support for post-deref syntax according to the perldoc
    • #@type annotation for variables. More information in our wiki.
    • Plugin now recognizes and highlights character classes in regular expressions.
    • Experimental regexp language injection is now available. This feature still in development and disabled by default. You may enable it via perl settings.
  • Class::Accessor functionality is unavailable in this version

Fixes:

  • Possible NPE on running the script if settings file been corrupted
  • Optimized parsing of multiple namespaces
  • Optimized variables resolving, made it 10 times faster
  • Optimized debugger pausing performance with many evals on the perl side, by @mbarbon.
  • Fixed bug when plugin messed with Go project dependencies
  • Fixed exception on code generation in 2017 EAP IDEs.

21.05.2016
Project wiki might be really helpful here.
21.05.2016
+1 for the custom .pm directories This plugin is awesome so far. About a year ago I was searching high and low for a Perl IDE and wound up sticking with good ol' Vim. Vim is great and all, especially with plugins, but this plugin puts everything I've tried so far to shame. The 1.6 update looks very promising so far.
13.05.2016
Hello, First of all, I must say you that you're doing a great job with that plugin. Your plugin is very usefull. One feature I want have is the ability to setup new directories for Perl packages (*.pm files) in which your plugin could search for libraries (a kind of include path for directory where your plugin could search for packages). For instance, in our project, we have our own Perl directories for library such as PerlLib and PerVendor. Could you add that feature? Thanks you.
30.04.2016
Project wiki might me really helpful here.
30.03.2016
Alexandr contacted me and pointed me at the documentation which resolved my issues. Thanks! I primarily use Komodo IDE and now that this plugin works for me, it seems to work as well as Komodo does. Good Job.
30.03.2016
I would like to give this a positive rating, but, it seems I can't get it to recognize any modules (use strict; for example.) I have tried 'use lib..' and setting PERL5LIB but it seems to make no difference. I am using intellij on windows.
25.01.2016
geart work! keep on
09.11.2015
Debugging would be great !
Anonymous
02.11.2015
Much needed! Perl5 support in pycharm works great and painful working with code outside the IDE. Thanks so much!
20.10.2015
I'm adopting this just for the ability to quickly refactor names (modules, variables, etc... ). But It's awesome all-round
Anonymous
28.07.2015
unfortunately I cannot choose a different SDK with Perl interpreter on PyCharm :(
23.07.2015
Tnx for working on it!
Please  sign in  to leave a comment.