在解析使用两个空格缩进创建的 YAML(使用 Ruby 2.5/Psych)时,我看到了奇怪的行为。同一个文件,每行缩进四个空格 - 在我看来 - 正如预期的那样。
两个空格:
windows:
- shell:
panes:
- echo hello
产生以下哈希:
{"windows"=>[{"shell"=>nil, "panes"=>["echo hello"]}]}
而使用四个空格缩进:
windows:
- shell:
panes:
- echo hello
结果是:
{"windows"=>[{"shell"=>{"panes"=>["echo hello"]}}]}
我只是浏览了规范,没有看到与此问题相关的任何内容。
这种行为是预期的吗?如果是这样,我将非常感谢解释原因的资源链接。