Der schnellste Weg, TOML in YAML umzuwandeln, ist der Befehl yq -oy '.' file.toml. Bei manueller Konvertierung ordnen Sie TOML-Tabellenkopfzeilen [table] den eingerückten Blöcken in YAML zu, TOML-Arrays den listenartigen Einträgen mit Bindestrich, und setzen Sie mehrdeutige Zeichenketten stets in Anführungszeichen, um das »Norwegen-Problem« zu vermeiden.
Schnelle Konvertierung: yq CLI verwenden
TOML (Tom’s Obvious, Minimal Language) erreichte Version 1.1.0 im Dezember 2025, doch YAML bleibt der Standard für CI/CD-Pipelines und Kubernetes-Manifeste. Das Tool yq erledigt die Konvertierung mit einem einzigen Befehl.
yq installieren
| Plattform | Befehl |
|---|---|
| macOS/Linux | brew install yq |
| Windows | choco install yq |
| Python (pip) | pip install yq |
Die Go-basierte Version von Mike Farah ist aufgrund ihrer Geschwindigkeit bevorzugt. Wie in der yq-Dokumentation von Mike Farah beschrieben, dekodiert das Tool die TOML-Struktur und kodiert sie als sauberes YAML neu.
Konvertierung ausführen
Im Terminal anzeigen:
yq -oy '.' your-config.toml
In Datei speichern:
yq -oy '.' your-config.toml > your-config.yaml
Das Flag -oy legt YAML als Ausgabeformat fest. Es verarbeitet Schlüssel-Wert-Paare, verschachtelte Tabellen und Arrays.

Syntax-Übersetzungskarte: TOML-Struktur zu YAML
Entwickler Drew DeVault hat angemerkt, dass YAML tiefe Verschachtelung sauberer handhabt, obwohl TOML beliebt ist. Hier ist die genaue Zuordnung:
Tabellen zu eingerückten Schlüsseln
TOML verwendet Klammernkopfzeilen; YAML verwendet Einrückung.
| TOML | YAML |
|---|---|
[server] |
server: |
host = "127.0.0.1" |
host: 127.0.0.1 |
port = 8080 |
port: 8080 |
Entscheidender Unterschied: In TOML ist die Einrückung kosmetisch. In YAML ist die Einrückung strukturell — ein falsches Leerzeichen zerstört die gesamte Konfiguration.
Arrays zu Listen mit Bindestrich
TOML: ports = [ 8000, 8001 ]
YAML:
ports:
- 8000
- 8001

Wie Knightli.com erklärt, macht der »Block-Stil« von YAML Listen gut lesbar, sofern die vertikale Ausrichtung konsistent ist.
Inline-Tabellen und Punktschreibungs-Schlüssel
| TOML-Konstrukt | YAML-Äquivalent |
|---|---|
[a.b.c] (Punktkopfzeile) |
a: → b: → c: (verschachtelte Einrückung) |
point = { x = 1, y = 2 } (Inline-Tabelle) |
point: → x: 1 → y: 2 |
Praxisnahe Anwendungsfälle
Konfiguration statischer Hugo-Websites
Hugo akzeptiert hugo.toml, hugo.yaml oder hugo.json. Die meisten Projekte beginnen mit TOML (dem Standard) und wechseln dann zu YAML, wenn die Konfiguration mit Bereitstellungsplattformen wie Netlify oder GitHub Actions abgestimmt werden muss. Hammer Europe stellt fest, dass der hugo-Befehl diese Dateien liest, um zu bestimmen, wie Markdown in eine Live-Website umgewandelt wird.
Python-Paketierung: pyproject.toml zu CI/CD-YAML
Die Python-Community hat pyproject.toml über PEP 518 standardisiert. Diese Einstellungen müssen häufig in YAML für GitHub Actions CI/CD-Workflows übersetzt werden. Für KI-Agenten-Workflows berichtet CocoIndex, dass optimierte YAML-Konfigurationen den Token-Verbrauch um bis zu 70 % reduzieren können.
Das Norwegen-Problem und weitere Konvertierungsfallstricke
Der Ländercode-NO-Bug
In YAML 1.1 werden bloße Zeichenketten wie NO, OFF und YES automatisch in boolesche Werte false oder true umgewandelt. TOML vermeidet dies, indem es Anführungszeichen für alle Zeichenketten verlangt. Setzen Sie bei der Konvertierung mehrdeutige Werte stets in Anführungszeichen:
| Wert | YAML-1.1-Interpretation | Korrektur |
|---|---|---|
NO |
false |
"NO" |
OFF |
false |
"OFF" |
YES |
true |
"YES" |
On |
true |
"On" |
YAML 1.2 (die aktuelle Spezifikation) behebt die meisten dieser Umwandlungen, jedoch verwenden viele Parser standardmäßig noch das 1.1-Verhalten.

Einrückungsfehler
YAML-Parser lehnen Dateien mit inkonsistenter Einrückung ab. Häufige Fehler:
- Vermischung von Tabulatoren und Leerzeichen (YAML verbietet Tabulatoren)
- Verwendung von 3 Leerzeichen in einem Block und 2 in einem anderen
- Fehlausgerichtete Listenelemente
KI-gestützte Generierung
Tools wie AgentBuilder ermöglichen es, die Konfiguration in natürlicher Sprache zu beschreiben und validiertes YAML auszugeben. Dieser Zyklus »beschreiben → generieren → validieren« hilft, sowohl Einrückungsfehler als auch das Norwegen-Problem zu vermeiden.
Fazit
Verwenden Sie yq -oy '.' file.toml für die automatisierte Konvertierung. Bei manueller Arbeit ordnen Sie TOML-Tabellen der YAML-Einrückung zu, Arrays den Listen mit Bindestrich, und setzen Sie Zeichenketten, die mit booleschen Werten verwechselt werden könnten, stets in Anführungszeichen. Validieren Sie nach jeder Konvertierung die YAML-Ausgabe vor der Bereitstellung — ein einziges fehlplaziertes Leerzeichen oder ein nicht zitiertes NO kann Ihre gesamte Pipeline zerstören.
FAQ
Unterstützt YAML Kommentare wie TOML?
Ja. Beide verwenden # für einzeilige Kommentare. YAML-Kommentare können die Analyse mehrzeiliger Zeichenketten stören, daher sollten Sie sie im Zweifelsfall auf separate Zeilen setzen.
Was ist das »Norwegen-Problem« in YAML?
In YAML 1.1 werden bloße Zeichenketten wie NO (Norwegens Ländercode) automatisch in den booleschen Wert false umgewandelt. TOML vermeidet dies, indem es Anführungszeichen für alle Zeichenkettenwerte verlangt. Setzen Sie bei der Konvertierung von TOML zu YAML jede potenziell mehrdeutige Zeichenkette in Anführungszeichen.
Welches Format handhabt tiefe Verschachtelung besser?
YAML. TOML erfordert die Wiederholung langer Kopfzeilen wie [table.subtable.subsubtable] für jede Ebene, was weitschweifig wird. YAML stellt dieselbe Hierarchie durch Einrückung dar — kompakter und in der Tiefe besser lesbar.

Schreibe einen Kommentar