我正在使用nanoc为我的项目生成文档。我有几个文件(~50)和已经创建的布局,但目前我正在处理单个文件。奇怪的是,它会在不到一秒的时间内编译这个文件,而不是处理超过20秒的事情!
Loading site data…
Compiling site…
update [0.71s] output/docs/js/getData/index.html
Site compiled in 22.96s.
当我在之后中止该过程时:
update [0.71s] output/docs/js/getData/index.html
与CTRL + C对齐,nanoc view
我的文件编译得很好。你知道如何加快这个过程吗? nanoc正在做什么20秒?
答案 0 :(得分:4)
默认情况下,nanoc仅显示已创建,更新或删除的文件。重新编译但结果相同的文件将不会显示。如果您将--verbose
传递给nanoc compile
,您将看到哪些文件已编译但相同。
所以,nanoc似乎什么都不做的那20秒可能是20秒,nanoc正在忙着重新编译,但发现编译后的文件是相同的,所以它们没有显示出来。
项目将被重新编译,除非nanoc可以确保它们保持相同。有时,nanoc无法确切知道重新编译时文件是否相同,因此在这种情况下,该项目将被重新编译。
编译一个50页的网站23秒似乎很慢。它有助于选择快速过滤器(例如,用于Markdown的RDiscount,用于语法着色的pygments.rb)。如果可以,可以通过Ruby分析器(例如perftools.rb)运行nanoc
以找出缓慢来自的位置。