Nous pensons qu'il est important de définir les règles de formatage et le codage en conséquence, en particulier pour les projets à plusieurs personnes, afin d'améliorer la lisibilité de votre code.
En revanche, c'est une tâche coûteuse pour chaque développeur de se souvenir des règles de formatage et d'écrire le code en fonction de celles-ci, et de vérifier si le code écrit par d'autres développeurs suit les règles de formatage, donc c'est automatique. Il est préférable d'utiliser un formateur de code qui aligne les formats.
En ce qui concerne le moment et la méthode de transmission du formateur de code, "La personne qui écrit le code passe le formateur à chaque fois" "Défini pour être automatiquement formaté lors de l'enregistrement du fichier" "Défini pour être automatiquement formaté lors de la validation" " Il existe différentes possibilités telles que le "formatage à l'aide des commandes de la ligne de commande", et pour éviter d'oublier de formater, il est préférable de formater automatiquement au moment de l'enregistrement ou de la validation, mais c'est la commande depuis la ligne de commande. Dans certains cas, il est utile de pouvoir formater en utilisant. C'est pourquoi (bien que cela semble forcé), je voudrais introduire une méthode de formatage à partir de la ligne de commande pour les langages C.
Eclipse
Eclipse est un environnement de développement intégré bien connu. Il est principalement utilisé pour développer des programmes Java, mais il peut être utilisé pour développer des programmes dans différents langages en insérant un plug-in.
Dans Eclipse, vous pouvez définir des règles de formatage pour tout l'espace de travail ou pour chaque projet, et vous pouvez les formater sur l'interface graphique, mais en fait, vous pouvez également les formater à partir de la ligne de commande.
Pour formater à partir de la ligne de commande pour suivre les règles de mise en forme définies dans votre projet:
$ eclipse -nosplash -application org.eclipse.jdt.core.JavaCodeFormatter -config $PROJ_DIR/.settings/org.eclipse.jdt.core.prefs Hoe.java Fuga.java
Où $ PROJ_DIR
est le répertoire supérieur du projet où les règles de formatage sont définies.
Il semble que seul Java puisse être formaté à partir de la ligne de commande pour le moment. Par exemple, si vous avez installé un plug-in pour le développement de programmes C / C ++ appelé CDT, vous pouvez formater le code C / C ++ à partir de l'interface graphique, mais il semble que vous ne pouvez pas le formater à partir de la ligne de commande. Pardon.
ClangFormat
ClangFormat est un formateur pour C / C ++ / Objective-C / Objective-C ++ fourni avec clang. Il peut être utilisé à partir de la ligne de commande en utilisant la commande clang-format
.
Par exemple, pour formater avec le style de format de Google:
$ clang-format -i -style=google Hoe.h Hoe.cpp
L'ajout de -i
écrasera le fichier d'origine.
L'inconvénient de ClangFormat est qu'il est assez lourd à installer (vous devez construire à partir du code source LLVM: à partir de mars 2014). Cependant, le clang-format
construit fonctionne indépendamment, donc lors de son utilisation dans un projet, tout le monde utilise le binaire construit par une personne pour éviter la différence de comportement due à la différence dans la version du code source d'origine. Serait bon.
Artistic Style
(Artistic Style) [http://astyle.sourceforge.net/] est un outil de formatage de code pour C / C ++ / C # / Objective-C / Objective-C ++ / Java.
Par exemple, pour mettre en forme le code C # dans le style de format de Google:
$ astyle --style=google --mode=cs --suffix=none Hoe.cs Fuga.cs
L'ajout de --suffix = none
écrasera le fichier d'origine.
ʻA style --help` vous donnera une description détaillée des options de ligne de commande.
SublimeAStyleFormatter
En tant que frontal de Artistic Style, il existe Sublime AStyle Formatter qui est un plug-in pour Sublime Text 2. Pour cela, reportez-vous à "Présentation d'un formateur à Sublime Text 2".
La méthode de personnalisation du comportement de Sublime AStyle Formatter est relativement peu documentée, mais vous pouvez la comprendre en regardant la page suivante.
Lors du traitement du code source avec un script, etc., vous souhaiterez peut-être supprimer le formatage pour une partie du code source. Cette section décrit la méthode de suppression pour chaque formateur.
Eclipse
Entourez le bloc dont vous souhaitez supprimer la mise en forme avec // @formatter: off
et // @formatter: on
.
// @formatter:off
...
// @formatter:on
Cependant, cette balise doit être activée dans les paramètres du formateur Java.
ClangFormat
Placez le bloc pour lequel vous souhaitez supprimer le formatage avec // clang-format off
et // clang-format on
. (Référence: OPTIONS DE STYLE CLANG-FORMAT)
// clang-format off
...
// clang-format on
Il semble que cette spécification soit valide à partir de la version 3.6 de ClangFormat. Je l'ai essayé avec 3,5 et il n'a pas été reconnu.
Artistic Style
Entourez le bloc pour lequel vous souhaitez supprimer le formatage avec // * INDENT-OFF *
et // * INDENT-ON *
. (Référence: Artistic Style 2.05)
// clang-format off
...
// clang-format on
Nous avons introduit Eclipse, ClangFormat et Artistic Style comme outils de formatage de fichiers à partir de la ligne de commande. Personnellement, je pense que c'est Eclipse si vous développez avec Java + Eclipse, Clang Format ou Artistic Style si vous développez dans un langage C autre que C #, et Artistic Style si vous développez en C #.
Recommended Posts