全局取消设置页面局部
当Antora处理每个页面时,它将文件内容从AsciiDoc转换为HTML。(在组件版本中,页面通常按模块和相对文件名的顺序处理)。将内容从AsciiDoc转换为HTML通常会影响包含指令的行为。具体来说,使用包含指令包含已经处理过的页面的页面将看到HTML而不是AsciiDoc。
为了解决这个排序问题,Antora可以保留AsciiDoc源,直到所有页面都被转换。通过在页面的文档头中设置page-partial
属性来激活此行为。从Antora 2.2开始,默认情况下(软)全局设置page-partial
属性。(软设置意味着页面仍然可以覆盖它)。所以,实际上,你甚至不必考虑它。它会自动工作。
保留AsciiDoc源的缺点是它可能会使非常大的站点的Antora的峰值堆使用量增加约10%。如果这是一个问题,你可以恢复到以前的“点菜”行为。要恢复到以前的行为(在Antora 2.2之前),在playbook文件中设置以下属性:
asciidoc:
attributes:
page-partial: false
page-partial
属性将不再全局设置。现在你必须在想要在包含指令中使用的任何页面上设置page-partial
属性。例如:
= 共享页面
:page-partial:
页面内容。
设置了page-partial
属性后,你可以安全地使用包含指令引用该页面:
include::shared-page.adoc[]
请记住,包含页面中的page-partial
属性指示Antora保留AsciiDoc源,直到所有页面都被转换。