Mercurial > mplayer.hg
view TOOLS/mphelp_check.py @ 26883:a365271c97a5
Revert commit r26897.
XviD is the correct spelling of the codec.
You can see it written in the codec own
documentation and header files.
Prefered name capitalization confirmed
in conversation with XviD developer (prunedtree).
author | iive |
---|---|
date | Wed, 28 May 2008 23:04:41 +0000 |
parents | 9065db6f98d9 |
children | 8715803f09e8 |
line wrap: on
line source
#!/usr/bin/python # Tool to compare MPlayer translation files against a base file. Reports # conflicting arguments, extra strings not present in the base file and # (optionally) missing strings. # Written by Uoti Urpala import sys import re def parse(filename): r = {} f = open(filename) it = iter(f) cur = '' for line in it: line = line.strip() if not line.startswith('#define'): while line and line[-1] == '\\': line = it.next().strip() continue _, name, value = line.split(None, 2) value = value.strip('"') while line[-1] == '\\': line = it.next().strip() value += line.rstrip('\\').strip('"') r[name] = value f.close() return r def compare(base, other, show_missing=False): r = re.compile('%[^diouxXeEfFgGaAcspn%]*[diouxXeEfFgGaAcspn%]') missing = [] for key in base: if key not in other: missing.append(key) continue if re.findall(r, base[key]) != re.findall(r, other[key]): print 'Mismatch: ', key print base[key] print other[key] print del other[key] if other: extra = other.keys() extra.sort() print 'Extra: ', ' '.join(extra) if show_missing and missing: missing.sort() print 'Missing: ', ' '.join(missing) if len(sys.argv) < 3: print 'Usage:\n'+sys.argv[0]+' [--missing] base_helpfile otherfile1 '\ '[otherfile2 ...]' sys.exit(1) i = 1 show_missing = False if sys.argv[i] in ( '--missing', '-missing' ): show_missing = True i = 2 base = parse(sys.argv[i]) for filename in sys.argv[i+1:]: print '*****', filename compare(base, parse(filename), show_missing) print '\n'