一个AsciiDoc处理器有许多保留用于特殊目的的属性。*内置属性*添加、配置,并控制文档中的常用功能。许多内置属性只在文档头部用属性条目定义时才生效。
使用属性的默认值
许多内置属性都有一个默认值。当你想要激活一个内置属性并给它赋予默认值时,你可以在属性条目中留空该值。
例如,要为文档启用目录,您需要在文档头部使用属性条目来设置`toc`属性。
= 文件标题
目录
如果以下情况发生,激活属性的默认值将在处理时被赋值:
-
它有一个默认值,而且
-
属性条目中的值被留空
在上面的例子中,由于属性条目中的值被留空,auto
将被作为默认值分配给 toc
。
覆盖属性的默认值
您可能不想使用内置属性的默认值。在下一个例子中,我们将覆盖AsciiDoc处理器自动设置的一个属性的默认值。内置属性 doctype
在处理时会自动设置,并赋值为 article
。然而,如果您想要使用AsciiDoc的书籍特性,那么 doctype
属性需要被赋予 book
的值。
= 我的文档标题
:doctype: book (1)
-
在文档头部设置
doctype
并赋予它book
值。明确的值必须至少用一个空格与闭合的冒号 (:
) 相隔。
要覆盖属性的默认值,你必须在设置属性时显式地分配一个值。在文档头部分配给属性的值将取代默认值(假设该属性没有通过CLI或API被锁定)。
覆盖默认的资产目录值
您还可以使用内置的资产目录属性来自定义图像(默认值为`empty`)、图标(默认值为`./images/icons`)、样式表(默认值为`./stylesheets`)和JavaScript文件(默认值为`./javascripts`)的基本路径。
替换内置资产目录属性的默认值
= 我的文档
:imagesdir: ./images :iconsdir: ./icons :stylesdir: ./styles :scriptsdir: ./js
上述例子中的四个内置属性默认值是在处理时自动设置的。然而,在该例子中,这些属性在文档头部被设置并赋予了明确的值。这个明确由用户定义的值将替换默认值(假设该属性没有通过命令行界面或API锁定)。