From 135e66f3115a8e5d02cba0171b189b2b07b2b079 Mon Sep 17 00:00:00 2001 From: CAM Gerlach Date: Wed, 29 Jun 2022 08:03:49 -0500 Subject: [PATCH] Infra: Link topic index pages in rendered PEP topic headers (#2689) --- .../pep_processor/transforms/pep_headers.py | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/pep_sphinx_extensions/pep_processor/transforms/pep_headers.py b/pep_sphinx_extensions/pep_processor/transforms/pep_headers.py index 90872de0a..5fcb0e58c 100644 --- a/pep_sphinx_extensions/pep_processor/transforms/pep_headers.py +++ b/pep_sphinx_extensions/pep_processor/transforms/pep_headers.py @@ -98,6 +98,17 @@ class PEPHeaders(transforms.Transform): target = self.document.settings.pep_url.format(int(pep_str)) new_body += [nodes.reference("", pep_str, refuri=target), nodes.Text(", ")] para[:] = new_body[:-1] # drop trailing space + elif name == "topic": + new_body = [] + for topic_name in body.astext().split(","): + if topic_name: + target = f"/topic/{topic_name.lower().strip()}/" + new_body += [ + nodes.reference("", topic_name, refuri=target), + nodes.Text(", "), + ] + if new_body: + para[:] = new_body[:-1] # Drop trailing space/comma elif name in {"last-modified", "content-type", "version"}: # Mark unneeded fields fields_to_remove.append(field)