Wie kommentiere ich einen Zeilenblock in YAML?
Wie kommentiere ich einen Zeilenblock in YAML?
Antworten:
YAML unterstützt Inline-Kommentare, jedoch keine Blockkommentare.
Aus Wikipedia :
Kommentare beginnen mit dem Nummernzeichen (
#
), können an einer beliebigen Stelle in einer Zeile beginnen und bis zum Ende der Zeile fortgesetzt werden
Ein Vergleich mit JSON, ebenfalls aus Wikipedia :
Die Syntaxunterschiede sind subtil und treten in der Praxis selten auf: JSON erlaubt erweiterte Zeichensätze wie UTF-32, YAML benötigt ein Leerzeichen nach Trennzeichen wie Komma, Gleich und Doppelpunkt, während JSON dies nicht tut, und einige nicht standardmäßige Implementierungen von JSON erweitern die Grammatik auf Fügen Sie die
/* ... */
Kommentare von Javascript hinzu . Die Behandlung solcher Randfälle erfordert möglicherweise eine leichte Vorverarbeitung des JSON, bevor es als Inline-YAML analysiert wird.
# If you want to write
# a block-commented Haiku
# you'll need three pound signs
Die Spezifikation beschreibt nur eine Möglichkeit, Kommentare zu markieren:
Ein expliziter Kommentar ist durch ein "#" gekennzeichnet.
Das ist alles. Es gibt keine Blockkommentare.
Versuchen Sie nicht, klug zu sein, aber wenn Sie Sublime Text für Ihren Editor verwenden, sind die Schritte:
Ich würde mir vorstellen, dass auch andere Editoren ähnliche Funktionen haben. Welches benutzt du? Ich würde gerne etwas graben.
In Vim können Sie einen der folgenden Schritte ausführen:
:%s/^/#
:10,15s/^/#
:10,.s/^/#
:10,$s/^/#
oder mit visuellem Block:
"Vim, I did a thing. do it here, and here and here and here and here..."
:
und eingeben, s/^/#
um die aktuelle Auswahl zu kommentieren.
qqI#<esc>jq
ist @Q@Q@Q@Q@Q@Q
(weil es schneller ist, die Umschalttaste nicht loszulassen), ist es eine Gewohnheit, die Sie auf viel komplexere Aufgaben ausweiten können. Fangen Sie klein an. Übe oft. Bald werden Sie beim ersten Versuch sehr komplexe Makros perfekt erstellen. Wenn Sie das Register zuerst löschen qqq
, können Sie @q
vor dem letzten einschließen q
, um eine Rekursion zu erhalten (jedoch nur bis zum Ende der Datei).
@q
kannst du es einfach machen 6@q
oder 10000@q
wenn du willst.
:h count
Multiplikatoren. Aber für mich ist visuell alles über 6 und ich muss es Hand sein, weil ich es nicht zuverlässig erraten kann. Die Ausnahme ist, dass ich weiß, dass ich mehr als 60 Zeilen auf meinem Terminal habe, also werde ich das verwenden, um für sehr große Marco-Wiedergaben zu schätzen. Als Bonus werde ich jedem vorschlagen, etwas darüber zu lernen, :h gn
was es einfach macht, .
Wiederholungen bei Suchmatches durchzuführen. Siehe vimcasts.org/episodes/operating-on-search-matches-using-gn
Ein alternativer Ansatz:
Wenn
dann
Beispiel:
Anstatt
# This comment
# is too long
verwenden
Description: >
This comment
is too long
oder
Comment: >
This comment is also too long
and newlines survive from parsing!
Weitere Vorteile:
Eine Möglichkeit, das Kommentieren in YAML zu blockieren, besteht darin, mit einem Texteditor wie Notepad ++ mehreren Zeilen gleichzeitig ein # (Kommentar) -Tag hinzuzufügen.
In Notepad ++ können Sie dies mit der Rechtsklickoption "Kommentar blockieren" für ausgewählten Text tun.
Wenn Sie Eclipse mit dem yedit-Plugin (einem Editor für .yaml-Dateien) verwenden, können Sie mehrere Zeilen auskommentieren, indem Sie:
Befolgen Sie zum Aufheben des Kommentars die gleichen Schritte.
Für Ruby Mine-Benutzer unter Windows:
Datei im Editor öffnen Wählen Sie den Block aus und drücken Sie Ctrl+ forward slash. Sie haben den Block beginnend mit # ausgewählt.
Wenn Sie nun den kommentierten Block auskommentieren möchten, drücken Sie dieselbe Tastenkombination Ctrl+ forward slasherneut
Emacs hat comment-dwim (Mach was ich meine) - wähle einfach den Block aus und mache ein:
M-;
Es ist ein Umschalter - verwenden Sie ihn, um Blöcke zu kommentieren UND zu kommentieren.
Wenn Sie den Yaml-Modus nicht installiert haben, müssen Sie Emacs anweisen, das Hash-Zeichen (#) zu verwenden.
Für Benutzer von Visual Studio Code (VSCode) besteht die Verknüpfung zum Auskommentieren mehrerer Zeilen darin, die zu kommentierenden Zeilen hervorzuheben und dann zu drücken:
ctrl + /
Durch erneutes Drücken von ctrl+ /können Sie auch Kommentare für eine oder mehrere ausgewählte Zeilen deaktivieren.
Im Azure Devops-Browser (Pipeline-Yaml-Editor)
Ctrl+ K+ CKommentarblock
Ctrl+ K+ UKommentarblock
Es gibt auch die Option "Blockkommentar umschalten", aber das hat bei mir nicht funktioniert.
Es gibt auch andere "seltsame" Möglichkeiten: Klicken Sie mit der rechten Maustaste, um "Befehlspalette" oder "Befehlspalette" anzuzeigen F1
Wählen Sie dann eine Cursoroption.
Jetzt ist es nur noch eine Frage von #
oder noch schlauer [ Ctrl+ k] + [ Ctrl+ c]