CLion Features in Different Languages
Tables below show which CLion feature is available for which language.
In addition to the presented languages, CLion supports TypeScript, CoffeeScript, Less, Sass/SCSS, Stylus, XSLT and XPath by default, and many other languages (e.g. Rust, Fortran, Swift, Kotlin/Native) via plugins.
Main features
C/C++ | Objective- | Python | Java- | HTML | CSS | XML | JSON | YAML* | |
---|---|---|---|---|---|---|---|---|---|
Recognized file types | |||||||||
Syntax highlighting | |||||||||
Formatting | |||||||||
Debug |
* Basic YAML support can be extended with plugins: SnakeYAMLPlugin and YAML/Ansible support
** To enable code styles and color schemes for Objective-C/C++, set the clion.enable.objc.settings field in the Registry (see Objective-C/C++ Support for instructions).
Code analysis and assistance
C/C++ | Objective- | Python | Java- | HTML | CSS | XML | JSON | YAML | |
---|---|---|---|---|---|---|---|---|---|
Code inspection | |||||||||
Quick fixes | |||||||||
Intention actions | |||||||||
Code completion | |||||||||
Smart completion |
* Code completion is performed based on JSON schema
Navigation and search
C/C++ | Objective- | Python | Java- | HTML | CSS | XML | JSON | YAML | |
---|---|---|---|---|---|---|---|---|---|
Find usages | |||||||||
GoTo actions | |||||||||
Type hierarchy | |||||||||
Method hierarchy | |||||||||
Import hierarchy | |||||||||
File structure view | |||||||||
Related symbols |
Refactorings
C/C++ | Objective- | Python | Java- | HTML | CSS | XML | JSON | YAML | |
---|---|---|---|---|---|---|---|---|---|
Change signature | |||||||||
Extract / Inline | |||||||||
Rename | |||||||||
Copy | |||||||||
Move | |||||||||
Safe delete |
Templates
C/C++ | Objective- | Python | Java- | HTML | CSS | XML | JSON | YAML | |
---|---|---|---|---|---|---|---|---|---|
Code templates | |||||||||
Live templates | |||||||||
File templates |
* Google Test code templates are also available