]> granicus.if.org Git - python/commitdiff
Use a subclass of buildindex.Node to clean up the HTML and get the
authorFred Drake <fdrake@acm.org>
Tue, 28 Nov 2000 16:20:50 +0000 (16:20 +0000)
committerFred Drake <fdrake@acm.org>
Tue, 28 Nov 2000 16:20:50 +0000 (16:20 +0000)
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).

Doc/tools/mkmodindex

index 257e30aa01858de67a82c33385e329e274748410..3bc4b956ea20c721a8c1e050aa1e579e11db9461 100755 (executable)
@@ -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()
     #