CLion 2021.1 Help

Valuable non-bundled plugins

CLion plugin repository contains over 1200 plugins that you can install to enrich the out-of-the-box CLion functionality. Some of those plugins are already bundled in CLion, and no prior action is required to start using them. However, there are other helpful and qualitative plugins that can improve or even transform your workflow in CLion. This article gives a selection of such valuable plugins.

The plugins are grouped by the tasks they target, each described in the corresponding chapter:

Learn the IDE

CLion HelpBundles the entire CLion web help for offline use.
Keymap exporterPrints the PDF version of the selected CLion keymap.
Key Promoter X

Shows keystroke equivalents to mouse presses:

key promoter x plugin

Get comfortable with the UI

Main Menu TogglerSwitches visibility of the main menu on and off by a single action or a shortcut.
Frame SwitcherLets you switch between projects, windows, and frames, alternatively to Alt+Tab and the View menu. The switcher works even with multiple IDE instances, and lets you assign shortcuts to various actions, customizing or expanding the pre-defined shortcut set.
Active Tab HighlighterHighlights the currently active tab. The highlighting color is easily configurable, which is especially useful for the Darcula scheme.
Focus on Active TaskFilters the project tree to show only the currently opened and related paths and files.

As an example, here is how your CLion screen on macOS with Darcula scheme would look like with the filtered project tree, highlighted active tab, and the invoked frame switcher:

ui extension plugins

Tune the code editor

CMake PlusExtends the built-in CMake language support with variables reference and navigation, folding actions, structure view, and other handy features.
CMake HighlighterProvides syntax highlighting and navigation for CMakeLists.txt files.

The screenshot below illustrates how these two plugins work in pair (notice the pop-up with the name of the action invoked, shown by the Presentation Assistant plugin):

cmake highlighted and quick documentation for cmake

OpenAPI (Swagger) EditorHelps in editing OpenAPI(Swagger) files.
OpenAPI SpecificationsProvides IDE support for Swagger and OpenAPI specifications.
OpenAPI GeneratorGenerates client, server, and documentation code out of OpenAPI specifications.
String ManipulationProvides an assortment of actions for working with any kind of text: C/C++ code or comments, any ASCII symbols, JavaScript, SQL, XML, or text in other languages.
ShifterDetects a selection, line, or keyword at caret and moves it up or down with a single keystroke.
IdeaVimProvides Vim emulation with features like motion keys, marks, registers, and visual mode commands.
Emacs+ PatchedAdds two Emacs keymaps: Emacs+ and Mac Emacs+.
VS Code KeymapAdds the default VS Code keymap.
TranslationIncorporates multiple language engines and supports text-to-speech.
HunspellProvides spell checking based on Hunspell dictionaries.
EditorConfigHelps maintain common code style across teams and IDEs: it enables the CLion editor to read the EditorConfig file format and adhere to defined styles.

Integrate more frameworks and build systems

Conan CLion plugin

Lets you create and upload cross-compilation Conan packages in the lines of your CMake workflow:

conan plugin

Take a look at the Getting Started blog post and our webinar to learn more on working with Conan in CLion.

Docker Integration

Enables you to download and build images, create and start containers, and manage other Docker tasks.

See Docker Integration for detail.

UE4 SDK Support

Adds extra completion options for reflection specifiers in Unreal Engine 4 code that CLion does not provide by default.

Note that starting v4.20, Unreal Engine can generate a CMake structure out of your UE code and open it as a project in CLion.

BazelLets you import a Bazel BUILD file (with its own language supported in CLion) and run Bazel configurations.

Add languages and file types support

IntelliJ RustProvides the IDE support for Cargo -based Rust applications. Learn more in the plugin's documentation.
SwiftProvides the Swift language and Swift Package Manager support, letting you use CLion as a fully-functional Swift IDE. Learn more.
Protobuf SupportHelps you work with Google’s Protocol buffers (the *.proto files).
BashSupportProvides bash command language support.
PowerShellAdds PowerShell intellisense and scripts execution.

Fortran (see this article for details on Fortran support), Lua, Dart, Mathematica, LaTeX/BibTeX, Gherkin.

