我正在为Liquid中的Jekyll网站使用一个非常简单的模板:
{% if page.title == "Home" %}
{{ site.title }} · {{ site.tagline }}
{% else %}
{{ page.title }} · {{ site.title }}
{% endif %}
这会产生很多不受欢迎的空白,所以我做了以下几点:
{%- if page.title == "Home" -%}
{{ site.title }} · {{ site.tagline }}
{%- else -%}
{{ page.title }} · {{ site.title }}
{%- endif -%}
这是precisely what the Liquid docs say to do,但无法在Jekyll中编译:
Liquid Exception: Liquid syntax error (line 1): Tag '{%- if page.title == "Home" -%}' was not properly terminated with regexp: /\%\}/ in /_layouts/default.html
我好像是最新版的Liquid,3.0.6。
我有什么问题吗?
答案 0 :(得分:1)
Jekyll可能没有使用最新版本的Liquid。这意味着 本网站上列出的标签和过滤器可能无法在Jekyll中使用。 通常,Jekyll项目将等待Liquid的稳定释放 而不是使用测试版或候选版本。
当前的Jekyll版本:3.3.1列出了他们的Liquid依赖关系:liquid ~> 3.0
这是Jekyll正在使用的Luiqid版本。
您尝试的Whitespace control
功能已在Liquid 4.0.0
中发布。
查看以下提交:Add whitespace control character and associated tests。它是在 2016年6月27日上制作的,并出现在标签中:
答案 1 :(得分:0)
Jekyll不一定使用最新的液体版本,所以这可能是问题所在。
您可以使用插件(例如octopress/minify-html)将html缩小为简单的解决方案。