Review of CLion from JetBrains, a new C++ IDE
(early access build CL-140.2310.6)
Hi fellow clangers,
I wanted to share my positive experiences using CLion to work
on the clang codebase. I'm using local copies of the code checked
out from the github llvm-mirror repositories and working in my own
feature branch following a typical github workflow.
CLion understands CMake projects and even though LLVM+clang+tools-extra
is quite a pile of CMake code, CLion digests it without difficulty or
error. The IDE itself is rock-solid, which is as I'd expect from an
IDE shell based on IntelliJ which is a very stable shipping product.
The editor, project navigator and whatnot are what you'd expect from
any IDE these days. Some things that I found handy:
- filename completion while editing the CMakeLists.txt file
- excellent refactoring support
- excellent code navigation
- a "run configuration" already created for every executable target
in the project. LLVM+clang+tools-extra creates quite a large number
of executables, but CLion makes it easy to find the configuration of
interest by filtering as you type when selecting a configuration.
Debugger support is on a par with gdb but with a GUI view of
local variables, watch expressions, etc. There is access to the
gdb console if you want to head straight to the debugger.
I am pretty keyboard-centric when I'm in a development session and
CLion's IntelliJ-based IDE is easy to use and allows for robust
keybinding customization if desired. I tend to use the standard
keyboard mapping and navigate through menus, etc., by the keyboard.
CLion doesn't get in my way when staying focused on the keyboard.
There's tons more I could say, but this is already too long :).
I recommend just trying an EAP build and seeing what you think.