TOML
TOML es un formato de archivo de configuración que es fácil de leer debido a la semántica obvia que pretende ser "mínima". TOML está diseñado para mapear inequívocamente un diccionario.
TOML | ||
---|---|---|
Desarrollador | ||
Tom Preston-Werner | ||
github.com/toml-lang/toml | ||
Información general | ||
Extensión de archivo |
.toml | |
Tipo de MIME |
no registrado | |
Lanzamiento inicial | 23 de febrero de 2013 | |
Última versión | v1.0.0 | |
Tipo de formato | Intercambio de datos | |
Extendido de | INI | |
Formato abierto | ||
"TOML", el nombre, es un acrónimo de "Tom's Obvious, Minimal Language"[1] que hace referencia a su creador: Tom Preston-Werner.
TOML se utiliza en varios proyectos de software[2] y es implementado en un gran número de lenguajes de programación,[3][4] a pesar de haber sido etiquetado por su autor como una especificación inestable en espera de la realización de la versión 1.0.[1]
TOML está inspirado en la sintaxis del archivo .INI, pero con una especificación más formal.[5]
Sintaxis
La sintaxis de TOML se compone en gran parte de pares clave = "valor"
, [nombres de sección]
y #comentarios
.
Tiene un parecido a la sintaxis de los archivos .INI, pero éstos carecen de una especificación formal, lo que ha hecho que surjan distintas variantes de archivos INI. La sintaxis de TOML carece de estas ambigüedades al estar formalmente definida.[6]
Especifica una lista de tipos de datos soportados: String, Integer, Float, Boolean, Datetime, Array y Table.
Ejemplo
# Este es un documento TOML.
title = "Ejemplo de TOML"
[owner]
name = "Tom Preston-Werner"
dob = 1979-05-27T07:32:00-08:00 # Soporta fechas de forma nativa
[database]
server = "192.168.1.1"
ports = [ 8001, 8001, 8002 ]
connection_max = 5000
enabled = true
[servers]
# La sangría (tabulaciones y/o espacios) está permitida pero no es obligatoria
[servers.alpha]
ip = "10.0.0.1"
dc = "eqdc10"
[servers.beta]
ip = "10.0.0.2"
dc = "eqdc10"
[clients]
data = [ ["gamma", "delta"], [1, 2] ]
# Los saltos de línea son válidos dentro de arrays
hosts = [
"alpha",
"omega"
]
Enlaces externos
- Especificación de TOML v1.0.0 (en inglés)
Referencias
- «toml-lang github».
- «projects using toml».
- «toml implementations».
- «cargo config».
- «TOML, Tom's Own Markup Language». Y Combinator Link. Y Combinator. Consultado el 10 de mayo de 2017.
- «Definición formal de TOML en formato ABNF».