summaryrefslogtreecommitdiffstats
path: root/Doc/indfix.py
diff options
context:
space:
mode:
authorFred Drake <fdrake@acm.org>1998-03-06 21:16:47 (GMT)
committerFred Drake <fdrake@acm.org>1998-03-06 21:16:47 (GMT)
commit2023d38a58047b5971a8c2b099e92898ddeff1a8 (patch)
tree07ac3e5f2a1b3102c0f677004c37b47efc5ce92b /Doc/indfix.py
parent0b0e7b56865aad1c08f8f7d5f32534a92e59e90c (diff)
downloadcpython-2023d38a58047b5971a8c2b099e92898ddeff1a8.zip
cpython-2023d38a58047b5971a8c2b099e92898ddeff1a8.tar.gz
cpython-2023d38a58047b5971a8c2b099e92898ddeff1a8.tar.bz2
Relocating file to Doc/tools.
Diffstat (limited to 'Doc/indfix.py')
-rwxr-xr-xDoc/indfix.py92
1 files changed, 0 insertions, 92 deletions
diff --git a/Doc/indfix.py b/Doc/indfix.py
deleted file mode 100755
index 395f095..0000000
--- a/Doc/indfix.py
+++ /dev/null
@@ -1,92 +0,0 @@
-#! /usr/bin/env python
-
-"""Combine similar index entries into an entry and subentries.
-
-For example:
-
- \item {foobar} (in module flotz), 23
- \item {foobar} (in module whackit), 4323
-
-becomes
-
- \item {foobar}
- \subitem in module flotz, 23
- \subitem in module whackit, 4323
-
-Note that an item which matches the format of a collapsable item but which
-isn't part of a group of similar items is not modified.
-"""
-__version__ = '$Revision$'
-
-import re
-import string
-import StringIO
-import sys
-
-
-def cmp_entries(e1, e2, lower=string.lower):
- return cmp(lower(e1[1]), lower(e2[1])) or cmp(e1, e2)
-
-
-def dump_entries(write, entries):
- if len(entries) == 1:
- write(" \\item %s (%s)%s\n" % entries[0])
- return
- write(" \item %s\n" % entries[0][0])
- # now sort these in a case insensitive manner:
- if len(entries) > 0:
- entries.sort(cmp_entries)
- for xxx, subitem, pages in entries:
- write(" \subitem %s%s\n" % (subitem, pages))
-
-
-breakable_re = re.compile(
- r" \\item (.*) [(](.*)[)]((?:(?:, \d+)|(?:, \\[a-z]*\{\d+\}))+)")
-
-def main():
- import getopt
- outfile = None
- opts, args = getopt.getopt(sys.argv[1:], "o:")
- for opt, val in opts:
- if opt in ("-o", "--output"):
- outfile = val
- filename = args[0]
- outfile = outfile or filename
- if filename == "-":
- fp = sys.stdin
- else:
- fp = open(filename)
- ofp = StringIO.StringIO()
- entries = []
- match = breakable_re.match
- write = ofp.write
- while 1:
- line = fp.readline()
- if not line:
- break
- m = match(line)
- if m:
- entry = m.group(1, 2, 3)
- if entries and entries[-1][0] != entry[0]:
- dump_entries(write, entries)
- entries = []
- entries.append(entry)
- elif entries:
- dump_entries(write, entries)
- entries = []
- write(line)
- else:
- write(line)
- del write
- del match
- fp.close()
- if outfile == "-":
- fp = sys.stdout
- else:
- fp = open(outfile, "w")
- fp.write(ofp.getvalue())
- fp.close()
-
-
-if __name__ == "__main__":
- main()