本指南介绍如何配置 Discourse 中支持语法高亮的编程语言。
所需用户等级:管理员
语法高亮通过根据编程语言应用格式设置,增强了代码块的可读性。您可以自定义 Discourse 中可用的语法高亮语言。
配置 highlighted_languages 站点设置
要配置语法高亮的编程语言列表,请执行以下操作:
- 导航至管理面板。
- 进入
配置→内容→帖子与主题。 - 找到
highlighted_languages站点设置。
在此设置中,您可以定义哪些语言可用于语法高亮。输入您希望支持的语言名称,以逗号分隔。
相关设置
在同一区域还有两个与语法高亮相关的附加站点设置:
default_code_lang— 当未指定语言时,应用于代码块的默认语言。默认为auto,即尝试自动检测语言。autohighlight_all_code— 启用后,即使未指定语言类,也会对所有<code>块应用语法高亮。默认为关闭。
添加对其他语言的支持
如果您的目标语言未包含在 highlight.js 中,可以通过主题组件使用 api.registerHighlightJSLanguage() 插件 API 添加。以下是实现步骤:
- 查找对应语言的模块:找到支持您想要添加的语言的 highlight.js 语言定义。例如:
- Solidity:
https://github.com/highlightjs/highlightjs-solidity - Supercollider:
https://github.com/highlightjs/highlightjs-supercollider
- 使用主题组件集成模块:
- 获取所需语言的 HighlightJS 语言定义。
- 在 Discourse 中创建一个新的 主题组件。
- 在主题组件的 JavaScript 中,使用插件 API 注册该语言:
api.registerHighlightJSLanguage("languageName", languageDefinitionFunction); - 请参阅 通过主题组件为 Highlight.JS 安装新语言 以获取完整示例。

