我想让Nanoc以多种格式编译单个项目 - 具体来说,将Markdown文件编译为HTML和PDF。据我所知,单个项目只能匹配一个编译规则。
硬链接(ln somefile.md newfile.md
)允许我编译同一个文件,好像它是两个不同的文件,但这是一种尴尬的解决方案。
有更好的方法吗?
答案 0 :(得分:6)
您可以使用项目表示来实现这一目标。您可以将单个项目编译为多个输出项目(表示形式)。这是一个例子:
compile '/stuff/' do
filter :markdown
end
compile '/stuff/', :rep => :pdf do
filter :markdown
filter :pdf
end
唯一剩下的就是提供将两个项目表示写入正确位置的路由规则(也使用:rep => ...
)。