全局取消设置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 源文件,直到所有页面都被转换完毕。