comparison scripts/import_cldr.py @ 346:5e58ea360a5c stable-0.9.x

Merged revisions [358:360], [364:370], [373:378], [380:382] from [source:trunk].
author cmlenz
date Mon, 16 Jun 2008 12:48:43 +0000
parents da97a3138239
children 4eca63af0a12
comparison
equal deleted inserted replaced
321:eb7894f3323f 346:5e58ea360a5c
53 destdir = os.path.join(os.path.dirname(os.path.abspath(sys.argv[0])), 53 destdir = os.path.join(os.path.dirname(os.path.abspath(sys.argv[0])),
54 '..', 'babel') 54 '..', 'babel')
55 55
56 sup = parse(os.path.join(srcdir, 'supplemental', 'supplementalData.xml')) 56 sup = parse(os.path.join(srcdir, 'supplemental', 'supplementalData.xml'))
57 57
58 # import global data from the supplemental files 58 # Import global data from the supplemental files
59 global_data = {} 59 global_data = {}
60 60
61 territory_zones = global_data.setdefault('territory_zones', {}) 61 territory_zones = global_data.setdefault('territory_zones', {})
62 zone_aliases = global_data.setdefault('zone_aliases', {}) 62 zone_aliases = global_data.setdefault('zone_aliases', {})
63 zone_territories = global_data.setdefault('zone_territories', {}) 63 zone_territories = global_data.setdefault('zone_territories', {})
66 territory_zones.setdefault(elem.attrib['territory'], []).append(tzid) 66 territory_zones.setdefault(elem.attrib['territory'], []).append(tzid)
67 zone_territories[tzid] = elem.attrib['territory'] 67 zone_territories[tzid] = elem.attrib['territory']
68 if 'aliases' in elem.attrib: 68 if 'aliases' in elem.attrib:
69 for alias in elem.attrib['aliases'].split(): 69 for alias in elem.attrib['aliases'].split():
70 zone_aliases[alias] = tzid 70 zone_aliases[alias] = tzid
71
72 # Import Metazone mapping
73 meta_zones = global_data.setdefault('meta_zones', {})
74 tzsup = parse(os.path.join(srcdir, 'supplemental', 'metazoneInfo.xml'))
75 for elem in tzsup.findall('//timezone'):
76 for child in elem.findall('usesMetazone'):
77 if 'to' not in child.attrib: # FIXME: support old mappings
78 meta_zones[elem.attrib['type']] = child.attrib['mzone']
71 79
72 outfile = open(os.path.join(destdir, 'global.dat'), 'wb') 80 outfile = open(os.path.join(destdir, 'global.dat'), 'wb')
73 try: 81 try:
74 pickle.dump(global_data, outfile, 2) 82 pickle.dump(global_data, outfile, 2)
75 finally: 83 finally:
195 info['city'] = unicode(city) 203 info['city'] = unicode(city)
196 for child in elem.findall('long/*'): 204 for child in elem.findall('long/*'):
197 info.setdefault('long', {})[child.tag] = unicode(child.text) 205 info.setdefault('long', {})[child.tag] = unicode(child.text)
198 for child in elem.findall('short/*'): 206 for child in elem.findall('short/*'):
199 info.setdefault('short', {})[child.tag] = unicode(child.text) 207 info.setdefault('short', {})[child.tag] = unicode(child.text)
200 for child in elem.findall('usesMetazone'):
201 if 'to' not in child.attrib: # FIXME: support old mappings
202 info['use_metazone'] = child.attrib['mzone']
203 time_zones[elem.attrib['type']] = info 208 time_zones[elem.attrib['type']] = info
204 209
205 meta_zones = data.setdefault('meta_zones', {}) 210 meta_zones = data.setdefault('meta_zones', {})
206 for elem in tree.findall('//timeZoneNames/metazone'): 211 for elem in tree.findall('//timeZoneNames/metazone'):
207 info = {} 212 info = {}
Copyright (C) 2012-2017 Edgewall Software