TOML-formatterer og validator

Lim inn TOML, formater med kanonisk TOML 1.0-oppsett eller valider syntaksen. Ingen opplasting.

  1. Lim TOML-en din i tekstområdet til venstre.
  2. Klikk Formater for å gå tur-retur gjennom @iarna/toml og produsere kanonisk oppsett.
  3. Klikk Valider for å sjekke syntaks uten å endre inndata.
  4. Feil peker på den feilende linjen og kolonnen.
Hva gjør det?

Parser TOML-en din med @iarna/toml i TOML 1.0-modus og sender den ut igjen med kanonisk oppsett — nøkler før under-tabeller, konsistent sitering, heltallsunderstreker fjernet. Valider-knappen sjekker syntaks mot spesifikasjonen uten å endre inndata. Kommentarer fjernes under tur-retur (TOML-formatterere kan generelt ikke bevare dem gjennom en parse-and-dump-syklus).

Eksempel

Rotete TOML-inndata:

[server]
host="localhost"
port=8080

name="myapp"

Formatert utdata:

name = "myapp"

[server]
host = "localhost"
port = 8080

Vanlige TOML-feil og hvordan rette dem

TOML 1.0 har strengere regler enn YAML eller JSON. Mønstrene under dekker de fleste parser-feilene.

  • Strenger uten anførselstegn. `name = Ada` er ugyldig. Bruk doble anførselstegn: `name = "Ada"`.
  • Redefinere en tabell. Å definere `[a]` to ganger er en feil. Hver tabelloverskrift kan vises maks én gang. Slå sammen nøkler i én `[a]`-blokk.
  • Toppnivå-nøkler etter en tabell. Når du har skrevet `[section]`, tilhører alle påfølgende nøkler den seksjonen. Nøkler må komme før sin første tabelloverskrift. Formattereren omorganiserer dette for deg, men den rå inndataen må allerede være gyldig.
  • Datotid uten tidssone. `d = 2026-04-26T12:00:00` (ingen Z eller offset) er en «lokal datotid». Den parser, men JSON-stil-konsumenter har kanskje ikke en måte å representere lokalitet på. Bruk `2026-04-26T12:00:00Z` for UTC.
  • Inline-tabell-utvidelse. Inline-tabeller `point = {x=1, y=2}` er lukket og selv-inneholdende. Du kan ikke senere skrive `point.z = 3`. Bruk standard `[point]`-blokksyntaks for å utvide.
  • Forvirring med trippel-anførselstegn-escape. `"""..."""` (basis multi-linje) behandler escapes; `\'\'\'...\'\'\'` (literal multi-linje) gjør ikke. Å blande de to er den vanligste multi-linje-streng-feilen.
Ofte stilte spørsmål

Endrer Formater dataene mine?

Bare oppsettet — nøkler omorganiseres for å plassere primitiver før under-tabeller (en TOML-regel), avstand normaliseres, heltallsunderstreker fjernes (TOML-semantikk). Verdiene i seg selv er uendret.

Bevares TOML-kommentarer?

Nei. @iarna/toml fjerner kommentarer under parse-and-dump tur-retur. Trenger du formatering som bevarer kommentarer, måtte du brukt et annet bibliotek som beholder kildeposisjonsinformasjon.

Validerer dette mot TOML 1.0?

Ja. @iarna/toml følger TOML 1.0 — inkludert å tillate arrays med blandede typer, punktnøkler og reviderte strengregler. Inndata som er avhengig av TOML 0.5-eksklusiv oppførsel (homogene arrays påkrevd) vil fortsatt parses her, men kan brytes på strengere 0.5-parsere.

Hvor stor TOML-fil kan det håndtere?

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

Lastes TOML-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.

Hvorfor omorganiserer formattereren nøklene mine?

TOML 1.0 krever at toppnivå-nøkler (primitiver) vises før noen tabelloverskrift innenfor samme scope. Formattereren håndhever dette ved å sortere primitiver foran under-tabeller. Hvis den opprinnelige inndataen din hadde annen rekkefølge, normaliserer formaterings-trinnet det.