考虑:我想在include
标记中传递文本块作为参数。文本块中包含引号。例如:
Breaking news:
Area man says, "This is newsworthy!"
我可以想到几种方法:
{%
include newsitem.html
content='Breaking news:
Area man says, "This is newsworthy!"'
%}
这不理想,因为文本块中可能有单引号/撇号。
captures
{% capture newscontent %}
Breaking news:
Area man says, "This is newsworthy!"
{% endcapture %}
{%
include newsitem.html
content=newscontent
%}
这不理想,因为它很冗长。
{%
include newsitem.html
content="Breaking news:
Area man says, \"This is newsworthy!\""
%}
这不是理想的,因为如果引号很多,则它们都需要反斜杠,这会增加累赘。
captures
和include
{% capture content %}{% include_relative newscontent.md %}{% endcapture %}
{%
include newsitem.html
content=content
%}
这不是很理想,因为它也很冗长。
---
newscontent: |
Breaking news:
Area man says, "This is newsworthy!"
---
{%
include newsitem.html
content=page.newscontent
%}
这不理想,因为它以怪异的方式散布页面内容。
现在,我绝对承认这些都是微不足道的抱怨。但是主要是为了更好地了解Jekyll / liquid,我想知道是否还有另一种方法将包含引号的多行参数传递给include
。 GREAT 是什么,如果我可以使用背景字符或文本内容中不太常见的其他字符:
{%
include newsitem.html
content=`Breaking news:
Area man says, "This is newsworthy!"`
%}
不幸的是,这似乎不受支持。你怎么看?谢谢!