REFERENCIA RÁPIDA DE TOML
Tablas, cadenas, números, fechas, arrays
Sintaxis
Reglas Básicas
| key = value | Par clave-valor (uno por línea) |
| # | Comentario (hasta el final de la línea) |
| Distingue mayúsculas | Las claves y valores distinguen entre mayúsculas y minúsculas |
| UTF-8 | Los archivos deben ser UTF-8 válido |
| Sin null | TOML no tiene tipo null |
Ejemplo Mínimo
title = "My App"
debug = true
port = 8080
Cadenas
Tipos de Cadena
| "basic" | Cadena básica (soporta secuencias de escape) |
| 'literal' | Cadena literal (sin escapes) |
| """multi""" | Cadena básica multilínea |
| '''multi''' | Cadena literal multilínea |
Ejemplos
basic = "Hello\nWorld"
literal = 'C:\Users\path'
multi = """
Line one
Line two"""
Secuencias de Escape
| \n \t \r | Salto de línea, tabulación, retorno de carro |
| \\ | Barra invertida |
| \uXXXX | Unicode (4 dígitos hexadecimales) |
| \UXXXXXXXX | Unicode (8 dígitos hexadecimales) |
Números y Booleanos
Tipos Numéricos
| 42 | Entero |
| 1_000_000 | Entero con guiones bajos |
| 0xff / 0o77 / 0b11 | Hexadecimal, octal, binario |
| 3.14 | Flotante |
| 5e+22 / 1e-2 | Notación científica |
| inf / nan | Valores flotantes especiales |
| true / false | Booleano (solo minúsculas) |
Ejemplos
count = 42
price = 19.99
hex_color = 0xFF5733
enabled = true
Fechas
Tipos de Fecha y Hora
| 2026-03-26T10:30:00Z | Fecha-hora con offset (UTC) |
| 2026-03-26T10:30:00-05:00 | Fecha-hora con offset (EST) |
| 2026-03-26T10:30:00 | Fecha-hora local (sin zona horaria) |
| 2026-03-26 | Fecha local |
| 10:30:00 | Hora local |
Ejemplos
created = 2026-03-26T10:30:00Z
birthday = 1990-05-15
alarm = 07:00:00
Tablas
Sintaxis de Tabla
[server]
host = "localhost"
port = 8080
[server.ssl]
enabled = true
cert = "/path/to/cert.pem"
Array de Tablas
[[users]]
name = "Alice"
role = "admin"
[[users]]
name = "Bob"
role = "user"
Reglas
| [name] | Encabezado de tabla estándar |
| [a.b.c] | Clave con puntos — tabla anidada |
| [[name]] | Array de tablas |
| Sin redefinir | No se puede definir la misma tabla dos veces |
Arrays
Sintaxis de Array
colors = ["red", "green", "blue"]
numbers = [1, 2, 3]
Array Multilínea
hosts = [
"alpha.example.com",
"beta.example.com",
]
La coma final está permitida en arrays TOML
Reglas
| Mismo tipo | Todos los elementos deben ser del mismo tipo |
| Coma final | Permitida después del último elemento |
| Saltos de línea | Los arrays pueden abarcar múltiples líneas |
Tablas Inline
Sintaxis de Tabla Inline
point = { x = 1, y = 2 }
user = { name = "Alice", admin = true }
Reglas
| Una línea | Debe aparecer en una sola línea |
| Sin coma final | La coma final no está permitida |
| Sin saltos de línea | No puede abarcar múltiples líneas |
| Sin agregar claves | No se pueden agregar claves a la tabla inline después |
Inline vs Estándar
# Inline — compacto, en una línea
db = { host = "localhost", port = 5432 }
# Estándar — legible, extensible
[db]
host = "localhost"
port = 5432
Patrones Comunes
pyproject.toml
[project]
name = "myapp"
version = "1.0.0"
dependencies = ["flask>=3.0"]
Cargo.toml
[package]
name = "myapp"
version = "0.1.0"
edition = "2021"
Consejos
| taplo | Kit de herramientas TOML — formateador y linter |
| Sin null | Omitir la clave en lugar de establecerla en null |
| Sin anclas | A diferencia de YAML, no hay sistema de referencias/alias |
| Estricto | Sin claves duplicadas, sin arrays de tipos mixtos |