2013-10-26 36 views
5

有没有办法在YAML中创建一个多行标量来保存所有行的前导空格?多行用空格开始的行

例如,这样的文字:

* apples 
* oranges 
* lemons 

有意开始与空间的每一行。如果我想有确切上述 串(即" * apples\n * oranges\n * lemons" YAML文件中某处定义的?是否有可能不以最可读的方式失去的空间和 办?

使用|不工作的常用方法因为它的星号前条的空间:

data: 
    maybe_a_bulleted_list: | 
     * apples 
     * oranges 
     * lemons 

,但如果我可以说,下一个块是由四个空格代替五(减去先前的压痕,这是已知的)缩进,这将是几乎我需要什么

有没有办法通过优雅的YAML来实现这一点?


背景:我试图创造一个人可编辑的文件,其中包含自由文本,将最终转换为HTML的小部分。我想为此使用Markdown,但由于这些部分将只是简单(不)有序的列表,我正在考虑同时支持Markdown和TracWiki。问题是TracWiki格式正常工作需要每个项目符号列表项以空格开头(否则多行项目不能正确折叠)。

回答

5

你应该看看Block Chomping Indicator规范。

在你的情况下,它看起来像:

data: 
    maybe_a_bulleted_list: |4+ 
     * apples 
     * oranges 
     * lemons