Features Plugins

What’s New for Plugin Authors in IntelliJ IDEA 13

In the past couple of months we’ve been talking a lot about what new features users can find in IntelliJ IDEA 13. Today we’d like to take a break from that and speak a little bit about what it brings to the plugin authors, so this post will give you an overview of notable changes in the Plugin DevKit. Everything marked with (13.1) is already available in the freshly released IntelliJ IDEA 13.1 EAP.

plugin.xml editor

It’s faster and has new code highlighting and inspection features. For example, you can now see the usages of deprecated extension points:

plugin_devkit_deprecated

Code completion, usage search, navigation, and refactorings are supported for message resource bundles and keys:

plugin_debkit_messages

The language attribute now provides code completion as well (13.1):

plugin_devkit_language

The implementation attribute now suggests the matching subclass candidates only when you use the Smart code completion:

plugin_devkit_implementation

New inspections

These five inspections from the internal mode have been added to the Plugin DevKit (13.1):

  • File.equals usage
  • Preferred JComboBox renderer
  • Undesirable class usage
  • Unsafe VFS recursion
  • Use Darcula aware JBColor

See their descriptions for details on how they can be used.

DOM model

When you use DOM model for the XML-based models, IntelliJ IDEA will be aware of implicit usages of the DOM-related methods for any DomElement and DomElementVisitor in your code, eliminating the false positive unused method warnings.

JAM support

If you’re going to support annotation-based frameworks in your plugins, use the open-sourced JAM-Support (the sources can be found in $IDEA_HOME$/lib/src/src_jam-openapi.zip). Stay tuned for a more detailed guide on this coming soon.

That’s all for now, folks. If want to write your own plugin and wondering where to start, visit the official IntelliJ IDEA Plugins page.

Have questions or other feedback about the IntelliJ platform? Join our plugin development forum which is closely monitored by the team.

Develop plugins with Pleasure!

image description

Discover more