From 364a15da16f093f692afe6eb6bd97c6f4affee1b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Petr=20=C5=A0pa=C4=8Dek?= Date: Mon, 27 Jun 2022 17:03:47 +0200 Subject: [PATCH] Accept rst syntax in .. statement:: short: text Nested rst syntax is now parsed and rendered. E.g.: .. namedconf:statement:: example :short: Use ``this`` **cool** syntax! (cherry picked from commit 563eb8e1b94457700221ab938e750135b13e40a6) --- doc/arm/_ext/iscconf.py | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/doc/arm/_ext/iscconf.py b/doc/arm/_ext/iscconf.py index 122673839d..670dca4998 100644 --- a/doc/arm/_ext/iscconf.py +++ b/doc/arm/_ext/iscconf.py @@ -114,10 +114,18 @@ def domain_factory(domainname, domainlabel, todolist): def isc_short(self): return self.options.get("short", "") + def parse_nested_str(self, instr): + """Parse string as nested rst syntax and produce a node""" + raw = nodes.paragraph(text=instr) + parsed = nodes.paragraph() + self.state.nested_parse(raw, self.content_offset, parsed) + return parsed + def transform_content(self, contentnode: addnodes.desc_content) -> None: """autogenerate content from structured data""" if self.isc_short: - contentnode.insert(0, nodes.paragraph(text=self.isc_short)) + short_parsed = self.parse_nested_str(self.isc_short) + contentnode.insert(0, short_parsed) if self.isc_tags: tags = nodes.paragraph() tags += nodes.strong(text="Tags: ")