这个页面标识了AsciiDoc处理器填充的内置文档属性,这些属性主要用于字符替换。

这类属性提供了通用排版符号(例如,智能引号和符号)和不可见字符(例如,空格和不断空白)的可移植替代品,为AsciiDoc中具有特殊意义的字符(例如,加号和冒号)提供了转义机制,以及对于默认会被编码的字符(例如,小于号和大于号)的直通机制。就像所有文档属性一样,您可以通过一个属性引用(例如,{nbsp})在您的内容中插入这些属性中任何一个的值。

Note
AsciiDoc处理器不会阻止您重新分配这些预定义的属性。然而,我们建议您将这些属性视为只读的。只有当输出格式需要使用不同的编码方案时,转换器才应该覆盖这些属性。
Table 1. 内置文档属性用于字符替换
Attribute name Replacement text Appearance

blank[1]

nothing

empty

nothing

sp

space

nbsp

 

 

zwsp[2]

​

wj[3]

⁠

apos

'

'

quot

"

"

lsquo

‘

rsquo

’

ldquo

“

rdquo

”

deg

°

°

plus

+

+

brvbar

¦

¦

vbar

|

|

amp

&

&

lt

<

<

gt

>

>

startsb

[

[

endsb

]

]

caret

^

^

asterisk

*

*

tilde

~

~

backslash

\

\

backtick

`

`

two-colons 竖线:: 竖线::

两个分号 竖线;; 竖线;;

cpp

C++

C++

pp

++

[1] empty 属性的别名,为那些认为这种术语更清晰的人设置。

零宽空格(ZWSP)是Unicode中的一个代码点,用以指示在必要时可以在哪里拆分较长的单词。

Unicode中的word joiner (WJ)是一个代码点,它能够防止在其位置发生换行。

请注意,一些替换值是Unicode字符,而另一些是数字字符引用(例如,&#34;)。当Unicode字符可能干扰AsciiDoc语法时,就会使用数字字符引用。在这种情况下,转换器的责任是将这个数字字符引用转换成与输出格式兼容的格式。例如,在man页面转换器中,每个字符引用都被替换为一个troff宏。

因此,使用AsciiDoc属性进行字符替换的抽象不仅赋予了作者对文档解释方式的控制权,也有助于内容和展示形式的解耦。换句话说,使用属性引用而不是硬编码数字字符引用,使内容更具有可移植性。