一分钟搞懂 YAML
YAML 用缩进表达结构——约定用两个空格,禁止 Tab,一个错位的空格就会悄悄改变含义(或导致解析失败)。映射是 key: value,列表是 - item,引号的重要性不如 JSON,但注释(#)是 JSON 没有的特性。
此校验器能发现的常见 YAML 错误
- Tab 字符——最常见的 YAML 错误;这里一定能发现。
- 缩进不一致——子项比同级项缩进更多,或键“跳级”。转换器会标记它无法解析的行;如需严格的缩进校验,请使用 yq 或 PyYAML 等完整解析器。
- 重复键——大多数解析器会静默采用最后一个;这里会标记为警告。
- 冒号后没有空格(key:value)——只在 JSON 风格行内流或作为值时合法,不能用作映射分隔符。
- 未加引号的特殊值——在 YAML 1.1 解析器中,yes/no/on/off 和 null 会被解析为布尔值/null;想要字符串请加引号。
转换器支持范围
YAML ↔ JSON 转换器支持实际常用子集:嵌套映射、块列表、行内流式([a, b]、{k: v})、字符串/数字/布尔/null 和注释(会被剔除)。锚点/别名(&x / *x)和多行块标量(|、>)不会被展开——需要这些功能,请在本机使用 yq 或 Python 的 PyYAML 等完整解析器。