TOML naar YAML omzetten

Hier zet je TOML naar YAML om, gratis en zonder account: sleep het bestand hierboven erin en binnen een paar seconden staat het resultaat klaar om te downloaden. De omzetting gebeurt binnen je eigen browser, dus het bestand wordt nooit geüpload. Het werkt hetzelfde op Windows, macOS en Linux als op iPhone en Android, en het blijft werken als je de verbinding verbreekt.

  • Waar het draait In je browser. Het bestand wordt nooit geüpload.
  • Zonder verlies Er gaat niets weg. YAML bewaart precies wat TOML bewaarde.
  • Maximale grootte Tot 100 MB per bestand, gratis en zonder account.

Tot 100 bestanden tegelijk. Verschillende formaten door elkaar is prima.

Manifestwaarden overbrengen naar een pijplijn die YAML leest

De feiten over een project staan steeds vaker in een TOML-bestand — de pakketnaam, de ondersteunde Python- of Rust-versies, de featurevlaggen, de dependencylijst. Wat die feiten verbruikt is, met dezelfde consistentie, YAML: een GitHub Actions-workflow, een Helm-waardenbestand, een Ansible-variabelenset. Niemand koos deze splitsing bewust.

De taak is dus meestal geen migratie maar een overschrijving: krijg de waarden accuraat in YAML-syntax, en verplaats dan de delen die je nodig hebt naar een bestand met een eigen vorm. Dat onderscheid is het onthouden waard, want het verandert wat "juiste uitvoer" betekent.

TOML-datums komen zonder aanhalingstekens aan, en de loader beslist wat ze zijn

TOML is ongewoon onder configuratieformaten door echte datum- en datumtijdtypen te hebben, geschreven zonder aanhalingstekens: launch = 2026-03-01T08:00:00Z. Ze komen op dezelfde manier in de YAML terecht — launch: 2026-03-01T08:00:00.000Z — zonder aanhalingstekens eromheen, wat YAML reserveert voor een tijdstempel.

Wat dat oplevert hangt volledig af van de loader. Lees de uitvoer terug met dezelfde bibliotheek die haar schreef, die de YAML 1.2 core-schema volgt, en elke waarde komt terug als string: 1.2 heeft geen tijdstempel-resolver. Lees het met PyYAML of Ruby’s Psych, beide nog op YAML 1.1, en ze worden datumtijden — maar een kaal lokaal tijdstip zoals 08:00:00.000 komt terug als het getal 28800.

Waarom YAML in plaats van XML voor een manifest vol datums

Beide doelen schrijven dezelfde tekens voor een datum, dus het argument gaat over waar het type woont. In de YAML is de waarde zonder aanhalingstekens en zelfbeschrijvend genoeg dat een 1.1-loader haar zal typeren zonder dat het gezegd wordt. In XML is dezelfde datum elementtekst, en wat ze betekent komt van een schema dat iemand anders onderhoudt.

Dat werkt beide kanten op. Kies YAML als de bestemming een workflow of waardenbestand is dat de waarde met zijn eigen loader teruglezen zal en jij weet welke loader dat is; kies XML als iets stroomafwaarts het document gaat valideren en je liever dan van het probleem hoort.

Hoe TOML-tabellen eruitzien zodra ze YAML zijn

Een [package]-kop wordt een top-level sleutel met zijn waarden twee spaties eronder ingesprongen. Een [tool.black]-kop wordt tool: met daarin black: met daarin de instellingen, want een gestippelde tabelkop is nesting en geen naam met puntjes erin.

De volgorde is de volgorde waarin de parser ze zag. Wat wel verschuift is alles uitgedrukt met gestippelde sleutels verspreid door het bestand — die worden verzameld onder één ouder in de YAML, wat leesbaarder is en niet hoe de brontekst eruitzag.

TOML declareert zijn typen en YAML lost ze op

Dit is de echte overgang en makkelijk te missen omdat de uitvoer er zo op elkaar lijkt. In TOML is enabled = true een boolean omdat de syntax het zegt, en version = "1.0" is een string omdat het tussen aanhalingstekens staat. In YAML is een scalair zonder aanhalingstekens wat de parser besluit dat het is.

De schrijver quote defensief waar het telt: een reeks cijfers komt gequote uit, dus version: "1.0" blijft version: "1.0" en niet het getal 1. Wat niet gequote wordt zijn NO, yes, on en off, want onder YAML 1.2 zijn dat gewone strings — laad ze met PyYAML of Psych en ze worden booleans.

Arrays van tabellen worden YAML-lijsten van objecten

Een herhaald [[bin]]- of [[tool.poetry.packages]]-blok is TOML’s lijst-van-records-vorm, en het zet om naar de vorm die iedereen met de hand schrijft in YAML: een streepje per item, sleutels eronder ingesprongen. Gewone arrays gedragen zich hetzelfde.

Dat blokformaat is wat de meeste YAML-tools documenteren, dus items plakken meestal zonder herformattering in een workflow of waardenbestand. Wil de bestemming echt flow-stijl — een matrixregel geschreven als [3.11, 3.12, 3.13] — dan is dat een kleine handmatige bewerking.

Meerregelige TOML-strings komen als YAML-blokscalairen aan

