summaryrefslogtreecommitdiffstats
path: root/Doc/tools
diff options
context:
space:
mode:
authorFred Drake <fdrake@acm.org>2000-11-28 16:20:50 (GMT)
committerFred Drake <fdrake@acm.org>2000-11-28 16:20:50 (GMT)
commit0a0ef8696b560dd03a9619820dad255b34ef7423 (patch)
treedb751ab5a6fd5ac7aaa2db954e5b8a8abe98e86f /Doc/tools
parentd7aa0f245ffd4511abad1ca86bdcc8da157e75cd (diff)
downloadcpython-0a0ef8696b560dd03a9619820dad255b34ef7423.zip
cpython-0a0ef8696b560dd03a9619820dad255b34ef7423.tar.gz
cpython-0a0ef8696b560dd03a9619820dad255b34ef7423.tar.bz2
Use a subclass of buildindex.Node to clean up the HTML and get the
ordering fixed up (this makes sure that "xml.dom" comes before "xml.dom.minidom" in the Module Index, which was not true before because some HTML cruft crept into the data structures).
Diffstat (limited to 'Doc/tools')
-rwxr-xr-xDoc/tools/mkmodindex22
1 files changed, 18 insertions, 4 deletions
diff --git a/Doc/tools/mkmodindex b/Doc/tools/mkmodindex
index 257e30a..3bc4b95 100755
--- a/Doc/tools/mkmodindex
+++ b/Doc/tools/mkmodindex
@@ -48,6 +48,23 @@ class IndexOptions(support.Options):
print __doc__ % {"program": program}
+class Node(buildindex.Node):
+ annotation = ""
+
+ def __init__(self, link, str, seqno):
+ parts = str.split(None, 1)
+ if parts[0].endswith("</tt>"):
+ self.modname = parts[0][:-5]
+ else:
+ self.modname = parts[0]
+ if len(parts) == 2:
+ self.annotation = parts[1]
+ buildindex.Node.__init__(self, link, self.modname, seqno)
+
+ def __str__(self):
+ return '<tt class="module">%s</tt> %s' \
+ % (self.modname, self.annotation)
+
_rx = re.compile(
"<dt><a href='(module-.*\.html)#l2h-\d+'><tt class='module'>"
"([a-zA-Z_][a-zA-Z0-9_.]*</tt>(\s*<em>"
@@ -83,10 +100,7 @@ def main():
basename, modname = m.group(1, 2)
has_plat_flag = has_plat_flag or m.group(3)
linkfile = os.path.join(dirname, basename)
- nodes.append(buildindex.Node(
- '<a href="%s">' % linkfile,
- "<tt class=module>%s</tt>" % modname,
- seqno))
+ nodes.append(Node('<a href="%s">' % linkfile, modname, seqno))
seqno = seqno + 1
ifp.close()
#