应用了`listing`样式的块和段落会按照你在源码中看到的样子准确展示其渲染内容。列表内容会被转换为预格式化文本(即`<pre>`)。内容会以固定宽度的字体呈现,并且会保留换行符。仅在文档转换时,特殊字符和标注会被替换。

列表样式可以通过以下方法之一应用到内容中:

  • 使用属性列表,将`listing`样式应用于一个区块或段落,或

  • 将内容用一对列表块定界符(----)括起来。

缩进方法

当一行文字以一个或多个空格开始时,它将被显示为一个列表块。这种方法是插入简单代码片段的一种简便方式。

使用缩进来指示列表内容
Unresolved directive in listing-blocks.adoc - include::example$listing.adoc[tag=indent]

使用缩进来指示列表内容的结果如下所示。

Unresolved directive in listing-blocks.adoc - include::example$listing.adoc[tag=indent]

列表样式语法

代码块样式`listing`可以通过使用属性列表设置属性`listing`,应用于块或段落。

列表样式语法
Unresolved directive in listing-blocks.adoc - include::example$listing.adoc[tag=style]

列表样式语法的结果如下所示。

Unresolved directive in listing-blocks.adoc - include::example$listing.adoc[tag=style]

限定列表块

一个由四个连字符(----)组成的行包围的分隔列表块。当内容中包含空行时,这种方法很有用。

分隔列表块语法
Unresolved directive in listing-blocks.adoc - include::example$listing.adoc[tag=block]

在渲染时分隔列表块语法中的块是这样出现的。

Unresolved directive in listing-blocks.adoc - include::example$listing.adoc[tag=block]

你应该注意到内容处理的一些细节。

  • HTML元素 <pre> 被转义了,即它是按字面意思显示的,而不是被解释执行。

  • 换行符被保留了。

  • 短语 delimited listing block 尽管周围有下划线格式标记,但并没有被斜体化。

代码块用于展示原始源代码片段非常有用,特别是当与`source`样式和`source-highlighter`属性一起使用时。请参阅 source-blocks.html 以了解更多关于`source`和`source-highlighter`的信息。

列出替换项

被分配了`listing`样式的内容,无论是通过显式块样式还是列表定界符,都适用于verbatim substitution group。在列表内容中,只有特殊字符和标注(callouts)会被自动替换。

您可以使用`subs`属性控制应用于列表块的替换。

带有自定义替换语法的定界列表块
[subs="+attributes"]
----
这是一个用_分隔的列表块_,`subs`属性被赋予了增量值`+attributes`。这个属性引用:

请提供要翻译成中文的具体内容。

在渲染时,将会被属性的值所替换。
----
这是一个_delimited listing block_
具有分配的`subs`属性
递增值`+attributes`。
这个属性引用:

请提供需要翻译成中文的内容,替换 I've been replaced! 后我可以帮你进行翻译。

在渲染时,将用属性的值替换。

请参阅 subs:apply-subs-to-blocks.html 以了解更多关于 subs 属性以及如何对列表内容应用增量替换的信息。