全局取消设置page-partial
当 Antora 处理每个页面时,它将文件的内容从 AsciiDoc 转换为 HTML 。(在组件版本中,页面通常按模块和相对文件名的顺序处理)。将内容从 AsciiDoc 转换为 HTML 通常会影响 include
指令的行为。具体来说,使用 include
指令来包含已经处理过的页面的页面将看到 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
属性将不再全局设置。现在,您必须在 include
指令中引用的任何页面上设置 page-partial
属性。例如:
= Shared Page
:page-partial:
Page contents.
设置了 page-partial
属性后,您可以使用 include
指令安全地引用该页:
Unresolved include directive in modules/page/pages/pagesAlian/includeAPage/unsetPagePartialGlobally.adoc - include::shared-page.adoc[]
请回想一下,在包含页面中, page-partial
属性指示 Antora 保留 AsciiDoc 源文件,直到所有页面都被转换完毕。