CLion 2024.2 est disponible :
Tour d'horizon des nouveautés de l'EDI C/C++ multiplateforme de JetBrains

CLion 2024.2 assure une intégration plus étroite avec le moteur de langage ReSharper C++/Rider C++, améliore les performances du débogueur, ajoute de nouvelles fonctionnalités de développement intégré et améliore aussi bien les modèles de projet que les outils de build. Nous faisons dans la suite un tour d'horizon des nouveautés de l'EDI C/C++ multiplateforme de JetBrains.

Principales mises à jour

CLion Nova

Dans cette version, JetBrains a implémenté une partie des fonctionnalités les plus demandées pour le nouveau moteur de langage de ReSharper C++/Rider C++ (également appelé CLion Nova), avec notamment le développement à distance via JetBrains Gateway, Code With Me pour le développement collaboratif, l'assistance par IA et bien plus encore. Le nouveau moteur est également devenu la valeur par défaut pour les nouveaux utilisateurs CLion.

Saisie semi-automatique de code en ligne entière pour C++

Vous est-il interdit d'utiliser les fonctionnalités IA basées sur le cloud ? CLion 2024.2 introduit un nouveau type de saisie semi-automatique du code qui ne quitte pas votre système local, en proposant des suggestions d’une ligne en fonction du contexte du fichier actuel.

Ces suggestions proviennent de modèles de langage qui s'exécutent sur votre machine sans envoyer de code sur internet.

Prise en charge de Zephyr West

La prise en charge complète de Zephyr West arrive sur CLion. Elle vous permet d'ouvrir un projet Zephyr dans l’EDI et de le générer, de l'exécuter et de le flasher à l'aide de l'outil Zephyr West.

Le plugin intégré qui assure l'intégration avec West apporte également la prise en charge du langage pour Kconfig, qui est généralement utilisé non seulement dans les projets Zephyr, mais aussi dans le noyau Linux et d'autres projets.

Améliorations du débogueur

CLion 2024.2 améliore le débogueur de plusieurs façons, avec notamment l'expansion plus rapide des nœuds dans GDB, davantage de pretty printers pour les types de données complexes et un correctif pour le problème empêchant le débogage sous Windows à l'aide de WSL avec GDB Multiarch.

Saisie semi-automatique de code en ligne entière pour C++

Introduite précédemment pour Java, Kotlin, Python, JavaScript, TypeScript, CSS, PHP, Go et Ruby, la saisie semi-automatique de code en ligne entière est disponible pour C++ grâce à cette nouvelle version.

Cette fonctionnalité propose des lignes entières de code en s'appuyant sur un modèle de deep learning local, ce qui fait que les données ne sortent pas de votre EDI. Elle est incluse dans votre abonnement JetBrains IDE actif sans coûts supplémentaires.

La saisie semi-automatique de code en ligne entière fonctionne uniquement avec CLion Nova, le nouveau moteur de langage de ReSharper C++/Rider C++, qui peut être activé dans la section Settings/Preferences | Advanced Settings | CLion | Use the ReSharper C++ language engine (CLion Nova).


CLion Nova

Nova est utilisé par défaut pour les nouveaux utilisateurs

La version 2024.2 fait de CLion Nova l'interface par défaut pour les nouveaux utilisateurs de CLion. Ce nouveau moteur de langage sera activé automatiquement lorsque vous installerez la nouvelle version, sauf si CLion détecte des paramètres provenant d'une installation précédente ou si vous choisissez de les importer.

Développement à distance avec Gateway

La prise en charge du développement à distance via SSH en utilisant JetBrains Gateway est désormais disponible lorsque vous utilisez CLion Nova.

Pour commencer une nouvelle session à distance, allez dans la section File | Remote Development ou lancez JetBrains Gateway et cliquez sur New Connection dans la section du fournisseur SSH connection.


Code With Me

Code With Me peut à présent être utilisé pour le développement collaboratif avec CLion Nova. Pour activer la prise en charge de Code With Me, allez dans la section Tools | Enable Code With Me. Une autre solution consiste à utiliser Search Everywhere (double Maj) et rechercher « Enable Code With Me ».


Mise en évidence des éléments sémantiques

L'option de mise en évidence des éléments sémantiques utilise un code couleur pour les variables et les paramètres de votre code, afin de vous aider à les reconnaître au premier coup d'œil.

Suggestions de nom

L'AI Assistant suggère désormais des noms lorsque vous utilisez les refactorisations Rename et Change Signature.

Saisie semi-automatique du code basée sur le cloud

La saisie semi-automatique du code inline assurée par les LLM basés sur le cloud via l'AI Assistant est désormais prise en charge, que CLion Nova soit activé ou non.

La saisie semi-automatique du code inline permet de compléter des lignes de code, des fonctions entières, voire l'intégralité d'extraits de code en fonction du contenu du projet.

Fichier binaire personnalisé au format clang

CLion Nova vous permet d'utiliser un fichier binaire externe au format clang au lieu de celui qui est intégré dans l'EDI. Pour fournir le chemin du fichier binaire, allez dans la section Settings/Preferences | Editor | Code Style | C++.

Positions relatives et tailles des champs

