CLion 2020.1 est disponible et apporte de nombreuses améliorations aux fonctionnalités de l'EDI C/C++ de JetBrains,
les développeurs de projets embarqués et CUDA y trouveront de nombreux avantages
CLion 2020.1 apporte de nombreuses améliorations aux fonctionnalités de l'EDI, de la prise en charge de langage, en passant par le débogueur, le formateur et les refactorisations. Les développeurs Windows, ainsi que les développeurs de projets embarqués et CUDA, y trouveront aussi de nouveaux avantages spécialement pensés pour eux.
Développement embarqué
Chaîne d'outils IAR : si vous utilisez le compilateur/la chaîne d'outils IAR dans vos projets intégrés, vous pouvez désormais le faire dans CLion. La collecte des informations du compilateur n'échoue plus, ce qui signifie que les projets utilisant la chaîne d'outils IAR se chargent correctement et fonctionnent dans CLion. Notez que MinGW est requis.
PlatformIO : PlatformIO est un écosystème de nouvelle génération qui gagne rapidement en popularité. Pour en bénéficier dans vos projets embarqués, profitez du nouveau plugin PlatformIO for CLion qui :
- Ajoute le type de projet PlatformIO à l'assistant New Project.
- Génère le projet PlatformIO CMake correspondant.
- Crée automatiquement des configurations pour le débogage et le téléchargement sur serveur.
- Permet le débogage avec le débogueur PIO Unified Debugger de CLion directement sur puce.
Prise en charge de CUDA
Analyse du code et assistance au codage : le code en CUDA C et C++, y compris toutes les extensions CUDA spécifiques, est maintenant analysé et mis en évidence correctement. Par conséquent la navigation dans le code, la documentation et autres actions d'assistance au codage fonctionnent dans un code CUDA. De plus, CLion peut compléter les chevrons pour les appels au noyau.
Nouvel assistant de projet : l'assistant New Project dans CLion a été mis à jour avec une nouvelle option pour créer des projets CUDA - bibliothèques ou exécutables. Une fois sélectionnée, elle génère pour vous des exemples de fichiers CMakeLists.txt et main.cu.
Extensions de fichiers et cibles CMake : les nouvelles extensions de fichiers CUDA prises en charge, .cu et .cuh, sont disponibles dans la nouvelle boîte de dialogue de création de fichiers C/C++. Et la liste des cibles possibles à mettre à jour dans cette boîte de dialogue comprend à la fois des cibles générales CMake et des cibles spécifiques CUDA (créées avec les commandes cuda_add_executable et cuda_add_library).
Développement sous Windows
Clang-cl
L'utilisation de clang-cl est maintenant possible dans CLion sous Windows, avec les versions 8.0 et ultérieures prises en charge.
Vous pouvez l'installer à partir du site Web de LLVM ou avec les outils Visual Studio. Une fois l'opération terminée, sélectionnez la chaîne d'outils Visual Studio dans CLion et pointez sur clang-cl.exe dans les paramètres de la chaîne d'outils.
Débogueur pour la chaîne d'outils Visual Studio C++
Le débogueur basé sur LLDB pour la chaîne d'outils Visual Studio C++ développé par JetBrains est maintenant le débogueur par défaut pour cette chaîne d'outils. Vous pouvez donc commencer à l'utiliser directement !
Notez que la prise en charge groupée des visualiseurs natifs doit être activée explicitement dans Settings | Build, Execution, Deployment | Debugger Data Views | Enable NatVis renderers for LLDB.
L'assistant New Project dans CLion a été mis à jour avec une nouvelle option pour créer des projets CUDA - bibliothèques ou exécutables. Une fois sélectionnée, elle génère pour vous des exemples de fichiers CMakeLists.txt et main.cu.
Configurations Run and Debug
Cibles personnalisées pour GDB distant et intégré
Les configurations Serveur GDB à distance et Serveur GDB embarqué fonctionnent désormais avec des cibles personnalisées. Ces configurations, qui ne fonctionnaient auparavant qu'avec les cibles CMake, vous permettent de déboguer votre application sur un hôte distant ou sur le microcontrôleur depuis l’instance CLion exécutée sur votre machine locale.
Si vous avez déjà créé ces configurations, CLion 2020.1 stockera les paramètres de configuration Run/Debug précédents dans le répertoire projectFilesBackup du dossier de projet et vous en informera.
Prise en charge des macros et des variables de chemin d'accès dans les configurations Run/Debug
Vous pouvez désormais utiliser des variables de chemin d'accès et des macros dans les champs Program Arguments et Working Directory dans les configurations CMake, Custom Build et Gradle Native Applications. Les macros vous aident à obtenir des valeurs pour :
- Le répertoire de build pour la configuration d'exécution CMake actuelle.
- Le répertoire de génération pour la configuration d'exécution CMake actuelle.
- Le répertoire du fichier de projet.
- Et bien d'autres.
Les macros FilePrompt/Prompt peuvent être utilisées pour afficher une boîte de dialogue de sélection de fichier ou de saisie de chaîne de caractères lors de l'exécution/du débogage de la configuration.
La variable de chemin d'accès peut définir un chemin d'accès à une bibliothèque largement utilisée dans vos projets, mais qui se trouve en dehors du répertoire du projet.
Redirection d'entrée
Si vous avez besoin de rediriger l'entrée d'un fichier vers le stdin de votre application, c'est maintenant possible. Utilisez le nouveau champ de configuration appelé Redirect input from. Entrée:
- Un chemin relatif (CLion précédera le chemin du répertoire de travail).
- Un chemin absolu (il sera remappé pour les configurations distantes).
- Ou des macros (comme FilePrompt).
Outils Clang
Analyse du flux de données sur Clangd
L'analyse de flux de données (DFA) de CLion fait quelque chose qu'un compilateur n'est généralement pas capable de faire : il analyse la façon dont les données transitent par votre code et détecte les problèmes potentiels en fonction des résultats. Elle intercepte les conditions toujours fausses/vraies, les boucles sans fin, les instructions de retour manquantes, la récursion infinie, etc. Et avec la version 2020.1, la DFA est passée au moteur de langage basé sur Clangd pour devenir plus précis et moins lourd en termes de performances. Le travail n'est pas terminé, mais de bons résultats sont déjà à disposition !
Saisie semi-automatique pour Clangd-only
Un nouveau mode, dans lequel la saisie semi-automatique est entièrement fournie par le moteur de langage basé sur Clangd, est activé par défaut. Ce mode résout les problèmes de hiérarchisation et de classement qui se produisaient lorsque les résultats de la saisie semi-automatique du code de plusieurs moteurs étaient mélangés. Ce comportement est contrôlé par le paramètre Code Completion dans Settings | Languages & Frameworks | C/C++ | Clangd.
Des dizaines de correctifs et d'améliorations renforcent la précision et la puissance de ce nouveau mode.
ClangFormat
Désormais, lorsque vous ouvrez un projet pour la première fois avec un fichier de configuration .clang-format à la racine du projet, CLion le détecte et basculer automatiquement vers ClangFormat pour vous.
Si vous activez ClangFormat pour un projet ne comportant pas de fichier de configuration .clang-format, CLion vous proposera d'en créer un pour vous.
Clang-Tidy
Lorsqu'un fichier de configuration .clang-tidy est détecté dans le projet, CLion désactive désormais automatiquement l'utilisation des paramètres de l'EDI pour Clang-Tidy. Le comportement est contrôlé par Prefer .clang-tidy files over IDE settings dans Settings | Editor | Inspections | C/C++ | General | Clang-Tidy.
Formatteur et pliage du code
Nouveaux paramètres de nommage
Les champs de membres de structure et les champs de membres de classe ont désormais des paramètres de nommage différents. Découvrez-les dans Settings | Editor | Code Style | C/C++ | Naming Convention.
Pliage du code
#pragma region et #pragma endregion peuvent être utilisées dans CLion pour le pliage de code.
Mise à jour des refactorisations
Lors de l'appel de la refactorisation Change Signature (Ctrl+F6), CLion actualise toutes les utilisations de la fonction. Un nouveau champ Default value dans la boîte de dialogue Change Signature offre la possibilité de spécifier la valeur du paramètre pour toutes les utilisations. Laissez-le vierge pour utiliser le type de valeur par défaut.
La même logique et un nouveau champ Default value s'appliquent au correctif rapide Create Parameter From Usage et à l'intention Add Parameter to Constructor.
Éditeur
Documentation rapide
La documentation rapide, un outil universel pour prévisualiser la documentation et obtenir des informations sur la signature de fonction, les types inférés et le remplacement de macro, est désormais disponible au survol de la souris.
Contrôlez cet outil à l'aide du paramètre Show quick documentation on mouse move dans Settings | Editor | Code Editing
JetBrains Mono et IntelliJ Light
La police par défaut dans l'éditeur a été remplacée par JetBrains Mono, une nouvelle police de caractères open source créée par JetBrains. Elle a été spécialement conçue pour faciliter la lecture du code.
Un nouveau thème clair par défaut, IntelliJ Light, est maintenant le thème standard sur tous les systèmes d'exploitation. Utilisez View | Quick Switch Scheme | Theme pour sélectionner un thème autre que celui par défaut si vous le souhaitez.
Sessions de terminal fractionnées
Avec CLion 2020.1, vous pouvez fractionner les sessions de terminal verticalement ou horizontalement afin de pouvoir les exécuter côte à côte. Vous pouvez appeler le menu contextuel à partir du terminal pour créer une session de terminal fractionnée, y naviguer et la fermer.
Contrôle de version
Nouvelle fenêtre d'outils Commit
Une fenêtre d'outil actualisée offre davantage d'espace pour la liste des fichiers modifiés et le diff. Elle vous permet également d'ajouter des modifications à un commit quand elles sont prêtes, de composer un message de commit de manière itérative, et de choisir quelle modification échelonnée va dans quel commit.
La nouvelle interface utilisateur est activée par défaut pour les nouveaux utilisateurs. Les utilisateurs existants peuvent l'activer dans Settings | Version Control | Commit.
Installer Git depuis l'EDI
La fenêtre d'outil Version Control s'appelle désormais la fenêtre d'outil Git, ou Subversion/Mercurial/Perforce si vous utilisez l'un de ces outils au lieu de Git.
Vous n'avez plus besoin de préinstaller Git manuellement ! Lorsque vous ouvrez un projet à l'aide de Git ou en importez un à partir du VCS, si vous n'avez pas Git sur votre machine, CLion vous proposera de télécharger et d'installer Git pour vous.
Interactively Rebase from Here
Une boîte de dialogue mise à jour et véritablement interactive permet de :
- Sélectionner une action que vous souhaitez effectuer sur chaque commit de votre branche.
- Consulter un graphique montrant quelles actions ont été appliquées.
- Afficher les détails des commits.
- Consulter un diff et révisez ou réinitialisez les modifications si nécessaire.
Mise à jour du plugin Rust
Grâce aux améliorations apportées à la prise en charge de LLDB, IntelliJ Rust affiche désormais correctement les énumérations et les types primitifs, et il affiche également clairement les noms de fonction dans la pile des appels.
Autre mise à jour majeure qui a atterri dans l'extension : l'intégration avec REPL. Appelez la console depuis Tools | Rust REPL et utilisez-la pour le prototypage et la vérification de votre code ligne par ligne. L'intégration fournit la mise en évidence de la syntaxe et la saisie semi-automatique du code, ainsi que certaines actions pratiques de la console : historique des commandes, retours à la ligne, défilement rapide jusqu'à la fin, etc.
Du côté de la prise en charge des langages, IntelliJ Rust gère désormais les blocs impl pour les alias de types. Pour tenir compte des performances, nous n'avons activé cette fonctionnalité que pour les types avec un nombre limité d'alias.
Parmi les autres améliorations, citons la mise en évidence des variables locales inutilisées, des corrections de la prise en charge des attributs cfg et la nouvelle inspection Lift return.
Autres améliorations
- Toutes les configurations distantes bénéficient désormais de l'interface utilisateur des configurations SSH communes et unifiées. Peu importe d'où provient une nouvelle configuration SSH (qu'il s'agisse de paramètres de chaînes d'outils distantes ou de configurations de serveur GDB distant), elle sera répertoriée dans Settings | Tools | SSH Configurations.
- Si vous souhaitez vous concentrer uniquement sur votre code source, vous pouvez sélectionner un nouveau mode Zen, qui combine le mode sans distraction et le mode plein écran. Pour l'activer, cliquez sur View | Appearance | Enter Zen Mode.
Télécharger CLion 2020.1
Source : JetBrains
Partager