CLion 2024.2

Released: Aug 14, 2024

Aggiornamenti in 2024.2

Funzionalità

Key Updates

  • CLion Nova - In this release, several of the most requested features for the new language engine from ReSharper C++/Rider C++ (also known as CLion Nova) have been implemented, such as remote development via JetBrains Gateway, Code With Me for collaborative development, AI functionality, and more. The new engine has also become the default for new CLion users.
  • Full line code completion for С++ - This release introduces a new type of code completion that works completely locally, offering single-line suggestions based on the context of the current file. These suggestions are powered by language models that run on your machine without sending any of your code over the internet.
  • Zephyr West support - Comprehensive support for Zephyr West comes to CLion, allowing you to open a Zephyr project in the IDE and build, run, and flash it using Zephyr's West tool. The bundled plugin that provides the integration with West also brings language support for Kconfig, which is widely used not only in Zephyr projects but also in the Linux kernel and other projects.
  • Debugger improvements - This release brings several improvements to the debugger, such as faster node expansion in GDB, more pretty printers for complex data types, and a fix for the issue preventing debugging on Windows using WSL with GDB Multiarch.

Full line code completion for С++

  • Previously introduced for Java, Kotlin, Python, JavaScript, TypeScript, CSS, PHP, Go, and Ruby, full line code completion has become available for C++ with this release.
  • This feature suggests entire lines of code using a locally run deep learning model without sending any data outside your IDE. It's included with your active JetBrains IDE subscription at no additional cost.
  • NOTE: Full line code completion only works with CLion Nova, the new ReSharper C++/Rider C++ language engine.

CLion Nova

  • Nova as the default for new users - With this release, CLion Nova has become the default for new CLion users. The new language engine will be enabled automatically when you install the new version, unless CLion detects settings from a previous installation or you choose to import them.
  • Remote development via Gateway - Support for remote development via SSH using JetBrains Gateway is now available when you are using CLion Nova.
  • Code With Me - Code With Me can now be used for collaborative development with CLion Nova.
  • Semantic highlighting - Optional semantic highlighting uses different colors for different variables and parameters in your code, helping you recognize them easily at a glance.
  • Name suggestions - AI Assistant now suggests names when you use the Rename and Change Signature refactorings.
  • Cloud-based code completion
    • Inline code completion provided by cloud-based LLMs via AI Assistant is now supported regardless of whether CLion Nova is enabled.
    • Inline code completion autocompletes single lines, entire functions, and even whole code snippets based on the project's content.
  • Custom clang-format binary - CLion Nova allows you to use an external clang-format binary instead of the one built into the IDE.
  • Field offsets and sizes - Field offsets and sizes for classes and structures are now shown in the popup that appears when you hover over them.
  • Other improvements:
    • The quick documentation popup shown on hover now suggests quick-fixes.
    • Encoding no longer prevents the opening of non-UTF-8 files.
    • Custom TODO settings now persist after IDE restart.

Project models and build tools

  • Zephyr West support - This release introduces the West project model, which makes it much easier to set up, open, and build a project that uses Zephyr.
  • West project building and flashing - West projects allow you to build and flash your project into a microcontroller without having to perform lots of tedious actions like setting up West as an external tool in CLion and creating a custom build target for each of your Zephyr applications.
  • Project conversion - Zephyr projects opened previously as CMake ones can be reopened as West projects using the Convert to West Project action. Conversely, a dedicated action is available for converting West projects back into CMake ones.
  • Python interpreter setup - CLion automatically creates and enables a Python interpreter if there is a directory with a Python virtual environment next to the .west directory in the Zephyr workspace.
  • Kconfig language support - In addition to integration with West, CLion now provides language support for the Kconfig configuration language, which is widely used in Zephyr projects, the Linux kernel, and other projects.
  • Other improvements:
    • CMake projects with multiple files now load faster when using a remote toolchain.
    • By default, the C++20 standard is used for newly created projects.
    • Updated the bundled Ninja tool to version 1.12 to display build outputs faster without buffering.
    • CLion's spellchecker based on JetBrains Grazie now works with CLion Nova.
    • CLion's Features Trainer has also been adapted for CLion Nova and offers some additional lessons.

Debugger

  • GDB pretty printers - Resolved several issues with GDB pretty printers, ensuring that complex data types are shown in a more readable and convenient manner. The debugger now better represents various types, such as std::shared_ptr, std::array, std::valarray, std::list, and std::forward_list.
  • Faster variable expansion - This release comes bundled with GDB 14.2, which contains a patch written by our team to speed up variable expansion.

Editor

  • Inline rendering of documentation comments for С and С++ - Instead of presenting comments as walls of text mixed with tags, CLion offers inline rendering, which converts them into a more visually appealing format complete with links and code blocks. No more struggling with confusing tags, you can see everything more clearly. Inline rendering works in any C or C++ file to improve your reading experience.
  • Support for math syntax in Markdown files - CLion can now natively render mathematical expressions in Markdown files. You can use $ to insert inline math expressions and $$ for code blocks with math content when working with Markdown.
  • Language-specific settings for sticky lines - You can now set sticky lines more precisely and choose the languages they appear in. You can tailor the feature to your preferences either in Settings/Preferences or by calling the context menu with a right-click on a sticky line in the editor.

Other enhancements

  • Enhanced user experience with local history - The UI of the Local History dialog has been modernized. Additionally, when accessed for a directory, the dialog now features a diff view alongside the list of changes, making them easier to understand. To simplify reviewing changes in complex projects, the Local History action has been made available for multiple files or directories simultaneously. In the Project tool window, select multiple files or folders and choose Local History | Show History to view a popup with the change history for your selections.
  • Bundled localization plugins - To improve the IDE experience for native speakers of Chinese, Korean, and Japanese, support for these languages has been bundled.
  • New UI as the default - Starting with this release, the so-called "New UI" that was first introduced with the 2022.3 releases of JetBrains IDEs has finally become the default for all users. If you are particularly fond of CLion's old look, you can enjoy the classic UI by installing the corresponding plugin.