我正在使用 Sphinx 记录我的 Python 项目。由于我的一些文档页面相当长,我希望在侧边栏中同时包含本地和全局目录。我通过
实现了这一点html_sidebars = { '**': ['localtoc.html', 'globaltoc.html', 'searchbox.html'] }
结果几乎符合预期。但是,本地目录和全局目录具有相同的标题(“目录”)。也就是说,它看起来像
Table of Contents
- Subheading 1
- Subheading 2
- Subheading 3
Table of Contents
- Subpage 1
- Subpage 2
- Subpage 3
这会让读者感到困惑。
我已经在Python安装的sphinx包文件夹中找到了文件localtoc.html
,并且根据我的需要调整html(替换标题)很简单。然而,我不想更改 Sphinx 源文件,并且通过 python 包构建我自己的主题对我来说似乎有点过分了。
有没有办法在本地替换 localtoc.html
,即仅用于当前项目?
最佳答案
您可以覆盖 localtoc.html
的行为模板。
创建 _templates
Sphinx 根目录中的文件夹(与 conf.py
文件所在的位置相同),然后复制 localtoc.html
从您的 Sphinx 安装到此文件夹。
然后您可以根据需要修改此文件。删除这一行:
<h3><a href="{{ pathto(master_doc) }}">{{ _('Table of Contents') }}</a></h3>
删除多余的标题,或者您可以根据需要替换任何文本(例如将 <a>
的内容更改为 Local Contents
或您喜欢的任何内容。
请注意,更改 localtoc.html
删除两个标题的顶部。如果这就是您想要的,那就太好了!如果没有,您可以仅使用 globaltoc.html
复制该过程。以同样的方式。
关于python - 狮身人面像 : customize sidebar section titles,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60181693/