Library creation support
Choose a Play distribution directory in the file chooser and the plugin automatically adds appropriate jars, source-roots to the library.
- Play template
How to develop
Get source code of IntelliJ IDEA Community Edition
git clone git://git.jetbrains.org/idea/community.git idea
Check out the code with the same version as your IDEA.
I use CE 107.322 for running /debugging the plugin, so:
git checkout idea/107.322
Add IDEA SDK. As SDK contains the jars only, you should manually add the source code obtained above, to the SKD Library.
- JFlex Support, for editing .flex files.
- Markdown, for editing this README :D
How to build
Add the following plugins' jars to the module:
- Groovy (plugins/Groovy)
- Properties Support (plugins/properties)
- Ant Support (plugins/ant) with Ant (idea/lib/ant/lib/*.jar)
- IntelliLang (plugins/IntelliLang)
- Copyright (plugins/copyright)
Right click on the plugin's module, choose "Prepare Plugin Module '' For Deployment", then you will get the plugin's jar.
A trouble shooting for JFlex Support plugin user
The JFlex support plugin automatically tries to compile .flex files while building the plugin. If you get JFlex home path is invalid error trying to run/debug the plugin, you should go Settings > JFlex and set proper path to JFlex. Unfortunately, JFlex is not contained in IntelliJ IDEA binaries, but source code.
To find JFlex, you need to checkout IDEA's source code following the above
How to develop section of this README.
Then, set both Path to JFlex and Skeleton file in Settings.
For me, a mac user, they were:
Path to JFlex:
/Users/mumoshu/Sources/idea is the source root.
How to debug
Go to "Run > Edit Configurations" and click "+" in upper left of the window to open "Add New Configuration", then choose "Plugin".
You should add
-XX:MaxPermSize=512m to VM Parameters not to get "Out of memory error: PermGen" while debugging.
Finally, go to "Run > Run" and choose the configuration you just added in above instruction. An another instance of IDEA will run with the developing plugin installed.
How to run tests
Select any test case class you want to run, then go to "Run > Run" and choose the item with the same name as the test case class you have chosen.
List of IDEA's extension points
Advices from Peter Gromov @ Jetbrains implementing Play Template language plugin
La Closure's parser is simple and can be reference implementation of a custom language parser
Jetbrain's official guide for plugin development
Jetbrain's official FAQ for plugin development
How to write plugin.xml
Google everything you want to know with "site:devnet.jetbrains.net".