Gibt es einen schönen Drucker / Code-Formatierer für C # (als Teil des Build-Systems)? Gelesen als: "lebt außerhalb von Visual Studio". Es scheint, als gäbe es viele dieser Dinge für Java, C ++ / C, Go - also scheint es mehr als vernünftig, dass C # auch einen Code-Formatierer haben sollte, der außerhalb der IDE lebt?
(Eigentlich möchte ich den Formatierer mit etwas wie StyleCop verbinden, und die Entwickler führen ihn als Teil des Prozesses vor einem Commit aus).
HINWEIS: Nicht Syntax-Hervorhebung, wie in Code in einer Webseite. Stattdessen ein Code-Verschönerer oder ein hübscher Code-Drucker, der Code nimmt und ihn in ein Stil / Standard-Codierungsformat formatiert ... welches StyleCop eine Stilprüfung durchführt, um zu sehen, ob der Code das Format erfüllt.
Das erste, was mir einfällt, ist ReSharper . Es ist jedoch ein Add-In für VS, was nicht das ist, wonach Sie gefragt haben. Ich bin mir nicht sicher, ob Sie es beim Speichern automatisch formatieren können.
Von ihrer Website :
ReSharper kann einen beliebigen ausgewählten Codeblock, allen Code, neu formatieren in der aktuellen Datei alle Dateien in einem Verzeichnis oder sogar in der gesamten Datei Projekt oder Lösung, gemäß Ihren Code Style-Einstellungen. ReSharper bietet verschiedene Formatierungsoptionen für C #, VB.NET, JavaScript-, CSS- und XML-Code. Die Neuformatierung wirkt sich auf das Klammer-Layout aus Leerzeilen, Zeilenumbruch und Zeilenumbrüche, Leerzeichen in verschiedenen Kontexte, Einzug, Ausrichtung mehrerer Konstrukte und vieles mehr Optionen, die Sie im Dialogfeld ReSharper-Optionen anpassen können.
Um Code-Formatierung (Art von Mikro-Refactoring) während des Builds zu automatisieren, benötigen Sie ein Werkzeug, das Sie von der Kommandozeile aus ausführen können (und Sie können es leicht in msbuild integrieren).
Ein guter, wenn Ihr Bedarf nicht zu weit fortgeschritten ist (Autoren definieren ihn als Verschönerer ) NArrange . Es unterstützt vollständig C # und VB.NET für Framework 2.0, aber viele weit verbreitete Funktionen neuerer Sprachversionen werden ebenfalls unterstützt.
NArrange ist ein .NET-Code-Verschönerer, der Code-Member und -Elemente innerhalb von .NET-Klassen automatisch organisiert.
Das automatische Ändern des Codes nach der Code-Überprüfung klingt für mich nicht nach einer guten Idee.
Es dauert ganze 2 Sekunden, um "Strg + E, D" zu machen, um die ganze Datei neu zu formatieren und VS wird automatisch formatiert, während Sie Code schreiben ... Ich würde einfach Code-Kommentar kommentieren, dass Code nicht formatiert wurde und fertig sein es.
Wenn Sie eine bestehende und ungewöhnliche Stilrichtlinie für Leerzeichen und geschweifte Klammern haben, ist AStyle wahrscheinlich flexibel genug, um sie anzupassen. AStyle ist nicht C # -spezifisch, es können viele C-ähnliche Sprachen verwendet werden.
NArrange ist auch gut, wenn es Ihren Stilrichtlinien entspricht. Es kann aggressiver sein, zum Beispiel kann es Teile Ihrer Klassen in verschiedene Regionen einfügen und Ihre Methoden sortieren.
Tags und Links c# pretty-print