组合导航文件

如果您想从各个文件中组合导航列表,也许是为了重用这些列表,让不同的人维护它们,或者简单地将它们拆分开,您可以使用 include 指令。

将一个导航文件包含到另一个文件中

您可以使用 AsciiDoc 的 include 指令将一个导航文件包含到另一个文件中。include 指令的目标必须是 Antora 分类的文件,这意味着它必须是页面或部分文件。(Antora 不会对位于模块根目录或模块文件夹中的文件进行分类)。

假设其中一个导航列表在文件 modules/ROOT/partials/getting-started.adoc 中定义。

示例 1. modules/ROOT/partials/getting-started.adoc
.开始
* xref:download.adoc[]
* xref:install.adoc[]
* xref:run.adoc[]

您可以将这个部分导航文件包含到主导航文件 modules/ROOT/nav.adoc 中,如下所示:

示例 2. modules/ROOT/nav.adoc
.概览
* xref:index.adoc[]
* xref:contribute.adoc[]

include::partial$getting-started.adoc[]

开始 列表将从部分文件中读取并包含在 概览 列表之后。

包含嵌套列表

在某些情况下,您不确定部分列表将被包含在导航树的哪个位置,也不能假设它被添加到顶层。您希望的是 include 的导航列表位于当前列表项的下一级。

为了实现这种布局,将包含的列表包装在一个开放块中:

* xref:parent.adoc[]
+
--
include::partial$children.adoc[]
--

Antora 将识别这种关系,并将包含的列表作为附加到其上的列表项的子项。(开放块容器将被丢弃)。

假设开始项目在 modules/ROOT/partials/getting-started.adoc 文件中作为匿名列表定义。

示例 3. modules/ROOT/partials/getting-started.adoc
* xref:download.adoc[]
* xref:install.adoc[]
* xref:run.adoc[]

现在我们可以将这个列表作为主导航文件中 开始 项目的子项包含进来。

示例 4. modules/ROOT/nav.adoc
* xref:index.adoc[]
* xref:contribute.adoc[]
* 开始
+
--
include::partial$getting-started.adoc[]
--
* xref:reference.adoc[]

部分文件中的列表项将作为 开始 项目的子项。