You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用nbsphinx与confluencebuilder时如何启用语法高亮?

解决Confluencebuilder中nbsphinx笔记本代码无语法高亮的问题

针对你遇到的nbsphinx生成的Jupyter笔记本代码块在Confluence中语言被设为none、无语法高亮的问题,可以通过以下几种方法强制默认使用Python语法高亮:

方法一:配置nbsphinx强制指定代码单元格的Lexer

在Sphinx的配置文件conf.py中添加以下设置,让nbsphinx为所有代码单元格默认使用Python语法分析器:

nbsphinx_codecell_lexer = 'python'

这个配置会让nbsphinx在处理笔记本时,将所有代码单元格标记为Python语言,confluencebuilder会读取这个标记并设置Confluence代码块的language参数为python。

方法二:直接配置confluencebuilder的全局默认代码语言

如果方法一不生效,可以直接在conf.py中设置confluencebuilder的全局代码语言,强制所有未指定语言的代码块使用Python:

confluence_code_language = 'python'

该参数会覆盖所有代码块的默认语言设置,包括nbsphinx生成的内容。

方法三:确保构建环境中安装IPython

虽然你在ReadTheDocs上通过安装IPython解决过类似问题,但Confluence的构建环境可能缺失该依赖。执行以下命令安装IPython,确保nbsphinx能正确识别代码单元格的语言:

pip install ipython

方法四:手动指定单个笔记本单元格的语言(可选)

如果需要针对特定单元格设置语言,可以在Jupyter笔记本的代码单元格元数据中添加:

{"language": "python"}

不过这种方式适合少量单元格调整,批量场景建议优先使用配置文件设置。

配置完成后重新构建文档,检查输出的Confluence XML内容,确认代码块的language参数已从none变为python,此时Confluence会自动应用Python语法高亮。

内容的提问来源于stack exchange,提问作者LuizFelippe

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.27 11:02:10