External Tools
In CLion, you can specify third-party standalone applications and run them as External Tools. You can pass contextual information to these tools (like the currently selected file or your project source path), view the output within the IDE, configure the tool's launch as a step of your run/debug configuration, and more.
Tools defined in the External Tools dialog appear as commands in the menu and various context menus. Like most other actions, external tools can be assigned keyboard shortcuts for quick access.
Ways to call an external tool:
From the list of available tools in Tools | External Tools on the main menu
Via a keyboard shortcut assigned to the tool in
As the Before launch step of a run/debug configuration
See the next chapter for an example of how to configure and use an external tool.
Example: Uncrustify as an external tool
Uncrustify is a popular code formatter that you can configure as an external tool to use in addition or as an alternative to the CLion's built-in formatter or the integrated ClangFormat.
-
Optionally, place the configuration file in the project directory (otherwise, you will need to provide the full path).
Navigate to
and click .In the dialog that opens, specify the following:
Name:
uncrustify
- just for example, let's name the configuration similarly to the executable.Program:
uncrustify
- provide the binary name (and include the full path if necessary).Arguments:
-c mystyle.cfg -f $FilePath$ -o $FilePath$
- style settings stored in mypath.cfg will be applied to the file currently opened in the editor (the$FileName$
macro), and the result will be written in-place (the-o
flag redirects the Uncrustify output).Working directory:
$FileDir$
- this macro represents the current file directory.
Click Ok to save the configuration.
Now you can go to
and run the tool with the above settings. The changes of code formatting will be introduced right away.
Assign a shortcut to the Uncrustify external tool:
Go to uncrustify in the list of External Tools.
and findClick and choose Add Keyboard Shortcut.
Press the keys to be used as shortcuts and click Ok.
Now the assigned shortcut is available, and you can see it next to the tool's name in the
menu:Automatically run Uncrustify before launch:
In the
dialog, choose the desired run/debug configuration.-
Click in the Before Launch section, and select Run External Tool:
Choose uncrustify from the list of the available external tools.
As a result, the uncrustify external tool will be called every time you choose to run or debug the selected configuration.