Учтите: я хочу передать блок текста в качестве параметра в теге include
.Блок текста содержит цитату.Например:
Breaking news:
Area man says, "This is newsworthy!"
Есть несколько способов сделать это:
1.Заключите в одинарные кавычки
{%
include newsitem.html
content='Breaking news:
Area man says, "This is newsworthy!"'
%}
Это не идеально, поскольку в текстовом блоке могут быть одинарные кавычки / апострофы.
2.Используйте captures
{% capture newscontent %}
Breaking news:
Area man says, "This is newsworthy!"
{% endcapture %}
{%
include newsitem.html
content=newscontent
%}
Это не идеально, потому что оно многословно.
3.Escape-кавычки
{%
include newsitem.html
content="Breaking news:
Area man says, \"This is newsworthy!\""
%}
Это не идеально, потому что если есть много кавычек, им всем понадобится обратный слеш, который будет утомительно добавлять.
4.Используйте captures
и include
{% capture content %}{% include_relative newscontent.md %}{% endcapture %}
{%
include newsitem.html
content=content
%}
Это не совсем идеально, потому что это также довольно многословно.
5.Использовать frontmatter и / или YAML
---
newscontent: |
Breaking news:
Area man says, "This is newsworthy!"
---
{%
include newsitem.html
content=page.newscontent
%}
Это не идеально, потому что оно странным образом распределяет содержимое страницы.
Теперь, я абсолютно признаю, что это все действительно тривиальные жалобы,Но в основном для того, чтобы лучше познакомиться с Jekyll / liquid, я хотел бы знать, есть ли другой способ передать многострочные параметры, содержащие кавычки, в include
. GREAT было бы, если бы я мог использовать backtics или какой-либо другой символ, который не очень часто встречается в текстовом содержимом:
{%
include newsitem.html
content=`Breaking news:
Area man says, "This is newsworthy!"`
%}
К сожалению, это не поддерживается.о чем ты думаешь?Спасибо!