summaryrefslogtreecommitdiffstats
path: root/Tools/scripts/logmerge.py
diff options
context:
space:
mode:
authorGuido van Rossum <guido@python.org>1998-03-24 05:30:29 (GMT)
committerGuido van Rossum <guido@python.org>1998-03-24 05:30:29 (GMT)
commited5b3d8b3c8077c8c57c8a825cae06e319b0994d (patch)
treef200df16bbb012dcfe74b75a990c32709e80f44a /Tools/scripts/logmerge.py
parent3db0e3713cd59d1c922002056f11ae5caf02805c (diff)
downloadcpython-ed5b3d8b3c8077c8c57c8a825cae06e319b0994d.zip
cpython-ed5b3d8b3c8077c8c57c8a825cae06e319b0994d.tar.gz
cpython-ed5b3d8b3c8077c8c57c8a825cae06e319b0994d.tar.bz2
give in to tab police
Diffstat (limited to 'Tools/scripts/logmerge.py')
-rwxr-xr-xTools/scripts/logmerge.py126
1 files changed, 63 insertions, 63 deletions
diff --git a/Tools/scripts/logmerge.py b/Tools/scripts/logmerge.py
index 51a5627..c26df30 100755
--- a/Tools/scripts/logmerge.py
+++ b/Tools/scripts/logmerge.py
@@ -26,25 +26,25 @@ from their output.
import os, sys, getopt, string, re
-sep1 = '='*77 + '\n' # file separator
-sep2 = '-'*28 + '\n' # revision separator
+sep1 = '='*77 + '\n' # file separator
+sep2 = '-'*28 + '\n' # revision separator
def main():
"""Main program"""
truncate_last = 0
opts, args = getopt.getopt(sys.argv[1:], "-t")
for o, a in opts:
- if o == '-t':
- truncate_last = 1
+ if o == '-t':
+ truncate_last = 1
database = []
while 1:
- chunk = read_chunk(sys.stdin)
- if not chunk:
- break
- records = digest_chunk(chunk)
- if truncate_last:
- del records[-1]
- database[len(database):] = records
+ chunk = read_chunk(sys.stdin)
+ if not chunk:
+ break
+ records = digest_chunk(chunk)
+ if truncate_last:
+ del records[-1]
+ database[len(database):] = records
database.sort()
database.reverse()
format_output(database)
@@ -58,19 +58,19 @@ def read_chunk(fp):
chunk = []
lines = []
while 1:
- line = fp.readline()
- if not line:
- break
- if line == sep1:
- if lines:
- chunk.append(lines)
- break
- if line == sep2:
- if lines:
- chunk.append(lines)
- lines = []
- else:
- lines.append(line)
+ line = fp.readline()
+ if not line:
+ break
+ if line == sep1:
+ if lines:
+ chunk.append(lines)
+ break
+ if line == sep2:
+ if lines:
+ chunk.append(lines)
+ lines = []
+ else:
+ lines.append(line)
return chunk
def digest_chunk(chunk):
@@ -79,53 +79,53 @@ def digest_chunk(chunk):
key = 'Working file:'
keylen = len(key)
for line in lines:
- if line[:keylen] == key:
- working_file = string.strip(line[keylen:])
- break
+ if line[:keylen] == key:
+ working_file = string.strip(line[keylen:])
+ break
else:
- working_file = None
+ working_file = None
records = []
for lines in chunk[1:]:
- revline = lines[0]
- dateline = lines[1]
- text = lines[2:]
- words = string.split(dateline)
- author = None
- if len(words) >= 3 and words[0] == 'date:':
- dateword = words[1]
- timeword = words[2]
- if timeword[-1:] == ';':
- timeword = timeword[:-1]
- date = dateword + ' ' + timeword
- if len(words) >= 5 and words[3] == 'author:':
- author = words[4]
- if author[-1:] == ';':
- author = author[:-1]
- else:
- date = None
- text.insert(0, revline)
- words = string.split(revline)
- if len(words) >= 2 and words[0] == 'revision':
- rev = words[1]
- else:
- rev = None
- text.insert(0, revline)
- records.append((date, working_file, rev, author, text))
+ revline = lines[0]
+ dateline = lines[1]
+ text = lines[2:]
+ words = string.split(dateline)
+ author = None
+ if len(words) >= 3 and words[0] == 'date:':
+ dateword = words[1]
+ timeword = words[2]
+ if timeword[-1:] == ';':
+ timeword = timeword[:-1]
+ date = dateword + ' ' + timeword
+ if len(words) >= 5 and words[3] == 'author:':
+ author = words[4]
+ if author[-1:] == ';':
+ author = author[:-1]
+ else:
+ date = None
+ text.insert(0, revline)
+ words = string.split(revline)
+ if len(words) >= 2 and words[0] == 'revision':
+ rev = words[1]
+ else:
+ rev = None
+ text.insert(0, revline)
+ records.append((date, working_file, rev, author, text))
return records
-
+
def format_output(database):
prevtext = None
prev = []
database.append((None, None, None, None, None)) # Sentinel
for (date, working_file, rev, author, text) in database:
- if text != prevtext:
- if prev:
- print sep2,
- for (p_date, p_working_file, p_rev, p_author) in prev:
- print p_date, p_author, p_working_file
- sys.stdout.writelines(prevtext)
- prev = []
- prev.append((date, working_file, rev, author))
- prevtext = text
+ if text != prevtext:
+ if prev:
+ print sep2,
+ for (p_date, p_working_file, p_rev, p_author) in prev:
+ print p_date, p_author, p_working_file
+ sys.stdout.writelines(prevtext)
+ prev = []
+ prev.append((date, working_file, rev, author))
+ prevtext = text
main()