TOML-Formatierer

Formatiert und validiert TOML (Tom's Obvious, Minimal Language). Richtet key = value, Tabellen und Arrays sauber aus und zeigt Syntaxfehler mit Zeilennummer an.

Wichtigste TOML-Datentypen

Typ Beispiel Beschreibung
Zeichenkette (Basic) "hello" Wird in doppelte Anführungszeichen gesetzt. Unterstützt Escape-Sequenzen wie \n und \t.
Zeichenkette (Literal) 'C:\path' Wird in einfache Anführungszeichen gesetzt. Es findet keinerlei Escaping statt, praktisch für Pfade mit Backslashes.
Ganzzahl 42 Standardmäßig dezimal; unterstützt auch 0x (hex), 0o (oktal), 0b (binär) sowie Unterstrich-Trenner wie 1_000.
Fließkommazahl 3.14 Exponentialschreibweise (1e10) sowie die Spezialwerte inf/nan sind ebenfalls gültig.
Wahrheitswert true Nur true oder false. Großgeschriebene Formen wie True sind ungültig.
Array [1, 2, 3] Durch Kommas getrennte Werte in eckigen Klammern. Ein abschließendes Komma ist erlaubt.
Tabelle [server] Jedes key = value-Paar nach einer Abschnitts-Überschrift gehört zu dieser Tabelle.
Tabellen-Array [[fruits-basket]] Durch Wiederholung desselben Tabellennamens wird ein Array ausgedrückt (z. B. mehrere Abhängigkeitsdefinitionen).
Datum/Uhrzeit 1979-05-27T07:32:00Z RFC-3339-Format — der einzige zusammengesetzte Wert, der ohne Anführungszeichen geschrieben werden kann.

TOML einrücken und auf Syntax prüfen

TOML ist ein Format für Konfigurationsdateien, und sein Reiz liegt in der Schlichtheit, einfach `key = value` untereinander zu setzen. Dieses Werkzeug bringt das eingefügte TOML in Form und beurteilt zugleich, ob die Syntax trägt; ist etwas beschädigt, wird die betreffende Zeile benannt.

**Worüber man bei TOML als Erstes stolpert, ist dass die Struktur aus Überschriftenzeilen der Form `[Tabelle]` entsteht und nicht aus der Einrückung.** Wer von YAML kommt, greift zur Einrückung, um Ebenen auszudrücken, doch in TOML bedeutet Einrückung schlicht gar nichts: **Die zwischen einer Tabellenüberschrift und der nächsten geschriebenen Schlüssel gehören zu dieser Tabelle.** Es ist mithin die Position der Zeile, die über die Struktur entscheidet. Das zweite Kennzeichen ist, dass Datum und Uhrzeit vollwertige Typen sind, sodass ein Wert wie `2026-09-20T10:00:00Z` ohne Anführungszeichen genau so geschrieben werden darf.

So gehen Sie vor

  1. Fügen Sie das TOML ein Der Inhalt einer `Cargo.toml` oder `pyproject.toml` lässt sich unverändert einsetzen.
  2. Prüfen Sie das Urteil **Einwandfreies wird als gültiges TOML ausgewiesen; scheitert die Syntax, wird die betreffende Zeile genannt.**
  3. Lesen Sie die formatierte Ausgabe Schlüssel und Werte stehen bündig, und die Grenzen zwischen den Tabellen treten deutlich hervor.
  4. Kopieren Sie es zurück Der aufgeräumte Inhalt lässt sich unverändert in die Datei zurückschreiben.

Tipps für die Nutzung

  • Es werden nur einzeilige Inline-Arrays und Inline-Tabellen unterstützt. Erstreckt sich Ihr Array über mehrere Zeilen, fassen Sie es vor dem Einfügen in einer Zeile zusammen.
  • Der Formatierer normalisiert stets genau ein Leerzeichen auf jeder Seite von "=" und vereinheitlicht die Trennzeichen von Arrays/Inline-Tabellen zu ", ", wodurch Unterschiede zwischen verschiedenen Autoren ausgeglichen werden.
  • Kommentare (alles nach #) bleiben erhalten; die einzige Änderung besteht darin, direkt nach "#" ein fehlendes Leerzeichen einzufügen — die Bearbeitung bleibt also minimal.
  • Aufeinanderfolgende Leerzeilen werden zu einer einzigen zusammengefasst, wodurch die Grenzen zwischen Tabellen leichter erkennbar werden.
  • Die gesamte Verarbeitung erfolgt vollständig in Ihrem Browser — nichts, was Sie hier einfügen, wird jemals an einen Server gesendet.

Wofür Sie es nutzen können

Bei der Suche nach einem Fehler in einer Konfigurationsdatei

**Eine falsch platzierte Tabellenüberschrift verschiebt stillschweigend, zu welcher Tabelle ein Schlüssel gehört — eine Art Fehler, die das Auge selten erwischt.**

Beim Lesen der Projekteinstellungen in Rust oder Python

Eine formatierte `Cargo.toml` oder `pyproject.toml` lässt die Grenzen zwischen den Abhängigkeiten weit leichter verfolgen.

Beim Prüfen einer Umstellung aus einem anderen Format

Aus JSON oder YAML übertragene Einstellungen lassen sich auf der Stelle darauf prüfen, ob die Syntax trägt.

Beim Vereinheitlichen des Stils im Team

Vor dem Übernehmen zu formatieren hält verirrten Leerraum aus dem Diff heraus und lässt nur das Wesentliche stehen.

Begriffe zu TOML

Tabelle
Eine in eckigen Klammern geschriebene Überschrift wie `[package]`, die **die Schlüssel von dort bis zur nächsten Überschrift zu einer Gruppe zusammenfasst.**
Tabellenfeld
Die mit doppelten Klammern geschriebene Form `[[dependencies]]`. Jede Wiederholung derselben Überschrift fügt dem Feld ein weiteres Element hinzu.
Inline-Tabelle
Eine in einer Zeile geschriebene Tabelle wie `{ a = 1, b = 2 }`. **Sie eignet sich für kurze Einstellungen, lässt sich aber nicht über Zeilen umbrechen.**
Einfache Zeichenkette
Eine Zeichenkette in doppelten Anführungszeichen, in der Escapes wie `\n` wirken.
Wörtliche Zeichenkette
Eine Zeichenkette in einfachen Anführungszeichen. **In ihr wirkt kein einziges Escape, was sie zur richtigen Wahl für Windows-Pfade und reguläre Ausdrücke macht.**
Datum und Zeit
Ein Typ, den TOML von Haus aus bietet. Ein Datum oder eine Zeit wie `1979-05-27T07:32:00Z` darf ohne Anführungszeichen stehen.

Häufig gestellte Fragen

TOML eignet sich gut für eher flache Dateien mit vielen Schlüssel-Wert-Paaren, die von mehreren Personen bearbeitet werden (z. B. Abhängigkeits-Manifeste), da Einrückungsfehler selten etwas kaputt machen. YAML ist meist besser geeignet, wenn tief verschachtelte Strukturen oder mehrere Dokumente in einer Datei benötigt werden.

Jede [[section]]-Überschrift wird korrekt formatiert, jedoch werden wiederholte gleichnamige Abschnitte nicht wie bei einem vollständigen TOML-zu-JSON-Konverter zu einem einzigen array-artigen Objekt zusammengeführt. Prüfen Sie bei komplexen Tabellen-Array-Strukturen das zeilenweise formatierte Ergebnis visuell.

Das Tool erkennt die RFC-3339-Syntax und gibt den Wert unverändert aus, prüft jedoch nicht die kalendarische Richtigkeit (z. B. wird ein „30. Februar" nicht erkannt). Wenn eine strikte Datumsprüfung wichtig ist, prüfen Sie dies separat.

"""...""" und '''...''' werden derzeit nicht unterstützt, und die betreffende Zeile wird als Fehler gemeldet. Wandeln Sie längeren Text vor der Formatierung in eine einzeilige, escapte Zeichenkette um.

Nein. Die gesamte Formatierung läuft vollständig in Ihrem Browser über JavaScript ab — nichts wird an einen Server gesendet oder dort gespeichert, sodass das Tool auch bei Konfigurationsdateien mit Zugangsdaten bedenkenlos genutzt werden kann.
Tool-kun

Übrigens – Warum TOML zur gemeinsamen Sprache der Konfigurationsdateien wurde

TOML wurde 2013 von GitHub-Mitbegründer Tom Preston-Werner entwickelt, und der ausgeschriebene Name „Tom's Obvious, Minimal Language" bringt das Designziel direkt auf den Punkt: ein Format, das für Maschinen so leicht zu parsen ist wie JSON, sich für Menschen aber völlig eindeutig lesen und schreiben lässt.

Der entscheidende Durchbruch kam, als Cargo, der Paketmanager von Rust, Cargo.toml als Manifestformat übernahm. Später führte PEP 518 pyproject.toml als Python-Packaging-Standard ein und vereinheitlichte damit das zuvor uneinheitliche Nebeneinander von setup.py, setup.cfg und requirements.txt.

Der größte Unterschied zu YAML besteht darin, dass TOML der Einrückung keinerlei Bedeutung beimisst. Bei YAML kann ein kleiner Einrückungsfehler die Datenstruktur unbemerkt verändern oder einen Syntaxfehler auslösen; TOML drückt Hierarchien dagegen ausschließlich über [section]-Überschriften und key = value-Paare aus, wodurch Copy-Paste-Fehler deutlich unwahrscheinlicher werden.

Dafür büßt TOML einen Teil der Ausdruckskraft von YAML ein: Es fehlen Anker/Aliase zur Wiederverwendung von Werten, und tief verschachtelte Strukturen werden umständlicher — viele Teams entscheiden sich daher je nach Datenform zwischen TOML, YAML und JSON.