参考

TOML 速查表

可快速浏览的 TOML v1.0 语法参考:键、字符串、数字、日期、表与数组。可复制示例,或送到格式化页试用。

键

裸键、引号键与点分键。点分键可在没有 [表头] 的情况下创建嵌套表。

.toml
name = "demo"
"quoted key" = true
physical.color = "orange"
physical.shape = "round"

字符串

基本字符串支持转义;字面量字符串保留反斜杠;三引号用于多行文本。

.toml
basic = "Hello\nWorld"
literal = 'C:\Users\demo'
multi = """
First line
Second line
"""

数字

整数(含十六/八/二进制)、浮点、下划线可读性分隔,以及 inf / nan。

.toml
int1 = 99
int2 = 1_000_000
hex = 0xDEADBEEF
float1 = 3.1415
inf = inf
not_a_number = nan

布尔

只能写小写的 true 与 false。

.toml
enabled = true
debug = false

日期与时间

带时区日期时间、本地日期时间、本地日期与本地时间都是一等类型。

.toml
odt = 1979-05-27T07:32:00Z
ldt = 1979-05-27T07:32:00
ld = 1979-05-27
lt = 07:32:00

数组

数组写作 [ … ]。语言允许同一数组混用类型,但配置里通常不建议。

.toml
ports = [ 8001, 8001, 8002 ]
mixed_ok = [ 1, 2, 3 ]
nested = [ [ 1, 2 ], [3, 4, 5] ]

表

[table] 表头定义嵌套映射。子表可用 [server.tls] 这类点分名称。

.toml
[server]
host = "127.0.0.1"
port = 8080

[server.tls]
enabled = true

数组表

[[name]] 向数组追加一张表。每个元素重复一次表头。

.toml
[[products]]
name = "Hammer"
sku = 1

[[products]]
name = "Nail"
sku = 2

内联表

写成一行的 { key = value, … },适合小型嵌套对象。

.toml
point = { x = 1, y = 2 }
name = { first = "Tom", last = "Preston-Werner" }

注释

注释以 # 开头。解析后再写出的格式化会丢掉注释——格式化页会事先说明。

.toml
# Full-line comment
key = "value"  # trailing comment

常见问题

这是完整规范吗?
不是。这是日常语法速查。需要更多上下文请看 TOML v1.0 指南。
这些示例能校验吗?
可以。用「复制」或「在格式化页试用」——解析仍在浏览器本地完成。