内在属性
Antora会自动将有关运行时环境、站点配置和当前页面的信息分配给各种文档和页面属性。我们将这些属性称为内在属性。Antora使用这些属性来传播有关站点和当前页面的信息给AsciiDoc内容、扩展和UI模板。
与其他内置属性(例如page-aliases)不同,内在属性旨在作为从Antora传递信息到页面的通道。因此,内在属性旨在只读,不应重新分配。
这些属性在加载页面或导航文件时(即解析时)被定义。当组件描述符中的属性被解析时,它们尚未被分配,因此对组件描述符不可见。
内在环境属性
内在环境属性向文档(或文档扩展)传达文档正在被Antora处理的信息。这些属性在站点中的每个页面上设置。
-
env=site
-
env-site
-
site-gen=antora
-
site-gen-antora
您可以在预处理器条件中使用这些属性,根据文档是否由Antora处理来包含或排除内容。例如:
ifndef::site-gen-antora[]
include::local-preview-settings.adoc[]
endif::[]
您可以在playbook中定义其他环境属性。
站点和配置属性
Antora设置各种属性以配置AsciiDoc处理器。
-
attribute-missing=warn
-
!data-uri
-
icons=font
-
sectanchors
-
source-highlighter=highlight.js
这些属性旨在是合理的默认值。与其他内在属性不同,它们可以使用CLI或playbook重新配置。它们也可以被重新定义,以便可以被组件描述符或页面覆盖。
Antora目前仅支持highlight.js作为源代码块的语法高亮器。因此,将source-highlighter 属性更改为其他值是没有意义的。如果您想要在源代码块上禁用语法高亮,请禁用此属性。 |
Antora还使用属性传递一般站点信息。
-
site-title
-
site-url
这些属性的值与playbook中定义的值相匹配。
内在页面属性
Antora通过页面属性传递有关当前页面的各种信息。这些属性为每个页面以及每个导航文件重新分配。
属性 | 描述 | 示例输出 |
---|---|---|
|
在antora.yml中指定的组件版本的显示版本。 |
7.1 Beta |
|
在antora.yml中指定的组件版本的组件名称。 |
silver-leaf |
|
在antora.yml中指定的组件版本的组件标题。 |
Silver Leaf |
|
当前页面所在组件中最新版本的版本字符串。 |
7.5 |
|
在antora.yml中指定的组件版本的版本。 |
7.1 |
|
如果当前页面的组件版本是当前页面所在组件中的最新版本,则设置。 |
空 |
|
页面源文件的可编辑URL。 |
https://gitlab.com/forest-co/silver-leaf/edit/main/modules/ROOT/pages/index.adoc |
|
页面所属模块的名称。 |
ROOT |
|
页面源文件存储在的存储库分支名称。(与 |
v7.1.0 |
|
如果页面源文件存储的来源是私有的,则设置。 |
空 |
|
页面源文件存储的引用的SHA-1哈希。如果文件来自git工作树(即本地目录),则值为 |
e8e6f6ba33b1ab3f796907b5a256893a64844cd1 |
|
页面源文件存储的引用名称。 |
v7.1.0 |
|
页面源文件存储的引用类型(例如,标签或分支)。如果文件来自git工作树(即本地目录),则值为 |
branch |
|
页面源文件存储的存储库标签名称。(与 |
v7.1.0 |
|
页面源文件存储的内容源的起始路径。 |
docs |
|
页面源文件存储的内容源类型(例如,git)。 |
git |
|
页面源文件存储的内容源的URL,不包含凭据。 |
https://gitlab.com/forest-co/silver-leaf.git |
|
git工作树(即本地目录)的绝对路径。仅当文件来自git工作树时设置。 |
/user/projects/project-name |
|
页面源文件的家族相对路径(从modules/<module>/pages开始)。 |
whats-new-in-spiky.adoc |
|
对 |
7.1 |
请注意,AsciiDoc处理器还会分配许多内在属性,以传达有关当前文档的信息(例如,docname
和docfilesuffix
),尽管这些不是页面属性(意味着它们不以page-
为前缀)。
利用内在页面属性
可以使用属性引用语法(例如,{page-component-name}
)或通过页面UI模型使用模板变量(例如,page.attributes.component-name
)访问这些页面属性的值。
此页面属于*{page-module}*模块中的*{page-component-title} {page-component-version}*组件版本。
上面示例中的属性引用输出了当前页面的数据(如下所示),即您正在阅读的页面。
此页面属于page模块中的Antora 3.1组件版本。
由于这些是页面属性,它们会与所有其他页面属性一起提升到页面UI模型中的page.attributes
映射中。可以使用属性表达式(例如,page.attributes.component-name
)在UI模板中访问它们。
要了解更多关于页面属性如何工作的信息,请参阅页面属性。