Mercurial > hg > config
changeset 499:84a865a880a8
a new way to view diffs based on sorted lines
author | Jeff Hammel <jhammel@mozilla.com> |
---|---|
date | Fri, 23 Aug 2013 08:25:41 -0700 |
parents | 95ba5770d2f0 |
children | 5af627460928 |
files | python/sortdiff.py |
diffstat | 1 files changed, 32 insertions(+), 0 deletions(-) [+] |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/python/sortdiff.py Fri Aug 23 08:25:41 2013 -0700 @@ -0,0 +1,32 @@ +#!/usr/bin/env python + +import optparse +import os +import sys + +def main(args=sys.argv[1:]): + + usage = '%prog [options]' + parser = optparse.OptionParser(usage=usage, description=__doc__) + options, args = parser.parse_args(args) + + lines = sys.stdin.readlines() + diff = {'+': set(), + '-': set()} + for line in lines: + for key, value in diff.items(): + if line.startswith(key): + value.add(line[1:].strip()) + + added = diff['+'].difference(diff['-']) + minus = diff['-'].difference(diff['+']) + + print '+++' + for line in sorted(added): + print line + print '---' + for line in sorted(minus): + print line + +if __name__ == '__main__': + main()