YAML Formatter & Validator
Understand YAML Formatter & Validator
Dieser Formatierer gibt YAML mit einheitlicher Einrückung neu aus und meldet die Strukturen, die er nicht lesen kann.
How it works
YAML drückt Verschachtelung über Einrückung statt über Klammern aus, der Parser verfolgt also, mit wie vielen Leerzeichen jede Zeile beginnt, und baut daraus das Mapping. Werte werden anschließend anhand ihres Textes typisiert: true und false sind Booleans, null und ~ sind null, eine nackte Zahl ist eine Zahl, und alles andere ist eine Zeichenkette, sofern es nicht in Anführungszeichen steht. Die Ausgabe wird aus den geparsten Werten neu serialisiert, deshalb kommt sie einheitlich zurück – und deshalb ist jeder Kommentar aus dem Original verschwunden.
When to use it
- Einen GitHub-Actions-Workflow oder ein Kubernetes-Manifest prüfen, bevor Sie es pushen.
- Die Zeile finden, in der ein eingefügter Block auf der falschen Einrückungstiefe gelandet ist.
- Die Einrückung in einer Konfigurationsdatei vereinheitlichen, die mehrere Personen bearbeitet haben.
- Bestätigen, dass ein Wert, der eine Zeichenkette sein soll, nicht als Zahl oder Boolean gelesen wird.
Watch out for
- Tabulatoren sind in YAML zur Einrückung niemals zulässig. Ein einzelner vom Editor eingefügter Tabulator ist in jedem konformen Parser ein Syntaxfehler, und er ist unsichtbar – das ist der häufigste Grund, warum ein Manifest scheitert.
- In YAML 1.1, weiterhin Voreinstellung in PyYAML und in viel älterem Werkzeug, sind die Werte yes, no, on und off ohne Anführungszeichen Booleans, aus einem Länderfeld NO wird also false. Das ist das Norwegen-Problem. Dieses Tool folgt YAML 1.2 und behandelt sie als Zeichenketten; setzen Sie sie in jedem Fall in Anführungszeichen, dann sind sich beide einig.
- Kommentare bleiben nicht erhalten. Das Neuformatieren liefert die Daten zurück, nicht die Datei; fügen Sie das Ergebnis also nicht über eine Konfiguration ein, deren Kommentare Sie brauchen.
- Behandelt wird die Form, die die meisten Konfigurationsdateien haben: Schlüssel auf oberster Ebene, verschachtelte Mappings und einfache Listen. Anker und Aliase (&defaults, *defaults), Block-Skalare (| und >) und Mehrdokumentdateien, die durch --- getrennt sind, werden nicht wiedergegeben.
Not the right tool for: Ein Manifest gegen sein Schema zu validieren. Die Syntax kann perfekt sein, während jedes Feld falsch ist; das prüfen kubeconform, actionlint oder der Validator der Plattform selbst.
Frequently Asked Questions
Warum ist mein YAML ungültig?
Häufige YAML-Fehler: Tabulatoren statt Leerzeichen zur Einrückung (YAML verlangt Leerzeichen), uneinheitliche Einrückungstiefen, Sonderzeichen ohne Anführungszeichen (: { } [ ] , # & * ? | - < > = ! % @ `) und Sonderwerte wie "yes" oder "no", die unerwartet als Booleans gelesen werden.
Wie bringe ich einen Doppelpunkt in einen YAML-Wert?
Ein Doppelpunkt gefolgt von einem Leerzeichen beginnt in YAML ein Paar aus key: value. Für einen wörtlichen Doppelpunkt im Wert setzen Sie die gesamte Zeichenkette in Anführungszeichen: message: "Error: connection failed" – oder nutzen Sie für mehrzeilige Werte einen Block-Skalar (|).
Welche YAML-Version wird hier verwendet?
Dieser Formatierer verwendet YAML 1.2, das strenger ist als YAML 1.1. Anders als 1.1 behandelt YAML 1.2 nur true/false als Booleans (nicht yes/no/on/off) und ist damit vollständig JSON-kompatibel.
How to Use YAML Formatter & Validator
- Paste or type your input in the input area above.
- The tool processes your input automatically or click Run.
- Copy or download the result using the action buttons.
- Use Ctrl+Enter to run quickly from the keyboard.