Facilitate Debugging

Compiler Explorer pluginLets you work with Compiler Explorer right from CLion: you can view compilation results got from various remote compilers and easily switch between them. The plugin shows the list of sources taken from your project tree and provides a way to pass compiler flags and set additional options to tune the disassembly layout for your needs.
compiler explorer plugin
Grep ConsoleHelps in analyzing logs and parsing console output. Grepping means searching for plain-text lines that contain a match to some regular expression. The plugin enables you to grep the application output, highlight and filter the results, and even change the output or execute an action upon a match:
grep console plugin

Integrates the Undo ’s record, rewind and replay technology for Linux C/C++ applications in CLion.

With Undo, you can record the program’s execution down to single instruction for further replay and analysis. This way, the debugger gets reversible: you can step forwards and backwards in your code and see exactly what is happening, leading up to easier bug capturing. Take a look at this blog post to find out more on using Undo in CLion.

Run Configuration as ActionLets you register Run/Debug configurations as actions in CLion, and call them via shortcuts or additional toolbar buttons.

Monitor CPU usage

CPU Usage IndicatorAdds the CPU load indicator to the status bar, lets you get a thread dump and configure the settings of the Performance Watcher (which is the CLion’s frozen UI thread dumper):
cpu usage indicator

Gather statistics

StatisticsCollects the overall project-level statistics: project files with line counts, sorted by extension and size.
Code::StatsTracks the changes you make in project files and detects the syntax of the language you use. The results are presented in infographics of your XPs (Experience Points, roughly the amount of keystrokes) for different languages.

Expand the scope of VCS-related actions

GitScopeHighlights the changed code, analogically to the git diff command.
GitToolBoxEnriches the default Git integration with features like Git status display, Auto fetch, Behind tracker, and others.
Find Pull RequestFinds GitHub pull requests for the selected line.
Git Commit TemplateProvides templates for Git commit messages.
GitLinkOpens files and commits to storages like GitHub or Stash in default browser via a single shortcut.
SVNToolBoxEnhances the built-in SVN support: adds the Status Bar component, enriches the Project View, and provides more Subversion context menu actions.

Automate builds, track issues, and review code

TeamCity pluginIntegrates the JetBrains’ TeamCity, a continuous integration server. This plugin lets you configure notifications, run builds and tests, view changes, assign investigations, and perform other TeamCity actions without leaving the IDE.
Visual Studio Team ServicesEnables you to work with Git and TFVC repositories on Visual Studio Team Services (VSTS) or Team Foundation Server (TFS) 2015+.
WrikeLinks your commits with the corresponding Wrike tasks.
YouTrack IntegrationExtends the bundled Task Management functionality to provide deeper integration with JetBrains' YouTrack bug tracker.
Yandex.Tracker IntegrationIntegrates Yandex.Tracker.
MantisLets you create, edit, and delete issues from the Mantis bug tracker.
UpSource pluginIntegrates the LetBrains' UpSource.
Gerrit Code ReviewIntegrates the Gerrit Code Review tool.
Floobits pluginProvides collaborative real-time development across multiple editors and IDEs for team members with Floobits accounts.

Stay creative and productive

Last but not least, CLion plugin repository contains a collection of time management plugins, as well as other tools to increase your productivity. Find a few notable examples below.

Time management pluginDescription
Darkyen’s Time TrackerImplements simple time management technique of tracking the time you actually spend on a project: it adds a tracking bar widget that you manually start for counting.
Pomodoro-tmHelps you manage the time spent on a task using Pomodoro Technique.
Git Time MetricTracks the time of reading and working on the code that you store in a Git repository.
WakaTimePerforms time tracking and collects the language, OS, branch/commit, and other statistics of your work session.

Also, if you like mind mapping to visually structure your ideas, the IDEA Mind Map plugin will let you create and edit mind maps in MMD format right in CLion.

And just for fun, try the Nyan Progress Bar nyan cat progress bar to brighten the status bar when waiting for some of the time-consuming CLion actions to finish, or enjoy emojis in commits with the Emoji for Git Commits plugin.

Last modified: 22 July 2021