La position relative des champs et leur taille pour les classes et les structures s'affiche désormais dans la fenêtre contextuelle qui s'affiche lorsque vous les survolez.


Autres améliorations

  • La fenêtre contextuelle de documentation rapide qui s'affiche lors des survols suggère maintenant des correctifs rapides.
  • L'encodage n'empêche plus l'ouverture des fichiers qui ne sont pas au format UTF-8.
  • Les paramètres personnalisés TODO persistent désormais lors du redémarrage de l'EDI.

Modèles de projet et outils de build

Prise en charge de Zephyr West

La version 2024.2 introduit le modèle de projet West, qui facilite considérablement la configuration, l'ouverture et la création d'un projet utilisant Zephyr.

Création de projet West et flashage

Les projets West permettent de créer et de flasher votre projet sur un microcontrôleur sans avoir à exécuter de nombreuses actions fastidieuses, comme définir West en tant qu'outil externe dans CLion et créer une cible de build personnalisée pour chacune de vos applications Zephyr.

Conversion des projets

Les projets Zephyr ouverts précédemment en tant que projets CMake peuvent être réouverts en tant que projets West en utilisant l'action Convert to West Project. Inversement, une action dédiée est disponible pour convertir à nouveau les projets West en projets CMake.


Configuration de l'interpréteur Python

CLion crée et active automatiquement un interpréteur Python s'il existe un répertoire ayant un environnement virtuel Python près du répertoire .west dans l'espace de travail Zephyr.

Prise en charge du langage Kconfig

En complément de l'intégration avec West, CLion 2024.2 assure la prise en charge du langage de configuration Kconfig, qui est généralement utilisé dans les projets Zephyr, le noyau Linux et d'autres projets.

Autres améliorations

  • Les projets CMake ayant plusieurs fichiers se chargent désormais plus vite lors de l'utilisation d'une chaîne d'outils à distance.
  • Par défaut, la norme C++20 est utilisée pour les nouveaux projets.
  • JetBrains a mis à jour l'outil intégré Ninja vers la version 1.12 pour afficher plus rapidement les résultats du build sans passer par la mémoire tampon.
  • Le correcteur orthographique de CLion qui est basé sur JetBrains Grazie fonctionne désormais avec CLion Nova.
  • CLion Features Trainer a également été adapté pour CLion Nova et offre quelques leçons supplémentaires.

Débogueur

Pretty printers de GDB

JetBrains a résolu plusieurs problèmes au niveau de la fonctionnalité pretty printers de GDB, afin de s'assurer que les types de données complexes s'affichent sous une forme plus lisible et pratique.

Le débogueur représente désormais différents types, tels que std::shared_ptr, std::array, std::valarray, std::list et std::forward_list.

Expansion plus rapide des variables

CLion 2024.2 inclut GDB 14.2 qui contient un correctif écrit par l'équipe JetBrains pour accélérer l'expansion des variables.

Éditeur

Rendu inline des commentaires de documentation pour C et C++

Au lieu d'un mur de texte mélangé avec des balises, CLion offre le rendu inline qui les convertit en un format plus esthétique incluant des liens et des blocs de code. Plus de problème avec les balises ambiguës, tout est beaucoup plus clair et lisible. Le rendu inline fonctionne dans tout fichier C ou C++ pour améliorer votre expérience de lecture.


Prise en charge de la syntaxe mathématique dans les fichiers Markdown

CLion peut désormais restituer nativement des expressions mathématiques dans les fichiers Markdown. Vous pouvez utiliser $ pour insérer des expressions mathématiques inline et $$ pour les blocs de code avec du contenu mathématique lors du travail avec Markdown.


Paramètres propres au langage pour les lignes épinglées

Il est désormais possible de définir des lignes épinglées plus précisément et de choisir les langages pour lesquels elles doivent apparaître. Vous pouvez adapter la fonctionnalité à vos préférences dans Settings/Preferences | Editor | General | Sticky Lines ou en appelant le menu contextuel par un clic droit sur une ligne épinglée dans l'éditeur.

Autres améliorations

Expérience utilisateur améliorée avec l'historique local

JetBrains a modernisé l'interface utilisateur de la boîte de dialogue Local History. De plus, lorsqu'on y accède pour un répertoire, la boîte de dialogue affiche à présent une vue différentielle à côté de la liste des modifications, ce qui facilite leur compréhension. Pour simplifier l'examen des modifications dans des projets complexes, l'action Local History est à présent disponible pour plusieurs fichiers ou répertoires simultanément. Dans la fenêtre d'outil Project, sélectionnez plusieurs fichiers ou dossiers et choisissez Local History | Show History pour afficher une fenêtre contextuelle indiquant l'historique des modifications pour votre sélection.

Nouvelle interface utilisateur par défaut

À compter de la version 2024.2, la nouvelle interface utilisateur inaugurée dans les versions 2022.3 des EDI JetBrains devient l'interface par défaut pour tous les utilisateurs.

Si vous préférez l'ancien aspect de CLion, vous pouvez rétablir l'interface utilisateur classique en installant le plugin correspondant.

Nouveautés et téléchargement de CLion 2024.2