Closed eroux closed 8 years ago
Voilà ce que donne lewis.cpp après un passage par clang-format : lewis.cpp
Bonjour Philippe, bonjour Élie,
Le 28 avril 2016, à 03h28, Elie Roux écrivit :
Ce serait assez pratique de se mettre d'accord sur un style et de pouvoir formatter le code automatiquement. Dans le style actuel il y a un mélange de tabs et de blocs de 4 espaces. Je propose de passer tout le code à clang-format en lui disant d'indenter avec 4 espaces, qu'en pensez-vous ?
Mon avis : pour l'indentation, càd tout ce qui est à
gauche du premier caractère, uniquement des tabs ; pour le reste, uniquement des espaces. D'accord pour dire qu'il faut éviter le mélange de tabs et d'espaces.
- les tabs parce que ça laisse le choix au lecteur de la
largeur d'indentation qui lui convient le mieux.
Personnellement, j'ai réglé Vim pour un tab = 4
espaces, mais je m'aperçois que beaucoup de gens ont
des tabs jusqu'à 8 espaces !
- les espaces ensuite : j'aime bien aligner les membres
des expressions dans les instructions répétitives, ce
qui permet de repérer beaucoup plus vite les noms des
variables, et leurs valeurs.
Cette page : http://suckless.org/coding_style me plaît
bien, mais elle est quand même très loin dans ses exigences.
L'indentation automatique de Vim marche plutôt bien,
mais je suis obligé de lancer une regExp pour supprimer les espaces de fin.
Yves
Pour tabs vs. espaces, le moins qu'on puisse dire c'est qu'on peut trouver des défenseurs des deux. Les espaces ont plutôt plus la cote en ce moment, par exemple Python et PHP ont normalisé ça (les indentations avec 4 espaces sont obligatoires pour respecter certaines normes). Personnellement je préfère les espaces, mais j'utilise editorconfig pour pouvoir passer d'un projet à l'autre sans avoir à modifier les préférences de mon éditeur de texte... pour mon boulot je dois utiliser 3 espaces par exemple... Bref, je crée une branche indentation avec un .editorconfig
et un .clangformat
qui utilisent des tab
Le 29 avril 2016, à 00h04, Elie Roux écrivit :
Pour tabs vs. espaces, le moins qu'on puisse dire c'est qu'on peut trouver des défenseurs des deux. Les espaces ont plutôt plus la cote en ce moment, par exemple Python et PHP ont normalisé ça (les indentations avec 4 espaces sont obligatoires pour respecter certaines normes). Personnellement je préfère les espaces, mais j'utilise editorconfig pour pouvoir passer d'un projet à l'autre sans avoir à modifier les préférences de mon éditeur de texte... pour mon boulot je dois utiliser 3 espaces par exemple... Bref, je crée une branche indentation avec un
.editorconfig
et un.clangformat
qui utilisent des tab
Personnellement, ça ne me gêne pas d'avoir des espaces
partout. Ça évite au moins d'avoir un code défiguré dès qu'une espace se glisse au milieu des tabs. Il me suffit de régler mon éditeur et de tout passer en indentation auto. Je vois qu'il y a un EditorConfig pour vim, mais la doc de Vim est suffisamment bien faite. Comme Collatinus est mon seul projet, un seul réglage me suffit. Je suppose que
Yves
Euh... du coup finalement on met des espaces ? combien par niveau d'indentation ?
Le 29 avril 2016, à 00h31, Elie Roux écrivit :
Euh... du coup finalement on met des espaces ? combien par niveau d'indentation ?
Apparemment des espaces, 4 par niveau d'indentation,
mais mieux vaut attendre l'avis de Philippe. Qt permet de
Yves
Selon http://doc.qt.io/qtcreator/creator-beautifier.html, la façon canonique de formater dans Qt creator est à l'aide d'plugin qui peut utiliser clang-format (utilisé par llvm et google, ce n'est pas rien !), je pense que c'est la meilleure option... mais attendons la réponse de Philippe oui. Par contre tout reformater va impliquer tellement de changements qu'il vaut mieux merger toutes les branches, puis tout reformater, puis refaire des branches neuves (si besoin)... Je ne sais pas trop comment gérer ça sur la branche syntaxe par exemple... on peut soit la merger tout de suite, quitte à avoir un état de la syntaxe un peu instable dans master (ce qui ne me semble pas vraiment être un problème), soit tout reformater aussi dans la branche syntaxe, mais ça va faire du boulot de merge à la main...
Elie
Le 29 avril 2016, à 01h01, Elie Roux écrivit :
Je ne sais pas trop comment gérer ça sur la branche syntaxe par exemple... on peut soit la merger tout de suite, quitte à avoir un état de la syntaxe un peu instable dans master (ce qui ne me semble pas vraiment être un problème), soit tout reformater aussi dans la branche syntaxe, mais ça va faire du boulot de merge à la main...
D'accord pour merger syntaxe dans master. Il y aura
peut-être du manuel à faire sur le lemmatiseur, mais pas grand chose, et de mon côté, je serai plus sûr de ce que je fais. Il faudra, je suppose, recréer une branche syntaxe
Yves
D'accord pour merger syntaxe dans master.
Ok, je vous laisse faire, il y aura sûrement des conflits à résoudre à la main, seul vous le pouvez...
Il faudra, je suppose, recréer une branche syntaxe non ?
Ça me paraît sage oui. J'en profite pour merger la pull request aussi, ce sera fait...
Elie
P.S. : la manière canonique est de d'abord merger mater dans syntaxe, résoudre les conflits, en esuite merger syntaxe dans master, c'est plus sûr comme ça...
J'ai l'impression que QtCreator (que j'utilise) fait par défaut des indentations de 4 espaces.
Le 29/04/2016 09:50, Yves Ouvrard a écrit :
Le 29 avril 2016, à 00h31, Elie Roux écrivit :
Euh... du coup finalement on met des espaces ? combien par niveau d'indentation ?
Apparemment des espaces, 4 par niveau d'indentation, mais mieux vaut attendre l'avis de Philippe. Qt permet de
régler finement le style de codage.
Yves
— You are receiving this because you are subscribed to this thread. Reply to this email directly or view it on GitHub https://github.com/biblissima/collatinus/issues/16#issuecomment-215651594
Ok, utilisons donc 4 espaces par niveau d'indentation. Philippe est-ce que ça vous va si je merge fix-7 dans master avant de tout reformatter ? ça simplifiera les choses...
Je ne fais rien aujourd'hui. Vous avez la main pour faire tous les merge que vous pouvez souhaiter faire (y compris l'accentuation actuelle, qui marche chez moi ; vérifiez quand même !).
Le 29/04/2016 10:45, Elie Roux a écrit :
P.S. : la manière canonique est de d'abord merger mater dans syntaxe, résoudre les conflits, en esuite merger syntaxe dans master, c'est plus sûr comme ça...
— You are receiving this because you are subscribed to this thread. Reply to this email directly or view it on GitHub https://github.com/biblissima/collatinus/issues/16#issuecomment-215660640
Le 29 avril 2016, à 01h42, Elie Roux écrivit :
D'accord pour merger syntaxe dans master.
Ok, je vous laisse faire, il y aura sûrement des conflits à résoudre à la main, seul vous le pouvez...
D'accord j' m'y mets cet après-midi.
Yves
Le 29 avril 2016, à 01h51, PhVerkerk écrivit :
Je ne fais rien aujourd'hui. Vous avez la main pour faire tous les merge que vous pouvez souhaiter faire (y compris l'accentuation actuelle, qui marche chez moi ; vérifiez quand même !).
D'accord. Je pense que cet après-midi tout sera bon pour
Yves
Une autre question : il y a parfois un espace avant les parenthèses dans un appel de fonction, parfois non... j'ai tendane à préférer quand il n'y en a pas, mais que préférez-vous ?
Le 29 avril 2016, à 03h04, Elie Roux écrivit :
Une autre question : il y a parfois un espace avant les parenthèses dans un appel de fonction, parfois non... j'ai tendane à préférer quand il n'y en a pas, mais que préférez-vous ?
J'ai changé d'avis il y a peu : pas d'espace.
Yves
Pour moi, tout va bien. J'aurais plutôt tendance à ne pas en mettre. En revanche, dans les paramètres quand il y en a plusieurs, j'aime bien la convention typographique usuelle qui demande un espace après la virgule. Mais ce n'est pas une obligation, je m'adapterai.
Le 29/04/2016 12:08, Yves Ouvrard a écrit :
Le 29 avril 2016, à 03h04, Elie Roux écrivit :
Une autre question : il y a parfois un espace avant les parenthèses dans un appel de fonction, parfois non... j'ai tendane à préférer quand il n'y en a pas, mais que préférez-vous ?
J'ai changé d'avis il y a peu : pas d'espace.
Yves
— You are receiving this because you commented. Reply to this email directly or view it on GitHub https://github.com/biblissima/collatinus/issues/16#issuecomment-215676103
Le 29 avril 2016, à 03h16, PhVerkerk écrivit :
Pour moi, tout va bien. J'aurais plutôt tendance à ne pas en mettre. En revanche, dans les paramètres quand il y en a plusieurs, j'aime bien la convention typographique usuelle qui demande un espace après la virgule. Mais ce n'est pas une obligation, je m'adapterai.
C'est ce que je fais aussi, mais dans les déclarations
de boucle for et while, je supprime tous les espaces avant et après les points-virgules :
for(int i=0;i<max;++i)
Yves
Ce serait assez pratique de se mettre d'accord sur un style et de pouvoir formatter le code automatiquement. Dans le style actuel il y a un mélange de tabs et de blocs de 4 espaces. Je propose de passer tout le code à clang-format en lui disant d'indenter avec 4 espaces, qu'en pensez-vous ?