2009-08-26 8 views
6

Ich benutze astyle, die ideal für die Anwendung von Standard-Stil auf vorhandenen Code ist. Ich habe jedoch festgestellt, dass, wenn es über das kommt:astyle formatieren mehrere Zeile <<

ostringstream myStream; 
myStream << 1 
     << 2; 

es so umformatiert:

ostringstream myStream; 
myStream << 1 
<< 2; 

Hier ist meine Optionen Datei: (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 

Gibt es eine Möglichkeit, die "< <" in der nächsten Zeile in eine Linie zu bringen?

Edit:

Ich habe auch versucht, Version 1.22 mit der folgenden Datei (test.cpp):

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

mit der folgenden Optionen (format.txt):

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

und die folgende Befehlszeile:

astyle --options = format.txt test.cpp

, die diese produziert:

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

Antwort

8

Schlussfolgerung ist, es ist ein bugsiehe unten

Ich habe versucht, replizieren Sie Ihr Problem und war nicht in der Lage, das Verhalten zu erhalten, über das Sie sprechen (OP Frage Update negiert dies)

Edit: (deleted Inhalt zu aktualisieren)

Parameternamen haben zwischen 1,22 und 1,23 geändert.

Wenn keines von beiden Ihr Problem löst, versuchen Sie, mehr Code als Beispiel hochzuladen, oder versuchen Sie auf andere Weise, Ihr Problem nur mit dem Code zu kopieren, den Sie hier eingefügt haben. (Fertig von OP)

Ich habe auch festgestellt, dass die Reihenfolge der Optionen gelegentlich einen Unterschied gemacht haben. Zum Beispiel:

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

ist nicht das gleiche wie:

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

Angeben der "--style = ansi" zweiten effektiv negiert "--indent = Reiter".

Ich wäre nicht überrascht, wenn dies Ihr Problem sein könnte.

...Aber nachdem ich 20 Minuten damit herumgespielt habe, bin ich überzeugt, dass es ein Astyle bug ist.

bearbeiten Link auf Fehler enthalten: bug Dank Markh44

+0

Danke für die Antwort. Ich habe v1.23 benutzt und diese Optionen sind für diese Version korrekt. Ich habe Version 1.22 und änderte die Optionen für diese Version, aber ich bekomme das gleiche Problem (siehe aktualisierte Frage). – markh44

+0

Ein weiterer Fehler existiert in 2.04. Es fügt einen zusätzlichen Zeilenumbruch am Ende jeder Datei hinzu. Es ist ziemlich ärgerlich, wenn Sie das Tool zur Validierung von Code in einem Pre-Commit-Schritt verwenden. –