summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rwxr-xr-xDoc/tools/sgmlconv/docfixer.py19
1 files changed, 15 insertions, 4 deletions
diff --git a/Doc/tools/sgmlconv/docfixer.py b/Doc/tools/sgmlconv/docfixer.py
index 0b73126..68fd4a3 100755
--- a/Doc/tools/sgmlconv/docfixer.py
+++ b/Doc/tools/sgmlconv/docfixer.py
@@ -131,10 +131,21 @@ DESCRIPTOR_ELEMENTS = (
)
def fixup_descriptors(doc):
- for tagName in DESCRIPTOR_ELEMENTS:
- nodes = find_all_elements(doc, tagName)
- for node in nodes:
- rewrite_descriptor(doc, node)
+ sections = find_all_elements(doc, "section")
+ for section in sections:
+ find_and_fix_descriptors(doc, section)
+
+
+def find_and_fix_descriptors(doc, container):
+ children = container.childNodes
+ for child in children:
+ if child.nodeType == xml.dom.core.ELEMENT:
+ tagName = child.tagName
+ if tagName in DESCRIPTOR_ELEMENTS:
+ rewrite_descriptor(doc, child)
+ elif tagName == "subsection":
+ find_and_fix_descriptors(doc, child)
+
def rewrite_descriptor(doc, descriptor):
#