Gibt es eine Möglichkeit, den Visual Studio-Texteditor (2015 oder 2017) daran zu hindern, die Kommentarzeilen automatisch zu verschieben, wenn Strg + K, D oder ein relevanter Tastendruck (Strg + E, D - Formatieren des gesamten Dokuments) gedrückt wird?
Ich möchte, dass meine Kommentare an der angegebenen Position bleiben, unabhängig von der Code-Position darüber oder darunter.
Wenn Sie beispielsweise einen Kommentar zu einer neuen Zeile schreiben , beginnen Sie mit Spalte 60 wie folgt :
code line
|-------- white space ----------| //... comment .. <-- comment is auto shifted left
code line
so daß es nicht mit dem Code unter oder über interferieren , wenn Strg + K drücken, D wird der Kommentar links verschoben, mit dem umgebenden Code auszurichten.
Auf der anderen Seite, wenn ein Kommentar nach einer Codezeile platziert wird , wie folgt :
|--code line --|- white space -| //..1st comment line..
|------white space ------------| //..2nd comment line.. <-- comment is properly auto aligned
Ein eventueller zweiter Kommentar in einer neuen Zeile bleibt an dem obigen ausgerichtet , was darauf hinweist, dass der Editor die Position von Kommentarzeilen basierend auf bestimmten Kriterien anpassen kann.
Ich möchte klarstellen, dass ich den Rest der Funktionalität von Strg + K, D beibehalten möchte.
Bearbeiten: Ich befürchte, dass alle Richtlinien, die in den unten von Seth bereitgestellten Anweisungen zum Verwalten der Codeformatierung erwähnt werden , lediglich die Anwendung der Anweisungen erzwingen, die bereits im Texteditor für jede bestimmte Sprache (und insbesondere c #) bezüglich des beabsichtigten Texts festgelegt wurden.
Auch wenn einige Tabulatoren oder Leerzeichen vor dem Kommentar eingefügt werden, werden sie automatisch gelöscht, wenn Strg + K, D angewendet wird, einfach weil es keine relevanten Anweisungen zum Umgang mit Leerzeichen in bestimmten Konstrukten und damit im Allgemeinen gibt Regel wird angewendet.
Ich glaube, dass eine einfache Anweisung, die zum Texteditor hinzugefügt wurde, wie "Leerzeichen oder Tabulatoren vor Kommentaren beibehalten" , das Problem lösen würde (wie es tatsächlich der Fall ist, aber nur, wenn ein Kommentar dem Code folgt).
Es wäre nur eine Verbesserung eines bereits existierenden, wenn auch nicht dokumentierten Verhaltens (soweit ich gesucht habe).
Antworten:
Wenn Sie ReSharper haben (ein großartiges Tool, das aus vielen Gründen zu haben ist), hat seine Formatierungs-Engine dieses Problem nicht. Gehen Sie zu VS> Extras> Anpassen> Tastatur ...> Befehle mit "FormatDocument" anzeigen und entfernen Sie alle Tastenzuordnungen . Jetzt zeigen Befehle „Reformiert“ , Verknüpfung hinzufügen Ctrl-KD zum ReSharper Befehl.
Voila, nicht verwandte Kommentare werden nicht in eine Reihe gebracht, nur weil sie in aufeinanderfolgenden Zeilen stehen. Sie können auch einfach den R # -Befehl Strg-Alt-Enter anstelle von Strg-KD verwenden. Letzteres tun meine Finger nach jahrelanger Übung automatisch. Das Überschreiben dieser Tastenkombination ist meine bevorzugte Lösung.
Wenn Sie möchten, dass ein Kommentar eine zusätzliche Einrückung erhält, können Sie "// // Kommentar ..." verwenden, was möglicherweise nicht genau Ihren Wünschen entspricht, aber nicht allzu schlimm ist.
quelle
Dies ist eine "halbe Lösung", aber ich habe nichts Besseres gefunden. In vielen Fällen folgt die Kommentarausrichtung einer Benutzeraktion. In diesem Fall hat STRG-Z (Rückgängig machen) die Kommentare an die Position gebracht, die sie vor der Ausrichtung hatten. Um die Benutzeraktion rückgängig zu machen, ist ein weiteres STRG-Z erforderlich. Wie gesagt, es ist keine Lösung, auf jeden Fall ist es der schnellste Weg, den Code so zu belassen, wie wir es wollen. Ich hoffe, dass MS die Option hatte, die Ausrichtung der Kommentare zu deaktivieren.
quelle