不要与source highlighting)混淆,你可以高亮(即,强调)源代码块中的特定行,以此来吸引注意力。
使用标准
如果满足特定条件,可以对源代码块应用行高亮显示。
source-highlighter` |
用于在源代码块上使用`highlight`属性的标准
|
一个附加属性标记 * 代码块上启用了`linenums`选项。 * highlight`属性定义在区块上。 行高亮只会强调行号本身。 |
|
* highlight` 属性被定义在块上。 * 支持行高亮显示的CSS由docinfo提供。 (即使设置了`rouge-css=style`,也需要这个CSS)。 |
|
* 在块上定义了`highlight`属性。 |
|
不适用。 使用highlight.js时,不提供行高亮功能。 |
高亮属性
如果定义了高亮属性并且至少一个行号落在这个范围内,那么行高亮将在源代码块中被激活。
Important
|
请记住,一些语法高亮库需要额外的选项(例如,CodeRay和Rouge),而有些则根本不支持行高亮(例如,highlight.js)。 |
"`highlight` 属性接受一个由逗号或分号分隔的行范围列表。这些数字对应于源代码块的行号。如果没有指定 start
属性,源代码块的行号将从 1 开始。"
以下是一些例子:
-
1
-
二,四,六
-
三点五
-
2,7..9
一段范围由两个数字组成,数字之间用双点(例如,2..5
)隔开。该范围是包括性的。
代码光线
= 文档标题
:source-highlighter: coderay
[%linenums,ruby,highlight=2..5]
----
ORDERED_LIST_KEYWORDS = {
'loweralpha' => 'a',
'lowerroman' => 'i',
'upperalpha' => 'A',
'upperroman' => 'I',
}
----
当使用CodeRay作为源代码高亮器时,`linenums`选项是使用行高亮的必要条件。这是因为行高亮只应用于行号,行号会使用粗体文字来强调。CodeRay不会对代码本身的行进行着色。
红色
= 文档标题
:source-highlighter: rouge :docinfo: shared
[,ruby,highlight=2..5]
----
ORDERED_LIST_KEYWORDS = {
'loweralpha' => 'a',
'lowerroman' => 'i',
'upperalpha' => 'A',
'upperroman' => 'I',
}
----
当使用Rouge作为源代码高亮器时,你必须提供CSS来支持行高亮显示。你可以通过将所需的行高亮显示CSS存储在docinfo文件中,然后通过设置`docinfo`文档属性将其包含在输出文档中。
<style> pre.rouge .hll { background-color: #ffc; display: block; } pre.rouge .hll * { background-color: initial; } </style>
请注意,即使当`rouge-css=style`时,也需要这个补充的CSS。Rouge集成并没有将行高亮的CSS嵌入到每一行标签的style属性中。相反,它会在标签上设置`hll`类(例如,<span class="hll">
)。
Pygments
= 文档标题
:source-highlighter: pygments
[,ruby,highlight=2..5]
----
ORDERED_LIST_KEYWORDS = {
'loweralpha' => 'a',
'lowerroman' => 'i',
'upperalpha' => 'A',
'upperroman' => 'I',
}
----