TOML
TOML (Tom’s Obvious, Minimal Language) est un format de fichier de configuration conçu afin d'être facile à lire et à écrire en raison d’une sémantique plus évidente qui se veut minimale. Sa spécification est open-source et reçoit des contributions de la communauté. Le nom TOML est un acronyme pour « Tom’s Obvious, Minimal Language »[1] (langage évident et minimal de Tom), référence à son créateur, Tom Preston-Werner.
Extension | .toml |
---|---|
Type MIME | application/toml |
Développé par | |
Version initiale | |
Type de format |
Configuration |
Basé sur | |
Site web |
Des bibliothèques de lecture du TOML sont disponibles dans un grand nombre de langages de programmation[2].
Historique
modifierLa première version stable, est publiée le [3].
Syntaxe
modifierLa syntaxe de TOML ressemble quelque peu à celle des fichiers INI, mais est un format avec spécification formelle. Un fichier TOML consiste principalement en des sections ( [section.sous-section]
), des paires (cle = valeur
, "clé" = "valeur"
), et des commentaires (# commentaire
).
TOML prend en charge les types de données suivants :
- chaînes de caractères ;
- nombres entiers ;
- nombres à virgule flottante ;
- booléens ;
- dates et heures ;
- tableaux ;
- dictionnaires.
Exemple
modifier# Ceci est un document TOML.
title = "Exemple de fichier TOML"
[owner]
name = "Tom Preston-Werner"
dob = 1979-05-27T07:32:00-08:00 # Les dates et heures forment un type natif
[database]
server = "192.168.1.1"
ports = [ 8001, 8001, 8002 ]
connection_max = 5000
enabled = true
[servers]
# L'indentation (tabulations et/ou espaces) est autorisée mais pas obligatoire
[servers.alpha]
ip = "10.0.0.1"
dc = "eqdc10"
[servers.beta]
ip = "10.0.0.2"
dc = "eqdc10"
[clients]
data = [ ["gamma", "delta"], [1, 2] ]
# Les sauts de ligne sont acceptables à l’intérieur des tableaux
hosts = [
"alpha",
"omega"
]
Références
modifier- « GitHub - toml-lang/toml: Tom's Obvious, Minimal Language »
- « Implementations - TOML Wiki »
- (en) « Release Release 1.0.0 · toml-lang/toml », sur GitHub (consulté le )