YAML-formatterer og validator

Lim inn YAML, formater med 2-mellomroms innrykk, eller valider syntaksen. YAML 1.2 streng modus. Ingen opplasting.

  1. Lim YAML-en din i tekstområdet til venstre.
  2. Klikk Formater for å gå tur-retur gjennom parseren og sende ut kanonisk YAML.
  3. Klikk Valider for å sjekke syntaks uten å endre inndata.
  4. Feil peker på den feilende linjen og kolonnen.
Hva gjør det?

Parser YAML-en din med js-yaml i YAML 1.2 streng modus og sender den ut igjen med 2-mellomroms innrykk, 100-kolonners linjebredde og konsistent sitering. Valider-knappen sjekker syntaks og rapporterer den første feilen uten å endre inndata. Utdata er semantisk ekvivalent med inndata — verdier, typer og struktur bevares.

Eksempel

Rotete YAML-inndata:

name:    Ada
tags: [math,logic]
active:true

Formatert utdata:

name: Ada
tags:
  - math
  - logic
active: true

Vanlige YAML-feil og hvordan rette dem

YAML 1.2 i streng modus er ubarmhjertig med mellomrom. Mønstrene under dekker de fleste parser-feilene.

  • Tabulatorer i stedet for mellomrom. YAML 1.2 forbyr tabulatorer for innrykk. Erstatt hver tab med mellomrom.
  • Inkonsekvente innrykksnivåer. Et barn med 2 mellomroms innrykk under et søsken med 4 mellomrom vil feile. Velg én bredde og bruk den konsekvent.
  • Boolean-feller. I YAML 1.1 (ikke modusen her) ble `yes`, `no`, `on`, `off` parset som booleanske. js-yaml bruker 1.2, men virkelige inndata som er avhengig av den gamle oppførselen overrasker brukere. Siter tvetydige verdier: `country: "NO"`.
  • Spesialtegn uten anførselstegn. Verdier som starter med `:`, `?`, `&`, `*`, `!`, `|`, `>`, `\'`, `"`, `%`, `@`, `` ` `` trenger anførselstegn.
  • Ulukket anførselstegn. Et manglende avsluttende anførselstegn får parseren til å absorbere resten av filen som del av strengen. Det rapporterte linjenummeret kan være langt fra den faktiske feilen.
  • Anchor / alias mismatch. En alias `*name` som refererer til en udeklarert anchor `&name` gir en feil. Verifiser at hver alias har en matchende anchor erklært tidligere.
Ofte stilte spørsmål

Endrer Formater dataene mine?

Nei — bare mellomrom, sitering og rekkefølgen til representasjonsdetaljer. Den parsede verdigrafen er identisk. Formatert YAML re-parses til samme in-memory-struktur som originalen.

Bevares kommentarer ved formatering?

Nei. js-yaml beholder ikke kommentarer gjennom en parse-and-dump tur-retur. Trenger du kommentarbevarende YAML-formatering, bruk et annet bibliotek (yaml.js med opsjoner, eller et CLI-verktøy som `prettier --parser yaml`).

Kan jeg tilpasse innrykket?

Nåværende bygg bruker 2-mellomroms innrykk. For å tilpasse, kjør js-yaml på kommandolinjen — samme bibliotek — og pass `{ indent: 4 }` eller hva du trenger.

Hvor stor YAML-fil kan det håndtere?

Opp til omtrent 10 MB før tekstområdet sakker. De fleste konfig-filer er godt under 1 MB.

Lastes YAML-en min opp?

Nei. Alt kjører i nettleseren din — inndata blir parset og re-serialisert av JavaScript på denne siden og sendes aldri til noen server.

Linter dette stilproblemer som duplikatnøkler?

js-yaml i standardkonfigurasjon avviser duplikatnøkler (et YAML 1.2-strengt krav). Andre stilproblemer som inkonsekvent sitering eller anchor-navngiving flagges ikke — det krever en dedikert linter som yamllint.