Sphinx Alabaster主题侧边栏本地目录如何显示自定义类方法分类标题?
Sphinx Alabaster主题侧边栏显示自定义方法分类标题的解决办法
要让手动添加的自定义分类标题出现在侧边栏的localtoc中,核心是让这些标题成为Sphinx可识别的层级结构,具体操作如下:
用RST层级标题替换自定义分类文本
把原来用加粗或普通段落写的分类标题,改成标准的RST标题语法。比如原来的**地图操作方法**改成## 地图操作方法(层级要和文档主标题匹配:如果类的主标题是# SartopoSession,分类标题就用##,以此类推)。拆分类方法的文档导出逻辑
不要用.. autoclass:: SartopoSession :members:一次性导出所有方法,而是在每个分类标题下,单独用.. automethod::列出对应方法。示例结构如下:# SartopoSession 类 ## 地图操作方法 .. automethod:: SartopoSession.create_map .. automethod:: SartopoSession.delete_map ## 图层管理方法 .. automethod:: SartopoSession.add_layer .. automethod:: SartopoSession.remove_layer验证并调整侧边栏行为
重新执行make html构建文档,此时侧边栏的localtoc会自动识别这些层级标题,将分类标题作为一级子项,下属方法作为二级子项展示。如果需要折叠/展开功能,可在conf.py中添加主题配置:html_theme_options = { 'collapsible_navigation': True, 'sidebar_collapse': True, }
注意:如果之前用了.. rubric::来做分类标题,这类无层级的小标题不会被localtoc抓取,必须换成带层级的#/##标题语法。
内容的提问来源于stack exchange,提问作者Tom Grundy
相关产品推荐
相关产品推荐

