web-dev-qa-db-fra.com

Utilisation du format clang dans CLion

Je voudrais formater mon code en utilisant le format clang dans CLion. J'ai parcouru les paramètres et je n'ai trouvé aucun paramètre qui me permettrait d'exécuter une commande externe pour transformer le code. Comment ces choses se font-elles normalement dans CLion?

43
Klemen Forstnerič

Vous pouvez utiliser Outils externes dans CLion.

Aller à File->Settings->Tools->External Tools et cliquez sur le signe plus.

Une fenêtre devrait apparaître. Utilisez un nom de votre choix.

Pour le Tool settings tab J'utilise cette configuration:

  • Programme: clang-format-3.7 (vous devez utiliser ici le nom de votre exécutable)

  • Paramètres: -i $FileName$

  • Directeur de travail: $FileDir$

Maintenant, avec votre fichier ouvert, vous pouvez aller à Tools->External tools et exécutez la configuration ci-dessus. Il appelle essentiellement format clang et effectue un formatage sur place.

Vous pouvez également lui attribuer un clavier personnalisé, recherchez simplement le nom de votre outil externe dans le menu Paramètres.

60
Allan Hasegawa

La dernière version de CLion 2019.1 a un support natif pour ClangFormat.

Pour la version précédente, accédez à File->Preferences->Plugins Et recherchez ClangFormatIJ. Installez ce plugin.

Il installe le menu contextuel pour invoquer clang-format Installé localement pour un fichier ou pour une sélection. Il a également mis en place le raccourci clavier pour l'action "Reformater la déclaration actuelle avec le format clang".

Cette option fonctionne très bien pour moi dans CLion 218. cependant, elle pourrait également être incluse dans une première version.

10
frido

Les réponses précédentes fonctionnent bien, mais ne permettent pas d'exécuter le format clang lors de la sauvegarde sans l'utilisation de solutions de contournement qui ne fonctionnent pas avec le plug-in d'émulation Vim que j'utilise.

Voici une solution qui exécute le format clang lors de l'enregistrement et fonctionne bien dans toutes les situations que j'ai rencontrées.

  • Vous devez d'abord installer le File Watchers brancher.
  • De là, vous devez aller à File->Settings->Tools->File Watchers Et créez un modèle personnalisé Creating a new file watcher in the clion settings panel
  • J'utilise les paramètres suivants pour exécuter clang-format lorsqu'un des fichiers actuellement ouverts est enregistré. Vous pouvez modifier ces paramètres pour répondre à vos besoins My clang-format file watcher settings

    • Par exemple, si vous souhaitez exécuter clang-format automatiquement chaque fois que le fichier change (sans avoir besoin de l'enregistrer), vous pouvez activer Advanced Options->Auto-save edited files to trigger the watcher

Documentation pour le plugin File Watchers: https://www.jetbrains.com/help/clion/using-file-watchers.html

6
Chris Frank

Depuis CLion 191 EAP ClangFormat est pris en charge par la boîte.

5
uta