Content Tools

YAML Formatter

Snel starten met

De verwerking gebeurt lokaal in je browser. Invoer wordt niet opgeslagen of naar de server gestuurd.

YAML is onvergeeflijk waar het inspringing betreft, en dat merk je meestal pas als een pipeline faalt of een container niet start. Deze tool controleert de drie fouten die in de praktijk het vaakst voorkomen. Ten eerste tabs: YAML staat uitsluitend spaties toe voor inspringing, en een tab die je editor onzichtbaar heeft ingevoegd maakt het bestand ongeldig — je krijgt het regelnummer te zien. Ten tweede dubbele sleutels binnen hetzelfde blok: geldig volgens sommige parsers, die dan stilzwijgend de laatste waarde nemen, wat een van de vervelendste soorten bugs oplevert. Ten derde regels die niet als sleutel-waardepaar, lijstitem of commentaar te lezen zijn. Wat je terugkrijgt is je YAML met genormaliseerde inspringing. Dit is een gerichte controle en geen volledige YAML-parser: geavanceerde constructies als ankers, verwijzingen en meerdere documenten in één bestand worden niet uitgeplozen. Alles gebeurt lokaal in je browser — je configuratie gaat niet naar onze server, wordt niet gelogd en niet opgeslagen, dus een bestand met echte hostnamen kun je hier zonder bezwaar in plakken. Gratis en onbeperkt te gebruiken, ook zakelijk — geen account, geen licentie, geen limiet.

Waar je dit voor gebruikt

  • service: naam: api poort: 8080
  • Tab in de inspringing → melding met het regelnummer
  • Dezelfde sleutel twee keer in één blok → melding met de sleutelnaam

Wat anderen van deze tool vinden

Nog geen beoordelingen voor deze tool. Die van jou is de eerste.

Veelgestelde vragen

Waarom mag ik geen tabs gebruiken in YAML?

De YAML-specificatie verbiedt tabs voor inspringing, en wel om een goede reden: de breedte van een tab is niet gedefinieerd. De ene editor toont hem als vier posities, de andere als acht, en een parser zou dus niet betrouwbaar kunnen vaststellen op welk niveau een regel hoort. Het lastige is dat het probleem onzichtbaar is — de regel ziet er correct uitgelijnd uit. Zet in je editor "toon witruimte" aan, of laat hem tabs automatisch omzetten naar spaties in yml- en yaml-bestanden.

Waarom waarschuwt de tool voor dubbele sleutels?

Omdat het gedrag ervan onvoorspelbaar is en het gevolg stil. De YAML-specificatie noemt een dubbele sleutel binnen hetzelfde blok ongeldig, maar veel parsers accepteren hem toch en nemen dan de laatste waarde. Je bestand werkt dus, alleen niet zoals je denkt: de eerste instelling die je bovenaan zorgvuldig hebt gezet wordt verderop overschreven. Dit gebeurt vooral in lange bestanden en na een merge-conflict dat verkeerd is opgelost.

Is dit een volledige YAML-parser?

Nee, en dat is bewust. De tool controleert gericht op de fouten die in de praktijk de meeste tijd kosten: tabs, dubbele sleutels en regels die geen geldige vorm hebben. Geavanceerde YAML-constructies — ankers en verwijzingen, meerdere documenten gescheiden door drie streepjes, blokken met behouden regelovergangen, expliciete typeaanduidingen — worden niet volledig uitgeplozen. Voor de meeste configuratiebestanden is dat ruim voldoende. Gebruik je die constructies wel, controleer dan met de parser van de tool waar het bestand uiteindelijk heen gaat.

Waarom is mijn inspringing veranderd in de uitvoer?

De uitvoer normaliseert de inspringing zodat elk niveau consistent is. Zat er in je bron een mengeling van twee en vier spaties, of een tab, dan komt daar één consistente stijl voor terug. De structuur blijft gelijk; alleen de witruimte verandert. Merk je dat de structuur wél verandert, dan was de oorspronkelijke inspringing dubbelzinnig — en dan las de parser van je pipeline hem waarschijnlijk ook al anders dan jij bedoelde.