2017-02-15 122 views
7

如果我在YAML中使用一個空格,每個縮進級別有兩個或四個空格,是否有區別?YAML每個縮進多少個空格?

每個結構類型的空間數量是否有任何特定的規則?

例如空間爲嵌套映射,每列表項等空間??

我正在爲彈性beanstalk .ebextensions編寫一個yaml配置文件,而且我很難正確構建它。雖然我在YAML Validator有效yaml彈性豆莖似乎瞭解不同的結構。

+1

儘管[** specs **](http://www.yaml.org/spec/1.2/spec.html#id2777534)告訴我們,即使是隻有一個空格的縮進也沒關係,如果工具至少期望至少可以使用,我不會感到驚訝2空格縮進。 – spickermann

回答

10

YAML沒有要求縮進任何具體的空間量。也沒有要求一致。因此,例如,這是有效的YAML:

a: 
b: 
    - c 
    - d 
    - e 
f: 
    "ghi" 

一些規則可能會感興趣:

  • 流內容可以跨越多行(即與{[開始一切),但必須是縮進至少與周圍當前塊級別的空間一樣多。
  • 阻止列表項可以(但並不需要)具有相同的縮進周邊塊的水平,因爲-被認爲是縮進部分:
a: # top-level key 
- b # value of that key, which is a list 
- c 
c: # next top-level key 
d # non-list value which must be more indented