Sintassi
Regole di Base
key = valueCoppia chiave-valore (una per riga)
#Commento (fino a fine riga)
Case sensitiveChiavi e valori distinguono le maiuscole
UTF-8I file devono essere UTF-8 valido
No nullTOML non ha il tipo null
Esempio Minimale
title = "My App" debug = true port = 8080
Stringhe
Tipi di Stringa
"basic"Stringa base (supporta escape)
'literal'Stringa letterale (nessun escape)
"""multi"""Stringa base multi-riga
'''multi'''Stringa letterale multi-riga
Esempi
basic = "Hello\nWorld" literal = 'C:\Users\path' multi = """ Line one Line two"""
Sequenze di Escape
\n \t \rA capo, tabulazione, ritorno a capo
\\Backslash
\uXXXXUnicode (4 cifre esadecimali)
\UXXXXXXXXUnicode (8 cifre esadecimali)
Numeri e Booleani
Tipi Numerici
42Intero
1_000_000Intero con caratteri di separazione
0xff / 0o77 / 0b11Esadecimale, ottale, binario
3.14Numero in virgola mobile
5e+22 / 1e-2Notazione scientifica
inf / nanValori float speciali
true / falseBooleano (solo minuscolo)
Esempi
count = 42 price = 19.99 hex_color = 0xFF5733 enabled = true
Date
Tipi di Data e Ora
2026-03-26T10:30:00ZData-ora con offset (UTC)
2026-03-26T10:30:00-05:00Data-ora con offset (EST)
2026-03-26T10:30:00Data-ora locale (senza fuso orario)
2026-03-26Data locale
10:30:00Ora locale
Esempi
created = 2026-03-26T10:30:00Z birthday = 1990-05-15 alarm = 07:00:00
Tabelle
Sintassi delle Tabelle
[server] host = "localhost" port = 8080 [server.ssl] enabled = true cert = "/path/to/cert.pem"
Array di Tabelle
[[users]] name = "Alice" role = "admin" [[users]] name = "Bob" role = "user"
Regole
[name]Intestazione di tabella standard
[a.b.c]Chiave puntata — tabella annidata
[[name]]Array di tabelle
No redefineNon si può definire la stessa tabella due volte
Array
Sintassi degli Array
colors = ["red", "green", "blue"] numbers = [1, 2, 3]
Array Multi-riga
hosts = [ "alpha.example.com", "beta.example.com", ]

La virgola finale è permessa negli array TOML

Regole
Same typeTutti gli elementi devono essere dello stesso tipo
Trailing commaPermessa dopo l'ultimo elemento
NewlinesGli array possono estendersi su più righe
Tabelle Inline
Sintassi delle Tabelle Inline
point = { x = 1, y = 2 } user = { name = "Alice", admin = true }
Regole
Single lineDeve stare su una sola riga
No trailing commaLa virgola finale non è permessa
No newlinesNon può estendersi su più righe
No adding keysNon si possono aggiungere chiavi alla tabella inline in seguito
Inline vs Standard
# Inline — compatto, su una riga db = { host = "localhost", port = 5432 } # Standard — leggibile, estendibile [db] host = "localhost" port = 5432
Pattern Comuni
pyproject.toml
[project] name = "myapp" version = "1.0.0" dependencies = ["flask>=3.0"]
Cargo.toml
[package] name = "myapp" version = "0.1.0" edition = "2021"
Suggerimenti
taploToolkit TOML — formattatore e linter
No nullOmetti la chiave invece di impostare null
No anchorsA differenza di YAML, nessun sistema di riferimenti/alias
StrictNessuna chiave duplicata, nessun array di tipo misto