YAML-formaterare

Formateringen sker i den här webbläsaren. Din YAML laddas inte upp.

Klistra in YAML med upp till 1 000 000 tecken och upp till 100 dokument. Formateringen sker i den här webbläsaren.

YAML är förlåtande med syntax och obarmhärtigt med indrag. Ett enda felplacerat mellanslag kan i tysthet förvandla en nyckel till ett listobjekt, och blandade indrag gör kodgranskningar plågsamma. Den här formateraren tolkar din inmatning med js-yaml-motorn (YAML 1.2 core schema) direkt i webbläsaren och skriver sedan ut den igen med de indrag, den samlingsstil, de citattecken, den nyckelordning och den radbredd du väljer, så att konfigfiler ger rena diffar i versionshanteringen och förblir läsbara för alla som bidrar.

Så formaterar du YAML

  1. 1

    Klistra in YAML

    Upp till 1 000 000 tecken och upp till 100 dokument i en och samma ström. Inget laddas upp: tolkningen körs i din webbläsare.

  2. 2

    Välj alternativ

    Indragsbredd, block- eller flödesstil, citattecken, nyckelsortering och radbredd.

  3. 3

    Formatera

    Verktyget bygger om varje dokument med kanoniska avstånd och den stil du valt.

  4. 4

    Kopiera och committa

    Utdata är strukturellt identisk YAML, redo att klistras tillbaka i din konfig.

Före och efter

Rörig inmatning:

server:
  port:   8080
  hosts: ["api.example.com",  "api2.example.com"]
  timeout:  30
  debug: true

Formaterat (2 mellanslag, blockstil):

server:
  port: 8080
  hosts:
    - api.example.com
    - api2.example.com
  timeout: 30
  debug: true

Formateringsalternativ

Alternativ Värden Standard
Indragsbredd 2, 4 2
Samlingsstil Block, flöde Block
Citattecken Minimala, dubbla, enkla Minimala
Sortera nycklar Ursprunglig, alfabetisk Ursprunglig
Radbredd 80, 120, obegränsad 120

Regler för citattecken

Minimala citattecken är oftast vad du vill ha: strängar lämnas utan citattecken om det inte vore osäkert. Formateraren lägger till citattecken automatiskt för:

  • Äldre booleaner som strängar: yes, no, on, off, y, n. YAML 1.2 läser dem redan som strängar, men många parsrar följer fortfarande YAML 1.1, där ett ociterat no blir false. Formateraren citerar dem alltid i utdata, så att den ökända Norgebuggen (NO läst som false i en landslista) inte kan drabba den som läser in din fil.
  • Tal som strängar: '007', '3.14'. Utan citattecken skulle de tolkas som heltal eller flyttal.
  • Strängar med tecken som :, #, [, { eller inledande blanksteg, där naken utdata skulle ändra strukturen.

Städning vid varje körning

  • Avslutande blanksteg. Tas bort.
  • Blandade eller ojämna indrag. Normaliseras till den indragsbredd du valt.
  • Tomma rader inuti samlingar. Tas bort.
  • Tabbar i indrag. YAML förbjuder dem; parsern avvisar inmatningen med ett tydligt fel som pekar ut raden, så att du kan rätta den i stället för att skicka en fil som andra parsrar vägrar läsa.

Kommentarer, ankare och merge-nycklar

Formateringen normaliserar dokumentmodellen, vilket har begränsningar värda att känna till innan du committar:

  • Kommentarer tas bort. Parsern löser upp dokumentet till data, så #-kommentarer överlever inte formateringen. Spara en kopia om dina kommentarer är viktiga.
  • Ankare och alias löses upp. Noder som delas via alias förblir delade, men skrivs ut igen med genererade namn som &ref_0; de ursprungliga ankarnamnen behålls inte.
  • Merge-nycklar (<<:) löses upp till vanliga mappningar med de sammanslagna värdena på plats.

Strömmar med flera dokument

Strömmar med flera dokument stöds: varje dokument formateras separat och sätts ihop igen med avgränsaren ---, upp till 100 dokument per körning.

Vanliga frågor

Struktur och värden förblir identiska: bara återgivningen ändras (indrag, citattecken, flöde eller block, nyckelordning om du slår på sortering). Två saker bevaras medvetet inte: kommentarer tas bort och ankarnamn genereras om.

När en naken sträng skulle tolkas som något annat krävs citattecken för säkerhets skull. Vanliga fall: nycklar eller värden som bara består av siffror, strängar som innehåller : eller #, och äldre booleaner som yes och no som YAML 1.1-parsrar skulle läsa som true/false.

Nej. Stilvalet gäller hela dokumentet: block skriver ut varje samling på egna rader, flöde återger samlingar på samma rad. Formatera två gånger med olika alternativ om du behöver jämföra.

Nej. Tolkning och formatering körs i din webbläsare med den medföljande js-yaml-motorn. Din YAML skickas inte via servern, sparas inte och läggs aldrig till i sidans adress; den lever bara i den här webbläsarsessionen så att flerstegsvyn kan visa ditt resultat.

Relaterade verktyg