'''Highlight.js 是一个流行的客户端代码语法高亮显示工具,它支持广泛的https://highlightjs.org/download/[语言^]。'''

激活highlight.js

要激活highlight.js,请将以下属性条目添加到您的AsciiDoc文件的头部:

:source-highlighter: highlight.js

默认情况下,Asciidoctor 会链接到托管在 cdnjs 上的 highlight.js 库和样式表。 Asciidoctor 从 CDN 加载的 highlight.js 库版本只包括对通用语言包中语言的支持(apache, bash, coffeescript, cpp, cs, css, diff, http, ini, java, javascript, json, makefile, markdown, nginx, objectivec, perl, php, properties, python, ruby, shell, sql, xml 和 yaml)。

加载支持额外语言的功能

要加载highlight.js支持的其他语言,请在`highlightjs-languages`文档属性的值中列出它们。用逗号后跟一个可选的空格将每种语言分开。

通用的highlight.js包并不包括对Rust和Swift的支持。让我们设置`highlightjs-languages`属性,以便HTML转换器在HTML页面中加载对它们的支持。

:source-highlighter: highlight.js
:highlightjs-languages: rust, swift

highlightjs-languages` 属性仅在生成独立的 HTML 文档时适用(即,后端:html,独立:true)。在生成嵌入式 HTML 时它不起作用,嵌入式 HTML 通常用于网站生成器集成,例如 Antora。

使用自定义的highlight.js库

如果你更愿意使用个人副本的highlight.js而不是CDN上托管的那个,遵循以下步骤:

  1. 在[下载页面^]上创建你的自定义软件包。

  2. 将zip文件下载并解压到一个名为[.path]_highlight_的文件夹中,该文件夹与你的AsciiDoc文件相邻(或者如果输出目录不同,则解压到输出目录中)。

  3. 将文件名从[.path]highlight/highlight.pack.js_更改为[.path]_highlight/highlight.min.js

  4. 将[.path]_highlight/styles/github.css_重命名为[.path]_highlight/styles/github.min.css

    • 如果您使用的`highlightjs-theme`主题名称与`github`不同,请将其替换。

  5. 把属性条目 :highlightjsdir: highlight 添加到你的AsciiDoc文件的头部。

    • 或者,当你调用Asciidoctor命令行接口时,你可以传递`-a highlightjsdir=highlight`标志。

输出文件将使用你个人的highlight.js库和样式表副本,而不是使用托管在cdnjs上的那一个。