2

如何使用 Jekyll 生成不是 * .html文件,而是使用另一个扩展名生成文件?我想用rb插件修补它。可能吗?

我试过这个(用谷歌搜索),但它不起作用:

module Jekyll

  # Extensions to the Jekyll Page class.

  class Page

    def output_ext(ext)
      ".myext"
    end

  end
end
4

2 回答 2

1

如果你想要一个_sites/带有扩展名的“from the box”的输出,你可以只使用pages文件——它们不使用permalink来自配置的文件,所以这些文件将具有你给它们的相同扩展名。

因此,最小的集合是page.my-ext项目根目录中的一个文件,它有一个 YAML 前端(可能为空),如下所示:

---
---

Foo

这样的文件对 Jekyll 是可见的,你可以在里面使用任何液体标记,或者使用任何布局,然后这个文件将被保存到_sites/与之前相同的名称。

你不能/_posts/在.permalink.html

带有转换器的自定义插件对我有用,但也仅适用于简单页面 - 来自/_posts/的帖子仍在获取.html,所以它似乎在那里被硬编码。

因此,目前唯一的方法是使用简单的页面而不是帖子。如果你想像使用帖子一样遍历所有这些页面,你应该阅读 Jekyll Bootstrap 的pages_list 模块是如何制作的——我认为它是这样的。

于 2013-01-04T19:00:45.773 回答
1

编辑:

解决方案在这里找到:http: //jekyllrb.com/docs/permalinks/

您可以在标记帖子中指定永久链接。不幸的是,如果在 _config.yml 中指定,它将无法工作

根据我的测试,如果您在标记帖子中输入:

永久链接:/whatever/filename/with/arbitrary.xtension

,您的索引文件将被命名为“arbitrary.xtension”并放置在文件夹中:/whatever/filename/with/

对于文件内容需要与扩展名一致的其他应用程序,此插件可能会对您有所帮助: https ://github.com/fauno/jekyll-pandoc-multiple-formats

于 2014-10-28T20:48:14.600 回答