Mercurial > dive4elements > river
view artifacts/contrib/check-i18n-properties.py @ 6304:152e1ba8e5bd
Rework ATWriter/Exporter
- Make the write function static as both data and gauge information
is necessary for writing.
- Use the rivers WST unit for the gauge datum
- Handle the case that we are at a gauge
- Differentiate between calculated values
- Always work with w in CM and thus avoid double number format problems
author | Andre Heinecke <aheinecke@intevation.de> |
---|---|
date | Wed, 12 Jun 2013 16:07:28 +0200 |
parents | 5aa05a7a34b7 |
children |
line wrap: on
line source
#!/usr/bin/env python import sys import re SPLIT_RE = re.compile(r"^\s*([^=]+)=\s*(.*)\s*") def load_properties_file(filename): props = {} with open(filename, "r") as f: while True: line = f.readline() if not line: break m = SPLIT_RE.match(line) if not m: continue k = m.group(1).strip() v = m.group(2).strip() if k in props: print >> sys.stderr, "'%s' found more than once in '%s'." % ( k, filename) else: props[k] = v return props def main(): props = [(arg, load_properties_file(arg)) for arg in sys.argv[1:]] l = len(props) for i in range(0, l): a = props[i][1] for j in range(i+1, l): b = props[j][1] for k in a.iterkeys(): if k not in b: print >> sys.stderr, "'%s' found in '%s' but not in '%s'." % ( k, props[i][0], props[j][0]) for k in b.iterkeys(): if k not in a: print >> sys.stderr, "'%s' found in '%s' but not in '%s'." % ( k, props[j][0], props[i][0]) if __name__ == '__main__': main()