如何使用 Jekyll 生成不是 * .html文件,而是使用另一个扩展名生成文件?我想用rb插件修补它。可能吗?
我试过这个(用谷歌搜索),但它不起作用:
module Jekyll
# Extensions to the Jekyll Page class.
class Page
def output_ext(ext)
".myext"
end
end
end
如果你想要一个_sites/
带有扩展名的“from the box”的输出,你可以只使用pages
文件——它们不使用permalink
来自配置的文件,所以这些文件将具有你给它们的相同扩展名。
因此,最小的集合是page.my-ext
项目根目录中的一个文件,它有一个 YAML 前端(可能为空),如下所示:
---
---
Foo
这样的文件对 Jekyll 是可见的,你可以在里面使用任何液体标记,或者使用任何布局,然后这个文件将被保存到_sites/
与之前相同的名称。
你不能/_posts/
在.permalink
.html
带有转换器的自定义插件对我有用,但也仅适用于简单页面 - 来自/_posts/
的帖子仍在获取.html
,所以它似乎在那里被硬编码。
因此,目前唯一的方法是使用简单的页面而不是帖子。如果你想像使用帖子一样遍历所有这些页面,你应该阅读 Jekyll Bootstrap 的pages_list 模块是如何制作的——我认为它是这样的。
编辑:
解决方案在这里找到: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