2009-08-26 8 views
6

J'utilise astyle ce qui est génial pour appliquer un style standard au code existant. Cependant, je l'ai remarqué que quand il croise ceci:astyle formatage ligne multiple <<

ostringstream myStream; 
myStream << 1 
     << 2; 

reformatées à ceci:

ostringstream myStream; 
myStream << 1 
<< 2; 

Voici mon fichier d'options: (version 1,23)

--indent=spaces 
--brackets=break 
--indent-switches 
--indent-namespaces 
--min-conditional-indent=4 
--break-closing-brackets 
--pad-paren-in 
--unpad-paren 
--convert-tabs 

Y at-il un moyen de faire aligner le "< <" sur la ligne suivante?

Edit:

J'ai aussi essayé la version 1.22 avec le fichier suivant (test.cpp):

void main() 
{ 
    ostringstream myStream; 
    myStream << 1 
      << 2; 
} 

avec les options suivantes (format.txt):

--indent=spaces 
--brackets=break-closing 
--indent-switches 
--indent-namespaces 
--min-conditional-indent=4 
--pad=paren-in 
--unpad=paren 
--convert-tabs 

et la ligne de commande suivante:

astyle --options = format.txt test.cpp

qui a produit ceci:

void main() 
{ 
    ostringstream myStream; 
    myStream << 1 
    << 2; 
} 

Répondre

8

Conclusion finale est c'est un bugvoir en bas

J'ai essayé de répliquer votre problème et n'a pas pu obtenir le comportement dont vous parlez (la mise à jour de la question OP annule cela)

Edit: (contenu supprimé la mise à jour)

Les noms de paramètres ont changé entre 1,22 et 1,23.

Si aucun de vos problèmes n'est résolu, essayez de télécharger plus de code à titre d'exemple, ou essayez de reproduire votre problème en utilisant uniquement le code que vous avez collé ici. (Fait par OP)

J'ai également constaté que l'ordre des options semble avoir fait une différence à l'occasion. Par exemple:

astyle --indent=tab --style=ansi test.cpp 

n'est pas la même chose que:

astyle --style=ansi --indent=tab test.cpp 

Spécification du "--style = ansi" efficacement le second nie "--indent = onglet".

Je ne serais pas surpris si cela pourrait être votre problème.

...Mais après avoir joué avec ça pendant 20 minutes, je suis convaincu que c'est un.

Modifier pour inclure lien vers bug: bug Merci Markh44

+0

Merci pour la réponse. J'utilisais v1.23 et ces options sont correctes pour cette version. J'ai eu la version 1.22 et j'ai changé les options pour cette version mais j'ai le même problème (voir la question mise à jour). – markh44

+0

Un autre bug existe dans ver 2.04. Il ajoute une nouvelle ligne supplémentaire à la fin de n'importe quel fichier. C'est assez gênant si vous utilisez l'outil pour valider le code dans une étape de pré-validation. –

Questions connexes