Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby 从Liquid和Markdown而不是HTML生成Jekyll页面_Ruby_Markdown_Jekyll_Liquid - Fatal编程技术网

Ruby 从Liquid和Markdown而不是HTML生成Jekyll页面

Ruby 从Liquid和Markdown而不是HTML生成Jekyll页面,ruby,markdown,jekyll,liquid,Ruby,Markdown,Jekyll,Liquid,我正在使用Jekyll文档()中插件部分的示例生成器的一个稍加修改的版本,我很好奇是否有任何方法可以解析liquid/markdown文件,而不是示例中的普通HTML文件 请注意这一行: self.read_yaml(File.join(base, '_layouts'), 'category_index.html') 该category index.html文件是将在生成的文件中使用的目标文件。我的目标是能够将一个对象从我的_配置文件传递到我的生成器,然后我可以使用该文件从.markdown

我正在使用Jekyll文档()中插件部分的示例生成器的一个稍加修改的版本,我很好奇是否有任何方法可以解析liquid/markdown文件,而不是示例中的普通HTML文件

请注意这一行:

self.read_yaml(File.join(base, '_layouts'), 'category_index.html')
该category index.html文件是将在生成的文件中使用的目标文件。我的目标是能够将一个对象从我的_配置文件传递到我的生成器,然后我可以使用该文件从.markdown文件构建一组页面。是否有人知道这是可能的,或者有任何建议来实现这一点?我研究了用于在内部解析markdown的Kramdown lib,如果有必要,我并不反对自己调用它,只是不确定我是否在深入理解一些应该如此简单的东西。我的生成器创建的页面对象的API如下所示:

非常感谢,
-Keith

您可以在生成器中从您想要的几乎任何数据源生成您想要的几乎任何格式,因为您正在编写对Jekyll对象模型具有完全访问权限的纯Ruby。例如,这是我那天晚上组装的一台发电机

我想问的问题是:

  • 我需要一个插件来实现这一点吗
  • 如果是,我是否需要一个正式的生成器插件,如中所述
  • 或者我应该子类化、monkey patch,或者以其他方式更改内置生成器的行为
  • 此外,在这个上下文中(您可以100%控制生成的内容),标记和HTML文件之间的差异大多是名义上的
    read_yaml
    IIRC实际上会从两者中读取前端内容,所以这不应该是一个问题