Mercurial > babel > old > mirror
annotate 0.9.x/scripts/dump_data.py @ 557:3c590f6f5dfa stable tip
Merged revisions 607 via svnmerge from
http://svn.edgewall.org/repos/babel/trunk
........
r607 | pjenvey | 2011-04-24 21:41:23 -0700 (Sun, 24 Apr 2011) | 3 lines
keywords only support space separated values, not comma separated
thanks agronholm
........
author | pjenvey |
---|---|
date | Mon, 25 Apr 2011 04:44:13 +0000 |
parents | e69a068990f0 |
children |
rev | line source |
---|---|
263 | 1 #!/usr/bin/env python |
2 # -*- coding: utf-8 -*- | |
3 # | |
4 # Copyright (C) 2007 Edgewall Software | |
5 # All rights reserved. | |
6 # | |
7 # This software is licensed as described in the file COPYING, which | |
8 # you should have received as part of this distribution. The terms | |
9 # are also available at http://babel.edgewall.org/wiki/License. | |
10 # | |
11 # This software consists of voluntary contributions made by many | |
12 # individuals. For the exact contribution history, see the revision | |
13 # history and logs, available at http://babel.edgewall.org/log/. | |
14 | |
381 | 15 from optparse import OptionParser |
263 | 16 from pprint import pprint |
17 import sys | |
18 | |
381 | 19 from babel.localedata import load, LocaleDataDict |
263 | 20 |
381 | 21 |
22 def main(): | |
23 parser = OptionParser(usage='%prog [options] locale [path]') | |
24 parser.add_option('--noinherit', action='store_false', dest='inherit', | |
25 help='do not merge inherited data into locale data') | |
26 parser.add_option('--resolve', action='store_true', dest='resolve', | |
27 help='resolve aliases in locale data') | |
28 parser.set_defaults(inherit=True, resolve=False) | |
29 options, args = parser.parse_args() | |
30 if len(args) not in (1, 2): | |
31 parser.error('incorrect number of arguments') | |
32 | |
33 data = load(args[0], merge_inherited=options.inherit) | |
34 if options.resolve: | |
35 data = LocaleDataDict(data) | |
36 if len(args) > 1: | |
37 for key in args[1].split('.'): | |
38 data = data[key] | |
391
e69a068990f0
Ported [424], [425], and [428] back to 0.9.x branch.
cmlenz
parents:
381
diff
changeset
|
39 if isinstance(data, dict): |
e69a068990f0
Ported [424], [425], and [428] back to 0.9.x branch.
cmlenz
parents:
381
diff
changeset
|
40 data = dict(data.items()) |
e69a068990f0
Ported [424], [425], and [428] back to 0.9.x branch.
cmlenz
parents:
381
diff
changeset
|
41 pprint(data) |
381 | 42 |
43 | |
44 if __name__ == '__main__': | |
45 main() |