AKfycbxmMDiSj2CLoAkM0NSFvTknj796x8pqMzUgG7E4Ow1tvIYtLjAx7hAjDr3-fV45fsDLbQ On Sat, Jan 8, 2022 at 10:45 AM Komiya Takeshi <i.tkom...@gmail.com> wrote:
> Hi, > > Sphinx expects all section nodes have their node_id. So please call > `document.note_implicit_target(section_node)` inside your directive. > > Thanks, > Takeshi KOMIYA > > 2022年1月7日(金) 3:00 Thomas A. Christensen II <tchristen...@vet.k-state.edu>: > > > > Hi all, > > > > I'm trying to write my first Sphinx extension. It is a directive that > adds a new section based on parsing a config file. As long as I return > paragraph nodes, then the directive works fine, but when I return section > nodes, the program errors out with the following message: > > > > $ sphinx-build docs _build > > Running Sphinx v4.2.0 > > building [mo]: targets for 0 po files that are out of date > > building [html]: targets for 2 source files that are out of date > > updating environment: [new config] 2 added, 0 changed, 0 removed > > reading sources... [100%] test > > Extension error (sphinx.environment.collectors.toctree): > > Handler <bound method TocTreeCollector.process_doc of > <sphinx.environment.collectors.toctree.TocTreeCollector object at > 0x7f5803601190>> for event > > 'doctree-read' threw an exception (exception: list index out of > range) > > > > This is what a stripped down version of my extension looks like: > > > > from docutils import nodes > > from docutils.parsers.rst import Directive > > > > class HelloSection(Directive): > > def run(self): > > section_dir = nodes.section() > > section_dir += nodes.title(text="An example") > > section_dir += nodes.paragraph(text="Hello, world") > > > > return [section_dir] > > > > def setup(app): > > app.add_directive('hellosection', HelloSection) > > return { > > "version": "0.1.0", > > "parallel_read_safe": False, > > "parallel_write_safe": False, > > } > > > > And my conf.py > > > > import os > > import sys > > sys.path.append(os.path.abspath('./_ext')) > > > > project = 'extension-testing' > > copyright = '2022, Thomas Christensen' > > author = 'Thomas Christensen' > > > > extensions = [ > > 'hellosection', > > ] > > > > html_theme = 'alabaster' > > > > I'm having trouble even debugging this to find out where the error > actually is. Can anyone please tell me what I'm doing wrong and how to fix > it? > > > > Thank you, > > Thomas Christensen > > > > -- > > You received this message because you are subscribed to the Google > Groups "sphinx-users" group. > > To unsubscribe from this group and stop receiving emails from it, send > an email to sphinx-users+unsubscr...@googlegroups.com. > > To view this discussion on the web visit > https://groups.google.com/d/msgid/sphinx-users/572fc7c8-9d92-1739-9e40-6e4414f993be%40vet.k-state.edu > . > > -- > You received this message because you are subscribed to the Google Groups > "sphinx-users" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to sphinx-users+unsubscr...@googlegroups.com. > To view this discussion on the web visit > https://groups.google.com/d/msgid/sphinx-users/CAFmkQANfS55W%3DD5MwKgGfR6GnCvy2T0R7a2zuXHG_RZhRgtp8A%40mail.gmail.com > . > -- You received this message because you are subscribed to the Google Groups "sphinx-users" group. To unsubscribe from this group and stop receiving emails from it, send an email to sphinx-users+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/sphinx-users/CA%2BBNdBAFi5DHcu3Xbs9pcmyk_1ucxmM9RkSAGd12xd2YJmGuZg%40mail.gmail.com.