github Liquid 4 中的标签关闭失败

github tag closing in Liquid 4 failure

我正在使用 Jekyll 因此 Liquid 4

通常我应该能够像这样转义空格:

{%- for post in site.data.posts-%}

但 github returns 我在构建时遵循错误消息 index.html 中第 21 行的标签 {%- for post in site.data.posts -%} 没有用 %} 正确关闭。

如果我删除破折号并像这样格式化它

{% for post in site.data.posts %}

它正在工作,但当然到处都添加了空格。

我的印象是它应该可以与 Liquid 4 一起使用,我的一位同事也有相同类型的代码,这对他来说是可行的。

知道为什么这会导致我的构建崩溃吗?

来自我的 gemfile

gem "jekyll", "3.5.0"

还有我的gemfile.lock

    jekyll (3.5.0)
  addressable (~> 2.4)
  colorator (~> 1.0)
  jekyll-sass-converter (~> 1.0)
  jekyll-watch (~> 1.1)
  kramdown (~> 1.3)
  liquid (~> 4.0)
  mercenary (~> 0.3.3)
  pathutil (~> 0.9)
  rouge (~> 1.7)
  safe_yaml (~> 1.0)
jekyll-feed (0.9.2)
  jekyll (~> 3.3)
jekyll-sass-converter (1.5.0)
  sass (~> 3.4)
jekyll-watch (1.5.0)
  listen (~> 3.0, < 3.1)
kramdown (1.14.0)
liquid (4.0.0)

您的同事工作站与 Github 平台不同。您可以使用当前配置 运行 在本地环境中使用您的代码,它会工作,因为如果您 运行 使用 bundle exec jekyll serve 它将获得预期的 Gemfile 依赖项和版本。

但是您不能在 Github 页面中指定自定义版本的 gem,拥有 Gemfile 是行不通的。复制 Github 页 运行ning 环境的正确方法是将 Gemfile 设置为:

gem 'github-pages', group: :jekyll_plugins

然后 运行 bundle install 并检查您使用的版本:

bundle exec github-pages versions

那你就要等到GithubPages使用Liquid 4.*才能使用空白条功能或者写液体之间没有空格,现在是3.0.6.