Clion Extensions

Posted onby admin

CLion is a cross-platform C/C++ IDE forLinux, OS X, and Windows. CLion includes such features as a smart editor, codegeneration, code quality assurance, automated refactorings, on-the-fly code analysis,project manager, integrated version control systems and debugger.

Refer to the CLion Documentationpage for more detailed information.


  1. Install PlatformIO Core (CLI). See Installation guide


    This a temporary step and depends on CLion #CPP-19412: Automatically install PlatformIO Core

  2. Download and install CLion IDE

  3. Install official PlatformIO for CLion plugin.Open “Configure > Plugins” window and go to the “Marketplace” tab. Search forPlatformIO and press the “Install” button.

  4. Restart CLion IDE.


Clion打开ClangFormat之后,选中代码段调用'Reformat Code'(快捷键⌥⌘L on macOS),使用.clang-format定义风格格式选中代码。 保存文件自动格式化. 在CLion中安装File Watchers插件 在CLion-Preferences-Tools-File Watchers新建一个自定义模板,按照下面的配置参数。. The goal of Extension System for Wakanda Studio is to build a complete eco-system. It allows any JavaScript developer to make extensions for extending Wakanda Studio capacities. Several extensions for Wakanda Studio Some core feature of Wakanda Studio are done in extension, such as Wakanda-git, Wakanda-js-beautifier and Wakanda-jslint extension. 在左边栏里找到 'Extensions',并查找 'Chinese',安装简体中文扩展,使界面变成中文。(如果你愿意用英文界面或计算机不支持中文字符,此步骤可以跳过)。 用同样的方法再安装 rls 和 Native Debug 两个扩展。 重新启动 VSCode,Rust 的开发环境就搭建好了。.

We also recommend to install Iniplugin that provides syntax highlighting, formatting, code folding, and viewingstructure for “platformio.ini” (Project Configuration File).

PlatformIO does not depend on “CMake” and uses own multi-platform build system.Project configuration, such as build flags, library dependencies, etc., should bedeclared in “platformio.ini” (Project Configuration File).


Please note that “PlatformIO for CLion” plugin does not update automatically CLionconfiguration. There is a feature request CLion #CPP-18367: Follow platformio.ini changes and update the project.

Update CLion configuration: “Tools > PlatformIO > Re-Init”

This is a known issue CLion CPP-19478: CLion does not handle “CMAKE_CONFIGURATION_TYPES” from CMakeLists.txt.A temporary solution is to manually configure project profiles in CLion.

Please open CLion Settings and navigate to “Build, Execution, Deployment > CMake”.Press “+” button and PlatformIO-based project profiles:

CLion uses “CMake” tool for code completion and code linting. As a result, itdoesn’t support the Arduino files (*.ino and .pde) because they arenot valid C/C++ based source files:

  1. Missing includes such as #include<Arduino.h>

  2. Function declarations are omitted.

See how to Convert Arduino file to C++ manually.

This tutorial introduces you to the basics of PlatformIO for CLion workflow and showsyou a creation process of a simple “Blink” example. After finishing you willhave a general understanding of how to work with projects in the CLion IDE.

  1. Please open “New Project” wizard, select board and framework, and create a newPlatformIO project. Please USE ONLY Latin characters (a-z) in a project name toavoid further issues with project compilation. Numbers and some symbols areallowed depending on a file system:

Clion Extensions Facebook

Clion Extensions
  1. Rename main.c file in src folder to main.cpp (right click on a filemain.c, Refactor > Rename…) . Paste the next contents:


The code below works only in pair with Arduino-based boards. Pleasefollow to PlatformIO Project Examplesrepository for other pre-configured projects.

  1. Open project configuration wizard and add PlatformIOUpload andPlatformIODebug configurations (you can add the rest configurations if you need them):

  1. Remove pre-task (“Build”) from PlatformIOUpload and PlatformIODebugconfigurations to avoid double project building. You should see “There are no tasksto run before launch”.

Clion Extensions Reviews

  1. Select PlatformIOUpload configuration and use the “Build” button for projectcompilation or the “Run” for a firmware uploading:

Please open CLion terminal and use Device Manager CLI. You can also configuredevice monitor per project using Monitor options.

Please note that you need to manually close/stop device monitor before firmware uploading.

“PlatformIO for CLion” supports Debugging which allows you to debug yourapplication with 1-Click without extra steps. Please select PlatformIODebugconfiguration and press the “Debug” button:

Please navigate to the “Peripheral” tab in a “Debug” view, press the “Configure” iconand select registers to monitor. Close configuration window.


Currently, CLion does not load automatically Peripheral Register Definitions (SVD file)provided by PlatformIO. There is a feature request CLion #CPP-18369: Support CLION_SVD_FILE_PATH CMake variable to auto-find svd file.

A temporary solution is to open CMakeListsPrivate.txt file from a root ofPlatformIO project and remember SVD file declared in CLION_SVD_FILE_PATH“CMake” variable. Now press the “+” button in Peripherals Wizard and select SVD filementioned in CLION_SVD_FILE_PATH.

Currently, PlatformIO Home is not integrated into “PlatformIO for CLion”. See relatedfeature request CLion: CPP-19493 Integrate PlatformIO Home.

Nevertheless, you can start it manually and open in your browser. Please note that somefeatures do not work, such as project opening. Please open CLion terminaland run pio home command:

Further for reading:

Clion Extensions Facebook

  • Tutorials and Examples (step-by-step tutorials with debugging and unit testing)

  • CLion documentation.

Happy coding with PlatformIO!