In this section:
Development of a modern application involves using multiple languages, that is why IntelliJ IDEA is an IDE for polyglot programming. With the deep understanding of all the subtleties of the source code structure and syntax, IntelliJ IDEA extends its support to:
- Java. IntelliJ IDEA supports Java up to version Java 8, with lambdas, type annotations etc. For the supported language level, IntelliJ IDEA provides code completion, code inspections, quickfixes and more.
- XML/XSL. Refer to the section Markup Languages and Style Sheets.
- Groovy. Refer to the section Groovy.
The following is available only in the Ultimate edition of IntelliJ IDEA
- Flex: advanced coding assistance for ActionScript, MXML, including code completion and inspections. Refer to ActionScript and Flex.
- HTML/XHTML. Refer to the section Markup Languages and Style Sheets.
- 10.0+CSS3: coding assistance and compilation for LESS;
basic support of SASS 3.
Refer to Markup Languages and Style Sheets.
- Stylus. Refer to section Transpiling SASS, LESS, and SCSS to CSS.
- PHP up to version 5.4.0 with 12.0+ support of syntax highlighting in
.inifiles. Refer to the section PHP-Specific Guidelines.
- 9.0+SQL and its dialects (SQL-92, MySQL, SQLite Oracle, PostgreSQL, and Derby). Refer to Relational Databases.
- Velocity up to version 1.7
- 12.0+Drools Expert
Coding assistance in IntelliJ IDEA includes:
- Syntax and error highlighting. The color attributes are configurable in the Colors and Fonts | <language> pages of the Settings dialog.
- File templates for the supported languages that enable creating stub classes, scripts etc.
- Live templates for creating complicated code constructs.
- Code completion.
- Code generation.
- Code folding, formatting, and highlighting.
- Intention actions and quick fixes.
- Ability to view code hierarchy.
- Quick access to the API documentation.
- Using macros in the editor.
- Advanced search and replace facilities.
- Advanced means of navigation.
- Import assistance.
- Language injection.
- Interactive consoles where you can execute commands without leaving the IDE.