File Tools

Notepad++ plugin

YAML reindent / tidy

YAML ist einrückungsempfindlich, und genau da geht es schief: ein Tab, der sich versehentlich zwischen die Leerzeichen schleicht, oder drei Kollegen, die jeweils ihre eigene Einrückung verwenden. Reindent / Tidy (Strg+Alt+Y) normalisiert die gesamte Datei mit einem Tastendruck, ohne die Bedeutung des Dokuments zu verändern.

YAML-tabblad van de File Tools instellingen

Was genau normalisiert wird

Vier Dinge, alle auf der Registerkarte YAML einstellbar: Tabs werden zu Leerzeichen, jede Ebene erhält eine konsistente Einrückung, es gibt nie mehr als die eingestellte Anzahl aufeinanderfolgender Leerzeilen, und trailing whitespace am Ende jeder Zeile verschwindet. Optional endet die Datei mit genau einem Zeilenumbruch.

Vorher

app:
	name: orders-service
    settings:
		retries: 3
      timeout: 30   



env: production

Nachher

app:
  name: orders-service
  settings:
    retries: 3
    timeout: 30

env: production

Was niemals angefasst wird

Block-Skalare (| und >, einschließlich ihrer Chomping-Indikatoren wie |- oder >+), Text in Anführungszeichen und Flow-Collections, die Sie bereits ordentlich über mehrere Zeilen verteilt haben, bleiben exakt so, wie sie waren. Die Tidy-Funktion normalisiert die Struktur, nicht den Inhalt.

Vorher

message: |
    Regel 1 met   opzet extra spaties.
      Regel 2 dieper ingesprongen.
tags: [one,   two,
       three]

Nachher

message: |
    Regel 1 met   opzet extra spaties.
      Regel 2 dieper ingesprongen.
tags: [one,   two,
       three]

Häufig gestellte Fragen

Wird dabei auch geprüft, ob mein YAML gültig ist?

Reindent / Tidy ist eine Formatierungsfunktion, kein Validator. Für eine explizite Prüfung verwenden Sie Plugins → Datamodder File Tools → YAML → Validate, das auf Basis von libyaml meldet, ob das Dokument gültig ist, und andernfalls, wo der Fehler liegt.

Was passiert mit Tabs innerhalb einer zitierten Zeichenkette?

Die bleiben unverändert — nur Tabs, die für die YAML-Struktur selbst (Einrückung) verwendet werden, werden durch Leerzeichen ersetzt.