From 5cf2616a310229b2ef6d6e345c3b8fdaa401a038 Mon Sep 17 00:00:00 2001 From: Kainaat Singh Date: Mon, 11 Feb 2019 16:44:40 +0100 Subject: [PATCH] docs: (Sphinx): added index to limitation directive --- .../source/extensions/limitation.py | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/docs/manuals/en/new_main_reference/source/extensions/limitation.py b/docs/manuals/en/new_main_reference/source/extensions/limitation.py index e8bc9fd1fe9..d65d9a477c8 100644 --- a/docs/manuals/en/new_main_reference/source/extensions/limitation.py +++ b/docs/manuals/en/new_main_reference/source/extensions/limitation.py @@ -3,6 +3,7 @@ from docutils import nodes from docutils.parsers.rst import Directive from docutils.parsers.rst import directives +from sphinx import addnodes #from sphinx.util.docutils import SphinxDirective class Limitation(Directive): @@ -18,6 +19,8 @@ class Limitation(Directive): def run(self): + env = self.state.document.settings.env + # Raise an error if the directive does not have contents. self.assert_has_content() @@ -27,10 +30,20 @@ def run(self): paragraph = nodes.paragraph() self.state.nested_parse(self.content, self.content_offset, paragraph) - result = nodes.section(ids=['limitation']) + + tgtid = 'index-%s' % env.new_serialno('index') + indexnode = addnodes.index() + indexnode['entries'] = [ + ('single', 'Limitation; ' + self.arguments[0] , tgtid , '', None) + ] + + + result = nodes.section(ids=['limitation']) result += nodes.title(text=title) #result += nodes.paragraph(text=text) result += paragraph + result += indexnode + return [result] def setup(app):