在Sphinx的Jupyter Notebook中实现Python代码折叠与语法高亮问题
在Sphinx的Jupyter Notebook中实现带语法高亮的折叠代码块
你在Sphinx结合Jupyter Notebook构建文档时,用<details>标签实现代码折叠,但折叠块内的Python代码无法显示语法高亮,可按以下方式解决:
调整代码块结构
首先修正<details>标签内的内容格式,确保Markdown解析器能正确识别代码块并启用语法高亮:
```<details> <summary><b style="font-size:14px; color:darkred;">My Solution</b></summary> ```python import math %matplotlib inline plt.xlabel('Area of triangle')
关键调整点:
- 在
<summary>和代码块之间添加空行,让Markdown解析器区分开HTML内容和代码块 - 用
<b>标签加内嵌样式替代废弃的<font>标签,避免解析兼容性问题 - 确保代码块的
python语言标识清晰,Sphinx的语法高亮组件能识别
检查Sphinx配置
确认你的Sphinx项目conf.py中已开启语法高亮支持:
# conf.py 中的配置 extensions = [ # 其他扩展... 'sphinx.ext.highlighting', ] # 设置代码高亮样式,可选 pygments_style = 'default'
如果是用nbsphinx插件将Jupyter Notebook转为Sphinx文档,确保插件版本为最新,旧版本可能对HTML与Markdown混合的支持存在缺陷。
内容的提问来源于stack exchange,提问作者Amit Kr. Ratewal
相关产品推荐
相关产品推荐

