forum

Home / DeveloperSection / Forums / Modify Sphinx TOC tree

Modify Sphinx TOC tree

Anonymous User 1805 19-Nov-2015
I have a Sphinx project with a TOC (index.rst) that includes :maxdepth: 2. The problem is I want to reduce the depth to 1 for the release section so that it doesn't include the list of release notes in the main TOC (the list is too long).

It seems that the TOC list can be modified using a doctree-resolved event handler, but I can't figure out how to modify the TOC tree in the event handler:

from sphinx import addnodes
def setup(app):
    def update_toctree(app, doctree, docname):
        if docname != 'index':
            return
        node = doctree.traverse(addnodes.toctree)[0]
        toc = app.env.resolve_toctree(docname, app.builder, node)
        # do something with "toc" here
    app.connect('doctree-resolved', update_toctree)

Updated on 19-Nov-2015
I am a content writter !

Can you answer this question?


Answer

1 Answers

Liked By