Child pages
  • Developing Custom Language Plugins for IntelliJ IDEA

Versions Compared


  • This line was added.
  • This line was removed.
  • Formatting was changed.


IntelliJ IDEA is not only a Java IDE, but also a powerful platform for building development tools targeting any language. Most of IntelliJ IDEA's features consist of language-independent and language-specific parts, and you can support a particular feature for your language with a small amount of effort: you just need to implement the language-specific part, and the language-independent part is provided for you by the platform.

In addition, IntelliJ IDEA (or any other IDE based on the IntelliJ platform) provides a powerful framework on which you can build your own features for working with your language just the way you need.


If you have any questions or comments related to the Language API or any other aspects of IntelliJ IDEA platform plugin development, feel free to ask them in the jetbrains.intellij.openapi newsgroup on the news server, or in the corresponding Web forum. The newsgroup is monitored by JetBrains developers who will be able to help you with the development.

The information in this document has been updated to cover the API changes and new features of IntelliJ IDEA 11, new API from version 12/13 is being added.

Registering a File Type

The first step in developing a custom language plugin is registering a file type the language will be associated with. IDEA normally determines the type of a file by looking at its file name.