TOML formatter a validátor online

Zkontrolujte a naformátujte TOML konfiguraci, převeďte ji na JSON a zpět. Chybu ukáže i s řádkem a výřezem zdroje. Hodí se na pyproject.toml i Cargo.toml.

Režim
Odsazení JSON

Vstupní TOML

Výsledek

Validní TOML
Sem se vypíše zkontrolovaný a zformátovaný výsledek.
0tabulek·0klíčů·0úrovní zanoření·0řádků·0znaků

Jak TOML formátovač použít

  1. Vložte obsah konfiguračního souboru do levého pole. Kontrola proběhne sama.
  2. Vyberte, co chcete udělat: naformátovat TOML, převést ho na JSON, nebo z JSON vyrobit TOML.
  3. Když je v souboru chyba, přečtěte si hlášku. Ukáže řádek, sloupec i výřez zdroje se šipkou na chybném místě.
  4. Volitelně zapněte řazení klíčů podle abecedy, což se hodí u dlouhých seznamů závislostí.
  5. Výsledek zkopírujte tlačítkem. Pod ním vidíte počet tabulek, klíčů i hloubku zanoření.

Co je soubor TOML

TOML je formát pro konfigurační soubory. Zkratka znamená Tom’s Obvious, Minimal Language a autorem je Tom Preston-Werner, spoluzakladatel GitHubu. Verze 1.0.0 vyšla v lednu 2021 a od té doby je specifikace stabilní.

Vypadá jako známý formát INI, ale na rozdíl od něj má pořádně popsaná pravidla. Rozlišuje čísla, řetězce, kalendářní data i pole a umí zanořené tabulky. Proto ho jako výchozí formát nastavení převzal Python i Rust.

Kde na TOML narazíte: pyproject.toml a Cargo.toml

V Pythonu je to pyproject.toml. Popisuje metadata balíčku, závislosti a nástroj, kterým se projekt sestavuje. Zavedl ho PEP 518 a dnes do něj svoje nastavení ukládají i Ruff, Black nebo Poetry, takže nahradil dřívější změť souborů setup.py a setup.cfg.

V Rustu má stejnou roli Cargo.toml, kde jsou závislosti balíčku a nastavení sestavení. Potkáte ho ale i u hostingu v souboru netlify.toml, v konfiguraci generátoru Hugo nebo v nastavení nástroje uv. Chyba v takovém souboru zastaví build a hláška, kterou u toho dostanete, bývá strohá.

TOML versus YAML: v čem se liší

Zásadní rozdíl je v tom, jak se pozná struktura. YAML ji odvozuje z odsazení, takže jedna mezera navíc změní význam souboru a chybu často nepoznáte na první pohled. TOML zapisuje strukturu výslovně, hlavičkou tabulky v hranatých závorkách, a bílé znaky na význam nemají vliv.

Daň za to je ukecanost u hluboko zanořených dat. Tam je YAML čitelnější a pro popis složitých struktur, jako jsou definice v Kubernetes, se hodí líp. TOML míří na ploché nastavení projektu, kde je jednoznačnost cennější než úspora řádků. Když potřebujete pracovat s jinými formáty, máme formátovač JSON, validátor YAML i formátovač XML.

Časté otázky

Jak naformátovat soubor TOML?

Vložte obsah souboru do pole, nechte režim na formátování TOML a zkopírujte výsledek zpátky. Nástroj sjednotí zápis dvojic klíč a hodnota, uspořádá tabulky a volitelně seřadí klíče podle abecedy.

Zachovají se v souboru komentáře?

Ne. Soubor se rozparsuje na data a z nich se vypíše znovu, a komentáře nejsou součástí dat. Nástroj na to upozorní a napíše, kolik komentářů v původním textu bylo. Když je potřebujete zachovat, formátujte soubor v editoru přímo.

Proč použít TOML místo JSON?

JSON neumí komentáře a je nepohodlný na ruční psaní, protože hlídá čárky a uvozovky. Pro konfiguraci, kterou člověk otvírá a upravuje, je TOML čitelnější. JSON zase vyhrává jako formát pro přenos dat mezi programy, kde ho zpracuje kdeco.

Čím soubor TOML otevřu?

Je to obyčejný textový soubor v kódování UTF-8, takže ho otevře i Poznámkový blok. Vývojová prostředí jako VS Code nebo PhpStorm k němu mají zvýrazňování syntaxe a napovídání. Na rychlou kontrolu bez instalace stačí vložit obsah sem.

Odesílá se soubor na server?

Ne. Parsování i formátování běží ve vašem prohlížeči, takže obsah konfigurace nikam neputuje. To je podstatné, protože v konfiguračních souborech se občas objeví i přístupové údaje.