Formateur et validateur TOML
Collez du TOML, formatez avec une disposition canonique TOML 1.0, ou validez la syntaxe. Sans upload.
- Collez votre TOML dans la zone de texte de gauche.
- Cliquez sur Formater pour faire un aller-retour par @iarna/toml et produire la disposition canonique.
- Cliquez sur Valider pour vérifier la syntaxe sans modifier l'entrée.
- Les erreurs indiquent la ligne et la colonne fautives.
Que fait-il ?
Parse votre TOML avec @iarna/toml en mode TOML 1.0 et le ré-émet avec une disposition canonique — clés avant les sous-tables, guillemetage cohérent, soulignements d'entiers retirés. Le bouton Valider vérifie la syntaxe par rapport à la spec sans changer l'entrée. Les commentaires sont supprimés pendant l'aller-retour (les formateurs TOML ne peuvent généralement pas les préserver à travers un cycle parse-and-dump).
Exemple
Entrée TOML désordonnée :
[server]
host="localhost"
port=8080
name="myapp" Sortie formatée :
name = "myapp"
[server]
host = "localhost"
port = 8080 Erreurs TOML courantes et comment les corriger
TOML 1.0 a des règles plus strictes que YAML ou JSON. Les motifs ci-dessous couvrent la plupart des échecs du parser.
- Chaînes sans guillemets. `name = Ada` est invalide. Utilisez des guillemets doubles : `name = "Ada"`.
- Redéfinir une table. Définir `[a]` deux fois est une erreur. Chaque en-tête de table ne peut apparaître qu'au plus une fois. Fusionnez les clés dans un seul bloc `[a]`.
- Clés de niveau supérieur après une table. Une fois `[section]` écrit, toutes les clés suivantes appartiennent à cette section. Les clés doivent venir avant leur premier en-tête de table. Le formateur les réorganise pour vous, mais l'entrée brute doit déjà être valide.
- Date-heure sans fuseau horaire. `d = 2026-04-26T12:00:00` (pas de Z ni de décalage) est une « date-heure locale ». Elle parse, mais les consommateurs de style JSON peuvent ne pas avoir de moyen de représenter la localité. Utilisez `2026-04-26T12:00:00Z` pour UTC.
- Extension de table inline. Les tables inline `point = {x=1, y=2}` sont fermées et auto-contenues. Vous ne pouvez pas écrire ensuite `point.z = 3`. Utilisez la syntaxe de bloc standard `[point]` pour étendre.
- Confusion d'échappement avec triple guillemet. `"""..."""` (multi-ligne basique) traite les échappements ; `\\\'\\\'\\\'...\\\'\\\'\\\'` (multi-ligne littéral) non. Mélanger les deux est l'erreur la plus courante en chaînes multi-lignes.
Questions fréquentes
Formater change-t-il mes données ?
Seulement la disposition — les clés sont réorganisées pour mettre les primitives avant les sous-tables (règle TOML), l'espacement est normalisé, les soulignements d'entiers sont retirés (sémantique TOML). Les valeurs elles-mêmes sont inchangées.
Les commentaires TOML sont-ils préservés ?
Non. @iarna/toml supprime les commentaires pendant l'aller-retour parse-and-dump. Si vous avez besoin d'un formatage qui préserve les commentaires, il vous faudrait une autre bibliothèque qui conserve l'information de position source.
Cela valide-t-il par rapport à TOML 1.0 ?
Oui. @iarna/toml suit TOML 1.0 — y compris l'autorisation des tableaux de types mixtes, des clés pointées et des règles de chaînes révisées. Les entrées qui dépendent du comportement exclusif TOML 0.5 (tableaux homogènes requis) parseront toujours ici, mais peuvent casser sur des parsers 0.5 plus stricts.
Quelle taille de fichier TOML peut-il gérer ?
Jusqu'à environ 30 Mo avant que le textarea ne ralentisse. La plupart des fichiers de config sont bien en dessous de 1 Mo.
Mon TOML est-il téléchargé ?
Non. Tout s'exécute dans votre navigateur — votre entrée est parsée et ré-sérialisée par JavaScript sur cette page et n'est jamais envoyée à un serveur.
Pourquoi le formateur réorganise-t-il mes clés ?
TOML 1.0 exige que les clés de niveau supérieur (primitives) apparaissent avant tout en-tête de table dans la même portée. Le formateur applique cela en triant les primitives devant les sous-tables. Si votre entrée originale avait un ordre différent, l'étape de formatage la normalise.