【问题标题】:Jekyll chokes on Hologram's YAML front matterJekyll 对 Hologram 的 YAML 前端问题感到窒息
【发布时间】:2014-06-19 23:47:08
【问题描述】:

为了在 Jekyll 和 Sass 中使用 Hologram CSS 样式指南 gem,我试图让 Jekyll 的编译器忽略多行 cmets 中的 YAML 前端问题。全息图用法如下:

/*doc
  ---
  title: Site Title
  name: site-title
  category: basics
  ---
  ```html_example <div class='site-title'>Site Title</div>
  ```
  /*/

Jekyll 在遇到破折号时会抛出错误:

WARNING on line 16 of /Users/marcy/Sites/Substantial/corpsite-2014/corpsite-jekyll/assets/_sass/modules/header/_header.sass:
This selector doesn't have any properties and will not be rendered.

error assets/_sass/screen.sass (Line 10 of assets/_sass/modules/header/_header.sass: 
  Invalid CSS after "-": expected number or function, was "--")

以前有人解决过这个问题吗?在将样式表转换为 Sass 之前,我们让 Hologram 工作。这让我觉得这是 Sass 编译器的错。

已安装的宝石:

  • 全息图 1.1.0
  • 杰基尔 2.0.3
  • 萨斯 3.2.19
  • 指南针 0.12.2
  • 杰基尔指南针 1.0.6

【问题讨论】:

    标签: rubygems sass jekyll


    【解决方案1】:

    您可以通过将raw tag 添加到您的plugins 文件夹作为raw.rb 来实现此目的,然后像这样包装您的代码:

    {% raw %}
    /*doc
    ---
    title: Site Title
    name: site-title
    category: basics
    ---
    ```html_example <div class='site-title'>Site Title</div>
    ```
    /*/
    {% endraw %}
    

    请记住,如果 jekyll 是在启用安全的情况下构建的(例如在 github 页面上),这将不起作用,因为不允许使用自定义插件。

    【讨论】:

    • 添加插件后,这对我不起作用。我得到与以前相同的错误。这应该在 Jekyll 的原生 Sass 编译器中工作吗?
    • 不,这不适用于本机编译器,因为它不能解析 liquid 标签。这适用于由 jekyll 生成器或类似工具处理的文件。
    • 无赖。那并不能回答这个问题。我有希望!
    • 是的,很遗憾,我认为您无法使用当前的工具链真正完成您想要做的事情。
    猜你喜欢
    • 1970-01-01
    • 2011-02-09
    • 2012-09-27
    • 2019-07-27
    • 2016-05-10
    • 1970-01-01
    • 2011-10-07
    • 2015-11-09
    • 2017-01-08
    相关资源
    最近更新 更多