Een TOML-string tussen drievoudige aanhalingstekens met een script of een licentiefragment behoudt zijn regelstructuur. De schrijver produceert een blokscalair — de sleutel, dan een verticale streep, dan de echte regels eronder ingesprongen — in plaats van één regel met ontsnappingstekens.

Lange enkelregelige waarden worden anders behandeld: een string zonder regeleinden maar met veel lengte wordt gevouwen op vervolgregels rond de tachtig kolommen, en YAML leest die vouwen terug als spaties, dus de waarde blijft ongewijzigd.

Beide formaten kennen commentaar en deze omzetting behoudt geen enkel

TOML en YAML ondersteunen allebei #-commentaar, en een manifest zit er vaak vol mee: waarom een dependency vastgepind is, welke van twee instellingen bewust is. Niets daarvan overleeft, want de lezer negeert commentaar bij het inlezen en de schrijver heeft er geen om te plaatsen.

Voor een fragment dat je zo gaat plakken is dat onopvallend. Voor iets dat je bewaart, is het de reden dat de TOML de bron van waarheid blijft en de YAML gegenereerd wordt: twee bestanden met dezelfde waarden en maar één met de redenering.

De YAML teruglezen voordat je erop vertrouwt

De goedkoopste controle is een rondje. Laad de uitvoer met wat haar uiteindelijk zal laden en vergelijk een handvol waarden met het manifest — de versie, een datum, alles dat op een getal leek en eigenlijk een string moet zijn.

Doe het eenmaal en het is sneller dan een pijplijn debuggen die draaide met version: 1 waar je "1.0" bedoelde.

Waar het TOML-bestand wordt omgezet

In dit browsertabblad, door gewone JavaScript. Niets wordt geüpload, er is geen engine op te halen, geen account en geen daglimiet — het netwerktabblad openen en iets omzetten bevestigt het.

Manifesten zijn klein genoeg dat de grens van 100 MB theoretisch is, maar ze zijn niet altijd openbaar. De dependencylijst van een privérepository noemt interne pakketten en interne registries, en een [tool]-blok verraadt soms meer over een organisatie dan bedoeld.

Zo zet je TOML naar YAML om

  1. Sleep je TOML-bestand op deze pagina, of klik om er een te kiezen.
  2. Kies YAML als doel. De omzetting gebeurt in je browser en het bestand wordt niet geüpload.
  3. Download het klare YAML-bestand.

TOML of YAML: wat er verandert

TOML vergeleken met YAML
TOMLYAML
Volledige naamTom's Obvious Minimal LanguageYAML Ain't Markup Language
Bestandsextensie.toml.yaml, .yml
Mediatypeapplication/tomlapplication/yaml
Voor het eerst gepubliceerd20132001
SpecificatieTOML 1.0YAML 1.2
LicentieOpen standaardOpen standaard
Stand van zakenActueelActueel
Opent in een browserGeen browserGeen browser
In plaats daarvan overwogenJSON, INIJSON

Wat behouden blijft

Er gaat niets verloren. TOML en YAML bewaren hun inhoud verliesvrij: de omzetting wisselt de verpakking, niet de kwaliteit, en je kunt haar herhalen zonder dat schade zich opstapelt.

Opmerkingen gaan mee. TOML en YAML hebben allebei een syntaxis voor commentaar, dus notities voor wie het bestand daarna beheert verdwijnen niet stilletjes.

Het resultaat openen

Visual Studio Code leest zowel TOML als YAML, dus je kunt het resultaat naast het origineel leggen zonder een tweede programma.

Waarvoor elk formaat bedoeld is

TOML verscheen in 2013. Het is vastgelegd in TOML 1.0, en dat is de moeite waard als het bestand het gereedschap moet overleven dat het schreef.

YAML stamt uit 2001, vastgelegd in YAML 1.2. Visual Studio Code en yq lezen het formaat.

Van TOML naar YAML: veelgestelde vragen

Wordt mijn TOML-bestand ergens heen geüpload?

Nee. Deze omzetting gebeurt volledig in je browser, dus het bestand verlaat je apparaat niet. Je kunt het zelf nagaan: open het netwerktabblad van de ontwikkelaarshulpmiddelen en zet iets om. Je ziet de pagina zelf en de verzoeken voor statistiek en advertenties waarmee deze dienst betaald wordt, en geen enkel verzoek dat je bestand meeneemt.

Is TOML naar YAML omzetten gratis?

Ja. Geen account, geen watermerk en geen dagtegoed dat opraakt: het draait op je eigen machine, dus je mag zo vaak terugkomen als je wilt. De browser verwerkt bestanden tot 100 MB, 100 tegelijk.

Gaat er kwaliteit verloren bij het omzetten van TOML naar YAML?

Nee. YAML bewaart dezelfde inhoud zonder iets weg te gooien: het resultaat is in kwaliteit identiek aan het origineel.

Is TOML naar YAML verliesvrij?

Er gaat niets verloren. TOML en YAML bewaren hun inhoud verliesvrij: de omzetting wisselt de verpakking, niet de kwaliteit, en je kunt haar herhalen zonder dat schade zich opstapelt.

Meer over deze formaten