TOML-validerare
Validera TOML-filer, till exempel Cargo.toml, pyproject.toml eller inställningar för Hugo och Netlify, innan ett bygge misslyckas på grund av dem. Valideraren parsar indata enligt TOML-specifikationen och rapporterar det första felet med rad, kolumn och parserns förklaring, inklusive dubbla nycklar, omdefinierade tabeller och omöjliga datum. Giltiga filer visar antalet tabeller och nycklar samt nycklarna på toppnivån, så att du snabbt kan bekräfta strukturen.
Vanliga frågor
Vad kontrollerar TOML-valideraren?
Den parsar nycklar, strängar, tal, booleska värden, datum och tider, arrayer, inline-tabeller, tabeller och arrayer av tabeller precis som TOML-specifikationen definierar dem. Varje avvikelse, till exempel ett saknat värde, en ociterad sträng eller en felaktig escape-sekvens, rapporteras som ett fel. Giltiga filer får en kort sammanfattning av sin struktur.
Vilken information innehåller ett fel?
Varje fel visar raden och kolumnen där parsningen avbröts och en informationsrad från parsern, till exempel om ett ogiltigt datum eller ett försök att omdefiniera en redan definierad tabell eller ett värde. Rader och kolumner börjar på 1. Endast det första felet visas, eftersom senare fel ofta beror på det.
Varför rapporteras en nyckel eller tabell som omdefinierad?
TOML tillåter inte samma nyckel två gånger i en tabell, och en tabellrubrik som [server] får bara förekomma en gång. Att definiera en punkterad nyckel som server.port efter en [server]-tabell som redan har angett port räknas också som en omdefinition. Slå ihop posterna på ett ställe för att åtgärda det.
Hur räknas tabeller och nycklar?
Tabeller räknar varje tabell under roten, inklusive inline-tabeller och varje post i en array av tabeller. Nycklar räknar varje nyckel som innehåller ett annat värde än en tabell eller en array av tabeller, så en lista med strängar räknas som en nyckel. Nycklar på toppnivån listar namnen vid roten, upp till 50 stycken.
Kontrolleras datum och tider?
Ja. Datum och tider med tidszonsförskjutning, lokala datum och tider samt lokala datum och lokala tider valideras, inklusive omöjliga värden som månad 13 eller timme 25. Ett datum i ett annat format, till exempel 05/27/1979, är inte ett TOML-datum och måste citeras som en sträng.
Vilka strängar och escape-sekvenser är tillåtna?
Grundläggande strängar inom dubbla citattecken stöder escape-sekvenser som \n, \t, \" och \uXXXX, medan bokstavliga strängar inom enkla citattecken återger varje tecken som det skrivits. Båda har flerradiga former med tre citattecken. En okänd escape-sekvens eller en oavslutad sträng rapporteras med sin position.
Godtas mycket stora heltal?
Ja. Heltal upp till 64-bitarsgränsen i TOML-specifikationen, till exempel 9223372036854775807, godtas. Heltal utanför det intervallet, inledande nollor och understreck som inte står mellan siffror är fel.
Orsakar en byteordningsmarkör eller radslut med Windows problem?
Nej. En UTF-8-byteordningsmarkör i början ignoreras, och både LF- och CRLF-radslut godtas. Kontrolltecken i strängar som inte är escaperade rapporteras som fel.
Kontrollerar den betydelsen av nycklar, som Cargo eller Poetry skulle göra?
Nej, valideraren kontrollerar endast syntax och struktur för TOML. En fil kan vara giltig TOML och ändå innehålla en nyckel som Cargo eller en byggbackend för Python inte förstår. Använd verktyget för att utesluta syntaxproblem innan du granskar verktygsspecifika inställningar.
Hur stor kan indata vara, och kan jag konvertera den?
Indata kan vara upp till 5 MiB och nästlade arrayer och inline-tabeller upp till 64 nivåer djupa. Om du vill konvertera giltig TOML till JSON, YAML eller ett annat format kan du använda Data Format Converter.