It has many grumbles about spacing, but at least this code is currently consistent about its departure from PEP8's spacing rules (and closer to Qt's) for the present. We can review whether to do a drastic spacing revolution later. Change-Id: Ife4e8a5b02b63434bd9c7ac7ba4cbc11b6311f9f Reviewed-by: Mate Barany <mate.barany@qt.io>
896 lines
46 KiB
Python
896 lines
46 KiB
Python
# Copyright (C) 2021 The Qt Company Ltd.
|
||
# SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0
|
||
|
||
"""Assorted enumerations implicated in public API.
|
||
|
||
The numberings of these enumerations can only change at major
|
||
versions. When new CLDR data implies adding entries, the new ones must
|
||
go after all existing ones. See also zonedata.py for enumerations
|
||
related to timezones and CLDR, which can more freely be changed
|
||
between versions.
|
||
|
||
A run of cldr2qlocalexml.py will produce output reporting any
|
||
language, script and territory codes it sees, in data, for which it
|
||
can find a name (taken always from en.xml) that could potentially be
|
||
used. There is no point adding a mapping for such a code unless the
|
||
CLDR's common/main/ contains an XML file for at least one locale that
|
||
exercises it (and little point, even then, absent substantial data,
|
||
ignoring draft='unconfirmed' entries).
|
||
|
||
Each *_map reflects the current values of its enums in qlocale.h; if
|
||
new xml language files are available in CLDR, these languages and
|
||
territories need to be *appended* to this list (for compatibility
|
||
between versions). Include any spaces and dashes present in names
|
||
(they'll be squished out for the enum entries) in *_map, but use the
|
||
squished forms of names in the *_aliases mappings. The squishing also
|
||
turns the first letter of each word into a capital so you can safely
|
||
preserve the case of en.xml's name; but omit (or replace with space)
|
||
any punctuation aside from dashes and map any accented letters to
|
||
their un-accented plain ASCII. The two tables, for each enum, have
|
||
the forms:
|
||
* map { Numeric value: ("Proper name", "ISO code") }
|
||
* alias { "OldName": "CurrentName" }
|
||
|
||
TODO: add support for marking entries as deprecated from a specified
|
||
version. For aliases that merely deprecates the name. Where we have a
|
||
name for which CLDR offers no data, we may also want to deprecate
|
||
entries in the map - although they may be worth keeping for the
|
||
benefit of QLocaleSelector (see QTBUG-112765), if other
|
||
locale-specific resources might have use of them.
|
||
|
||
For a new major version (and only then), we can change the numbering,
|
||
so re-sort each list into alphabetic order (e.g. using sort -k2); but
|
||
keep the Any and C entries first. That's why those are offset with a
|
||
blank line, below. After doing that, regenerate locale data as usual;
|
||
this will cause a binary-incompatible change.
|
||
|
||
Note on 'macrolanguage' comments: see QTBUG-107781 and 'ISO 639
|
||
macrolanguage' on Wikipedia. A 'macrolanguage' is (loosely-speaking) a
|
||
group of languages so closely related to one another that they could
|
||
also be regarded as divergent dialects of the macrolanguage. In some
|
||
cases this may mean a resource (such as translation or text-to-speech
|
||
data) may describe itself as pertaining to the macrolanguage, implying
|
||
its suitability for use in any of the languages within the
|
||
macrolanguage. For example, no_NO might be used for a generic
|
||
Norwegian resource, embracing both nb_NO and nn_NO.
|
||
|
||
"""
|
||
|
||
language_map = {
|
||
0: ("AnyLanguage", " "),
|
||
1: ("C", " "),
|
||
|
||
2: ("Abkhazian", "ab"),
|
||
3: ("Afar", "aa"),
|
||
4: ("Afrikaans", "af"),
|
||
5: ("Aghem", "agq"),
|
||
6: ("Akan", "ak"), # macrolanguage
|
||
7: ("Akkadian", "akk"),
|
||
8: ("Akoose", "bss"),
|
||
9: ("Albanian", "sq"), # macrolanguage
|
||
10: ("American Sign Language", "ase"),
|
||
11: ("Amharic", "am"),
|
||
12: ("Ancient Egyptian", "egy"),
|
||
13: ("Ancient Greek", "grc"),
|
||
14: ("Arabic", "ar"), # macrolanguage
|
||
15: ("Aragonese", "an"),
|
||
16: ("Aramaic", "arc"),
|
||
17: ("Armenian", "hy"),
|
||
18: ("Assamese", "as"),
|
||
19: ("Asturian", "ast"),
|
||
20: ("Asu", "asa"),
|
||
21: ("Atsam", "cch"),
|
||
22: ("Avaric", "av"),
|
||
23: ("Avestan", "ae"),
|
||
24: ("Aymara", "ay"), # macrolanguage
|
||
25: ("Azerbaijani", "az"), # macrolanguage
|
||
26: ("Bafia", "ksf"),
|
||
27: ("Balinese", "ban"),
|
||
28: ("Bambara", "bm"),
|
||
29: ("Bamun", "bax"),
|
||
30: ("Bangla", "bn"),
|
||
31: ("Basaa", "bas"),
|
||
32: ("Bashkir", "ba"),
|
||
33: ("Basque", "eu"),
|
||
34: ("Batak Toba", "bbc"),
|
||
35: ("Belarusian", "be"),
|
||
36: ("Bemba", "bem"),
|
||
37: ("Bena", "bez"),
|
||
38: ("Bhojpuri", "bho"),
|
||
39: ("Bislama", "bi"),
|
||
40: ("Blin", "byn"),
|
||
41: ("Bodo", "brx"),
|
||
42: ("Bosnian", "bs"),
|
||
43: ("Breton", "br"),
|
||
44: ("Buginese", "bug"),
|
||
45: ("Bulgarian", "bg"),
|
||
46: ("Burmese", "my"),
|
||
47: ("Cantonese", "yue"),
|
||
48: ("Catalan", "ca"),
|
||
49: ("Cebuano", "ceb"),
|
||
50: ("Central Atlas Tamazight", "tzm"),
|
||
51: ("Central Kurdish", "ckb"),
|
||
52: ("Chakma", "ccp"),
|
||
53: ("Chamorro", "ch"),
|
||
54: ("Chechen", "ce"),
|
||
55: ("Cherokee", "chr"),
|
||
56: ("Chickasaw", "cic"),
|
||
57: ("Chiga", "cgg"),
|
||
58: ("Chinese", "zh"), # macrolanguage
|
||
59: ("Church", "cu"), # macrolanguage
|
||
60: ("Chuvash", "cv"),
|
||
61: ("Colognian", "ksh"),
|
||
62: ("Coptic", "cop"),
|
||
63: ("Cornish", "kw"),
|
||
64: ("Corsican", "co"),
|
||
65: ("Cree", "cr"), # macrolanguage
|
||
66: ("Croatian", "hr"),
|
||
67: ("Czech", "cs"),
|
||
68: ("Danish", "da"),
|
||
69: ("Divehi", "dv"),
|
||
70: ("Dogri", "doi"), # macrolanguage
|
||
71: ("Duala", "dua"),
|
||
72: ("Dutch", "nl"),
|
||
73: ("Dzongkha", "dz"),
|
||
74: ("Embu", "ebu"),
|
||
75: ("English", "en"),
|
||
76: ("Erzya", "myv"),
|
||
77: ("Esperanto", "eo"),
|
||
78: ("Estonian", "et"), # macrolanguage
|
||
79: ("Ewe", "ee" ),
|
||
80: ("Ewondo", "ewo"),
|
||
81: ("Faroese", "fo"),
|
||
82: ("Fijian", "fj"),
|
||
83: ("Filipino", "fil"),
|
||
84: ("Finnish", "fi"),
|
||
85: ("French", "fr"),
|
||
86: ("Friulian", "fur"),
|
||
87: ("Fulah", "ff"), # macrolanguage
|
||
88: ("Gaelic", "gd"),
|
||
89: ("Ga", "gaa"),
|
||
90: ("Galician", "gl"),
|
||
91: ("Ganda", "lg"),
|
||
92: ("Geez", "gez"),
|
||
93: ("Georgian", "ka"),
|
||
94: ("German", "de"),
|
||
95: ("Gothic", "got"),
|
||
96: ("Greek", "el"),
|
||
97: ("Guarani", "gn"), # macrolanguage
|
||
98: ("Gujarati", "gu"),
|
||
99: ("Gusii", "guz"),
|
||
100: ("Haitian", "ht"),
|
||
101: ("Hausa", "ha"),
|
||
102: ("Hawaiian", "haw"),
|
||
103: ("Hebrew", "he"),
|
||
104: ("Herero", "hz"),
|
||
105: ("Hindi", "hi"),
|
||
106: ("Hiri Motu", "ho"),
|
||
107: ("Hungarian", "hu"),
|
||
108: ("Icelandic", "is"),
|
||
109: ("Ido", "io"),
|
||
110: ("Igbo", "ig" ),
|
||
111: ("Inari Sami", "smn"),
|
||
112: ("Indonesian", "id"),
|
||
113: ("Ingush", "inh"),
|
||
114: ("Interlingua", "ia"),
|
||
115: ("Interlingue", "ie"),
|
||
116: ("Inuktitut", "iu"), # macrolanguage
|
||
117: ("Inupiaq", "ik"), # macrolanguage
|
||
118: ("Irish", "ga"),
|
||
119: ("Italian", "it"),
|
||
120: ("Japanese", "ja"),
|
||
121: ("Javanese", "jv"),
|
||
122: ("Jju", "kaj"),
|
||
123: ("Jola-Fonyi", "dyo"),
|
||
124: ("Kabuverdianu", "kea"),
|
||
125: ("Kabyle", "kab"),
|
||
126: ("Kako", "kkj"),
|
||
127: ("Kalaallisut", "kl"),
|
||
128: ("Kalenjin", "kln"),
|
||
129: ("Kamba", "kam"),
|
||
130: ("Kannada", "kn"),
|
||
131: ("Kanuri", "kr"), # macrolanguage
|
||
132: ("Kashmiri", "ks"),
|
||
133: ("Kazakh", "kk"),
|
||
134: ("Kenyang", "ken"),
|
||
135: ("Khmer", "km"),
|
||
136: ("Kiche", "quc"),
|
||
137: ("Kikuyu", "ki"),
|
||
138: ("Kinyarwanda", "rw"),
|
||
139: ("Komi", "kv"), # macrolanguage
|
||
140: ("Kongo", "kg"), # macrolanguage
|
||
141: ("Konkani", "kok"),
|
||
142: ("Korean", "ko"),
|
||
143: ("Koro", "kfo"),
|
||
144: ("Koyraboro Senni", "ses"),
|
||
145: ("Koyra Chiini", "khq"),
|
||
146: ("Kpelle", "kpe"),
|
||
147: ("Kuanyama", "kj"),
|
||
148: ("Kurdish", "ku"), # macrolanguage
|
||
149: ("Kwasio", "nmg"),
|
||
150: ("Kyrgyz", "ky"),
|
||
151: ("Lakota", "lkt"),
|
||
152: ("Langi", "lag"),
|
||
153: ("Lao", "lo"),
|
||
154: ("Latin", "la"),
|
||
155: ("Latvian", "lv"), # macrolanguage
|
||
156: ("Lezghian", "lez"),
|
||
157: ("Limburgish", "li"),
|
||
158: ("Lingala", "ln"),
|
||
159: ("Literary Chinese", "lzh"),
|
||
160: ("Lithuanian", "lt"),
|
||
161: ("Lojban", "jbo"),
|
||
162: ("Lower Sorbian", "dsb"),
|
||
163: ("Low German", "nds"),
|
||
164: ("Luba-Katanga", "lu"),
|
||
165: ("Lule Sami", "smj"),
|
||
166: ("Luo", "luo"),
|
||
167: ("Luxembourgish", "lb"),
|
||
168: ("Luyia", "luy"),
|
||
169: ("Macedonian", "mk"),
|
||
170: ("Machame", "jmc"),
|
||
171: ("Maithili", "mai"),
|
||
172: ("Makhuwa-Meetto", "mgh"),
|
||
173: ("Makonde", "kde"),
|
||
174: ("Malagasy", "mg"), # macrolanguage
|
||
175: ("Malayalam", "ml"),
|
||
176: ("Malay", "ms"), # macrolanguage
|
||
177: ("Maltese", "mt"),
|
||
178: ("Mandingo", "man"), # macrolanguage
|
||
179: ("Manipuri", "mni"),
|
||
180: ("Manx", "gv"),
|
||
181: ("Maori", "mi"),
|
||
182: ("Mapuche", "arn"),
|
||
183: ("Marathi", "mr"),
|
||
184: ("Marshallese", "mh"),
|
||
185: ("Masai", "mas"),
|
||
186: ("Mazanderani", "mzn"),
|
||
187: ("Mende", "men"),
|
||
188: ("Meru", "mer"),
|
||
189: ("Meta", "mgo"),
|
||
190: ("Mohawk", "moh"),
|
||
191: ("Mongolian", "mn"), # macrolanguage
|
||
192: ("Morisyen", "mfe"),
|
||
193: ("Mundang", "mua"),
|
||
194: ("Muscogee", "mus"),
|
||
195: ("Nama", "naq"),
|
||
196: ("Nauru", "na"),
|
||
197: ("Navajo", "nv"),
|
||
198: ("Ndonga", "ng"),
|
||
199: ("Nepali", "ne"), # macrolanguage
|
||
200: ("Newari", "new"),
|
||
201: ("Ngiemboon", "nnh"),
|
||
202: ("Ngomba", "jgo"),
|
||
203: ("Nigerian Pidgin", "pcm"),
|
||
204: ("Nko", "nqo"),
|
||
205: ("Northern Luri", "lrc"),
|
||
206: ("Northern Sami", "se" ),
|
||
207: ("Northern Sotho", "nso"),
|
||
208: ("North Ndebele", "nd"),
|
||
209: ("Norwegian Bokmal", "nb"),
|
||
210: ("Norwegian Nynorsk", "nn"),
|
||
211: ("Nuer", "nus"),
|
||
212: ("Nyanja", "ny" ),
|
||
213: ("Nyankole", "nyn"),
|
||
214: ("Occitan", "oc"),
|
||
215: ("Odia", "or"), # macrolanguage
|
||
216: ("Ojibwa", "oj"), # macrolanguage
|
||
217: ("Old Irish", "sga"),
|
||
218: ("Old Norse", "non"),
|
||
219: ("Old Persian", "peo"),
|
||
220: ("Oromo", "om"), # macrolanguage
|
||
221: ("Osage", "osa"),
|
||
222: ("Ossetic", "os"),
|
||
223: ("Pahlavi", "pal"),
|
||
224: ("Palauan", "pau"),
|
||
225: ("Pali", "pi"), # macrolanguage
|
||
226: ("Papiamento", "pap"),
|
||
227: ("Pashto", "ps"), # macrolanguage
|
||
228: ("Persian", "fa"), # macrolanguage
|
||
229: ("Phoenician", "phn"),
|
||
230: ("Polish", "pl"),
|
||
231: ("Portuguese", "pt"),
|
||
232: ("Prussian", "prg"),
|
||
233: ("Punjabi", "pa"),
|
||
234: ("Quechua", "qu"), # macrolanguage
|
||
235: ("Romanian", "ro"),
|
||
236: ("Romansh", "rm"),
|
||
237: ("Rombo", "rof"),
|
||
238: ("Rundi", "rn"),
|
||
239: ("Russian", "ru"),
|
||
240: ("Rwa", "rwk"),
|
||
241: ("Saho", "ssy"),
|
||
242: ("Sakha", "sah"),
|
||
243: ("Samburu", "saq"),
|
||
244: ("Samoan", "sm"),
|
||
245: ("Sango", "sg"),
|
||
246: ("Sangu", "sbp"),
|
||
247: ("Sanskrit", "sa"),
|
||
248: ("Santali", "sat"),
|
||
249: ("Sardinian", "sc"), # macrolanguage
|
||
250: ("Saurashtra", "saz"),
|
||
251: ("Sena", "seh"),
|
||
252: ("Serbian", "sr"),
|
||
253: ("Shambala", "ksb"),
|
||
254: ("Shona", "sn"),
|
||
255: ("Sichuan Yi", "ii" ),
|
||
256: ("Sicilian", "scn"),
|
||
257: ("Sidamo", "sid"),
|
||
258: ("Silesian", "szl"),
|
||
259: ("Sindhi", "sd"),
|
||
260: ("Sinhala", "si"),
|
||
261: ("Skolt Sami", "sms"),
|
||
262: ("Slovak", "sk"),
|
||
263: ("Slovenian", "sl"),
|
||
264: ("Soga", "xog"),
|
||
265: ("Somali", "so"),
|
||
266: ("Southern Kurdish", "sdh"),
|
||
267: ("Southern Sami", "sma"),
|
||
268: ("Southern Sotho", "st"),
|
||
269: ("South Ndebele", "nr" ),
|
||
270: ("Spanish", "es"),
|
||
271: ("Standard Moroccan Tamazight", "zgh"),
|
||
272: ("Sundanese", "su"),
|
||
273: ("Swahili", "sw"), # macrolanguage
|
||
274: ("Swati", "ss"),
|
||
275: ("Swedish", "sv"),
|
||
276: ("Swiss German", "gsw"),
|
||
277: ("Syriac", "syr"),
|
||
278: ("Tachelhit", "shi"),
|
||
279: ("Tahitian", "ty"),
|
||
280: ("Tai Dam", "blt"),
|
||
281: ("Taita", "dav"),
|
||
282: ("Tajik", "tg"),
|
||
283: ("Tamil", "ta"),
|
||
284: ("Taroko", "trv"),
|
||
285: ("Tasawaq", "twq"),
|
||
286: ("Tatar", "tt"),
|
||
287: ("Telugu", "te"),
|
||
288: ("Teso", "teo"),
|
||
289: ("Thai", "th"),
|
||
290: ("Tibetan", "bo"),
|
||
291: ("Tigre", "tig"),
|
||
292: ("Tigrinya", "ti"),
|
||
293: ("Tokelau", "tkl"),
|
||
294: ("Tok Pisin", "tpi"),
|
||
295: ("Tongan", "to"),
|
||
296: ("Tsonga", "ts"),
|
||
297: ("Tswana", "tn"),
|
||
298: ("Turkish", "tr"),
|
||
299: ("Turkmen", "tk"),
|
||
300: ("Tuvalu", "tvl"),
|
||
301: ("Tyap", "kcg"),
|
||
302: ("Ugaritic", "uga"),
|
||
303: ("Ukrainian", "uk"),
|
||
304: ("Upper Sorbian", "hsb"),
|
||
305: ("Urdu", "ur"),
|
||
306: ("Uyghur", "ug"),
|
||
307: ("Uzbek", "uz"), # macrolanguage
|
||
308: ("Vai", "vai"),
|
||
309: ("Venda", "ve" ),
|
||
310: ("Vietnamese", "vi"),
|
||
311: ("Volapuk", "vo"),
|
||
312: ("Vunjo", "vun"),
|
||
313: ("Walloon", "wa"),
|
||
314: ("Walser", "wae"),
|
||
315: ("Warlpiri", "wbp"),
|
||
316: ("Welsh", "cy"),
|
||
317: ("Western Balochi", "bgn"),
|
||
318: ("Western Frisian", "fy"),
|
||
319: ("Wolaytta", "wal"),
|
||
320: ("Wolof", "wo"),
|
||
321: ("Xhosa", "xh"),
|
||
322: ("Yangben", "yav"),
|
||
323: ("Yiddish", "yi"), # macrolanguage
|
||
324: ("Yoruba", "yo"),
|
||
325: ("Zarma", "dje"),
|
||
326: ("Zhuang", "za"), # macrolanguage
|
||
327: ("Zulu", "zu"),
|
||
# added in CLDR v40
|
||
328: ("Kaingang", "kgp"),
|
||
329: ("Nheengatu", "yrl"),
|
||
# added in CLDR v42
|
||
330: ("Haryanvi", "bgc"),
|
||
331: ("Northern Frisian", "frr"),
|
||
332: ("Rajasthani", "raj"),
|
||
333: ("Moksha", "mdf"),
|
||
334: ("Toki Pona", "tok"),
|
||
335: ("Pijin", "pis"),
|
||
336: ("Obolo", "ann"),
|
||
# added in CLDR v43
|
||
337: ("Baluchi", "bal"),
|
||
338: ("Ligurian", "lij"),
|
||
339: ("Rohingya", "rhg"),
|
||
340: ("Torwali", "trw"),
|
||
# added in CLDR v44
|
||
341: ("Anii", "blo"),
|
||
342: ("Kangri", "xnr"),
|
||
343: ("Venetian", "vec"),
|
||
}
|
||
# Don't add languages just because they exist; check CLDR does provide
|
||
# substantial data for locales using it; and check, once added, they
|
||
# don't show up in cldr2qlocalexmo.py's unused listing. Do also check
|
||
# the data's draft status; if it's (nearly) all unconfirmed, leave it.
|
||
|
||
language_aliases = {
|
||
# Renamings prior to Qt 6.0 (CLDR v37):
|
||
'Afan': 'Oromo',
|
||
'Byelorussian': 'Belarusian',
|
||
'Bhutani': 'Dzongkha',
|
||
'Cambodian': 'Khmer',
|
||
'Kurundi': 'Rundi',
|
||
'RhaetoRomance': 'Romansh',
|
||
'Chewa': 'Nyanja',
|
||
'Frisian': 'WesternFrisian',
|
||
'Uigur': 'Uyghur',
|
||
# Renamings:
|
||
'Uighur': 'Uyghur',
|
||
'Kwanyama': 'Kuanyama',
|
||
'Inupiak': 'Inupiaq',
|
||
'Bengali': 'Bangla',
|
||
'CentralMoroccoTamazight': 'CentralAtlasTamazight',
|
||
'Greenlandic': 'Kalaallisut',
|
||
'Walamo': 'Wolaytta',
|
||
'Navaho': 'Navajo',
|
||
'Oriya': 'Odia',
|
||
'Kirghiz': 'Kyrgyz'
|
||
}
|
||
|
||
territory_map = {
|
||
0: ("AnyTerritory", "ZZ"),
|
||
|
||
1: ("Afghanistan", "AF"),
|
||
2: ("Aland Islands", "AX"),
|
||
3: ("Albania", "AL"),
|
||
4: ("Algeria", "DZ"),
|
||
5: ("American Samoa", "AS"),
|
||
6: ("Andorra", "AD"),
|
||
7: ("Angola", "AO"),
|
||
8: ("Anguilla", "AI"),
|
||
9: ("Antarctica", "AQ"),
|
||
10: ("Antigua and Barbuda", "AG"),
|
||
11: ("Argentina", "AR"),
|
||
12: ("Armenia", "AM"),
|
||
13: ("Aruba", "AW"),
|
||
14: ("Ascension Island", "AC"),
|
||
15: ("Australia", "AU"),
|
||
16: ("Austria", "AT"),
|
||
17: ("Azerbaijan", "AZ"),
|
||
18: ("Bahamas", "BS"),
|
||
19: ("Bahrain", "BH"),
|
||
20: ("Bangladesh", "BD"),
|
||
21: ("Barbados", "BB"),
|
||
22: ("Belarus", "BY"),
|
||
23: ("Belgium", "BE"),
|
||
24: ("Belize", "BZ"),
|
||
25: ("Benin", "BJ"),
|
||
26: ("Bermuda", "BM"),
|
||
27: ("Bhutan", "BT"),
|
||
28: ("Bolivia", "BO"),
|
||
29: ("Bosnia and Herzegovina", "BA"),
|
||
30: ("Botswana", "BW"),
|
||
31: ("Bouvet Island", "BV"),
|
||
32: ("Brazil", "BR"),
|
||
33: ("British Indian Ocean Territory", "IO"),
|
||
34: ("British Virgin Islands", "VG"),
|
||
35: ("Brunei", "BN"),
|
||
36: ("Bulgaria", "BG"),
|
||
37: ("Burkina Faso", "BF"),
|
||
38: ("Burundi", "BI"),
|
||
39: ("Cambodia", "KH"),
|
||
40: ("Cameroon", "CM"),
|
||
41: ("Canada", "CA"),
|
||
42: ("Canary Islands", "IC"),
|
||
43: ("Cape Verde", "CV"),
|
||
44: ("Caribbean Netherlands", "BQ"),
|
||
45: ("Cayman Islands", "KY"),
|
||
46: ("Central African Republic", "CF"),
|
||
47: ("Ceuta and Melilla", "EA"),
|
||
48: ("Chad", "TD"),
|
||
49: ("Chile", "CL"),
|
||
50: ("China", "CN"),
|
||
51: ("Christmas Island", "CX"),
|
||
52: ("Clipperton Island", "CP"),
|
||
53: ("Cocos Islands", "CC"),
|
||
54: ("Colombia", "CO"),
|
||
55: ("Comoros", "KM"),
|
||
56: ("Congo - Brazzaville", "CG"),
|
||
57: ("Congo - Kinshasa", "CD"),
|
||
58: ("Cook Islands", "CK"),
|
||
59: ("Costa Rica", "CR"),
|
||
60: ("Croatia", "HR"),
|
||
61: ("Cuba", "CU"),
|
||
62: ("Curacao", "CW"),
|
||
63: ("Cyprus", "CY"),
|
||
64: ("Czechia", "CZ"),
|
||
65: ("Denmark", "DK"),
|
||
66: ("Diego Garcia", "DG"),
|
||
67: ("Djibouti", "DJ"),
|
||
68: ("Dominica", "DM"),
|
||
69: ("Dominican Republic", "DO"),
|
||
70: ("Ecuador", "EC"),
|
||
71: ("Egypt", "EG"),
|
||
72: ("El Salvador", "SV"),
|
||
73: ("Equatorial Guinea", "GQ"),
|
||
74: ("Eritrea", "ER"),
|
||
75: ("Estonia", "EE"),
|
||
76: ("Eswatini", "SZ"),
|
||
77: ("Ethiopia", "ET"),
|
||
78: ("Europe", "150"),
|
||
79: ("European Union", "EU"),
|
||
80: ("Falkland Islands", "FK"),
|
||
81: ("Faroe Islands", "FO"),
|
||
82: ("Fiji", "FJ"),
|
||
83: ("Finland", "FI"),
|
||
84: ("France", "FR"),
|
||
85: ("French Guiana", "GF"),
|
||
86: ("French Polynesia", "PF"),
|
||
87: ("French Southern Territories", "TF"),
|
||
88: ("Gabon", "GA"),
|
||
89: ("Gambia", "GM"),
|
||
90: ("Georgia", "GE"),
|
||
91: ("Germany", "DE"),
|
||
92: ("Ghana", "GH"),
|
||
93: ("Gibraltar", "GI"),
|
||
94: ("Greece", "GR"),
|
||
95: ("Greenland", "GL"),
|
||
96: ("Grenada", "GD"),
|
||
97: ("Guadeloupe", "GP"),
|
||
98: ("Guam", "GU"),
|
||
99: ("Guatemala", "GT"),
|
||
100: ("Guernsey", "GG"),
|
||
101: ("Guinea-Bissau", "GW"),
|
||
102: ("Guinea", "GN"),
|
||
103: ("Guyana", "GY"),
|
||
104: ("Haiti", "HT"),
|
||
105: ("Heard and McDonald Islands", "HM"),
|
||
106: ("Honduras", "HN"),
|
||
107: ("Hong Kong", "HK"),
|
||
108: ("Hungary", "HU"),
|
||
109: ("Iceland", "IS"),
|
||
110: ("India", "IN"),
|
||
111: ("Indonesia", "ID"),
|
||
112: ("Iran", "IR"),
|
||
113: ("Iraq", "IQ"),
|
||
114: ("Ireland", "IE"),
|
||
115: ("Isle of Man", "IM"),
|
||
116: ("Israel", "IL"),
|
||
117: ("Italy", "IT"),
|
||
# Officially Côte d’Ivoire, which we'd need to map to CotedIvoire
|
||
# or CoteDIvoire, either failing to make the d' separate from Cote
|
||
# or messing with its case. So stick with Ivory Coast:
|
||
118: ("Ivory Coast", "CI"),
|
||
119: ("Jamaica", "JM"),
|
||
120: ("Japan", "JP"),
|
||
121: ("Jersey", "JE"),
|
||
122: ("Jordan", "JO"),
|
||
123: ("Kazakhstan", "KZ"),
|
||
124: ("Kenya", "KE"),
|
||
125: ("Kiribati", "KI"),
|
||
126: ("Kosovo", "XK"),
|
||
127: ("Kuwait", "KW"),
|
||
128: ("Kyrgyzstan", "KG"),
|
||
129: ("Laos", "LA"),
|
||
130: ("Latin America", "419"),
|
||
131: ("Latvia", "LV"),
|
||
132: ("Lebanon", "LB"),
|
||
133: ("Lesotho", "LS"),
|
||
134: ("Liberia", "LR"),
|
||
135: ("Libya", "LY"),
|
||
136: ("Liechtenstein", "LI"),
|
||
137: ("Lithuania", "LT"),
|
||
138: ("Luxembourg", "LU"),
|
||
139: ("Macao", "MO"),
|
||
140: ("Macedonia", "MK"),
|
||
141: ("Madagascar", "MG"),
|
||
142: ("Malawi", "MW"),
|
||
143: ("Malaysia", "MY"),
|
||
144: ("Maldives", "MV"),
|
||
145: ("Mali", "ML"),
|
||
146: ("Malta", "MT"),
|
||
147: ("Marshall Islands", "MH"),
|
||
148: ("Martinique", "MQ"),
|
||
149: ("Mauritania", "MR"),
|
||
150: ("Mauritius", "MU"),
|
||
151: ("Mayotte", "YT"),
|
||
152: ("Mexico", "MX"),
|
||
153: ("Micronesia", "FM"),
|
||
154: ("Moldova", "MD"),
|
||
155: ("Monaco", "MC"),
|
||
156: ("Mongolia", "MN"),
|
||
157: ("Montenegro", "ME"),
|
||
158: ("Montserrat", "MS"),
|
||
159: ("Morocco", "MA"),
|
||
160: ("Mozambique", "MZ"),
|
||
161: ("Myanmar", "MM"),
|
||
162: ("Namibia", "NA"),
|
||
163: ("Nauru", "NR"),
|
||
164: ("Nepal", "NP"),
|
||
165: ("Netherlands", "NL"),
|
||
166: ("New Caledonia", "NC"),
|
||
167: ("New Zealand", "NZ"),
|
||
168: ("Nicaragua", "NI"),
|
||
169: ("Nigeria", "NG"),
|
||
170: ("Niger", "NE"),
|
||
171: ("Niue", "NU"),
|
||
172: ("Norfolk Island", "NF"),
|
||
173: ("Northern Mariana Islands", "MP"),
|
||
174: ("North Korea", "KP"),
|
||
175: ("Norway", "NO"),
|
||
176: ("Oman", "OM"),
|
||
177: ("Outlying Oceania", "QO"),
|
||
178: ("Pakistan", "PK"),
|
||
179: ("Palau", "PW"),
|
||
180: ("Palestinian Territories", "PS"),
|
||
181: ("Panama", "PA"),
|
||
182: ("Papua New Guinea", "PG"),
|
||
183: ("Paraguay", "PY"),
|
||
184: ("Peru", "PE"),
|
||
185: ("Philippines", "PH"),
|
||
186: ("Pitcairn", "PN"),
|
||
187: ("Poland", "PL"),
|
||
188: ("Portugal", "PT"),
|
||
189: ("Puerto Rico", "PR"),
|
||
190: ("Qatar", "QA"),
|
||
191: ("Reunion", "RE"),
|
||
192: ("Romania", "RO"),
|
||
193: ("Russia", "RU"),
|
||
194: ("Rwanda", "RW"),
|
||
195: ("Saint Barthelemy", "BL"),
|
||
196: ("Saint Helena", "SH"),
|
||
197: ("Saint Kitts and Nevis", "KN"),
|
||
198: ("Saint Lucia", "LC"),
|
||
199: ("Saint Martin", "MF"),
|
||
200: ("Saint Pierre and Miquelon", "PM"),
|
||
201: ("Saint Vincent and Grenadines", "VC"),
|
||
202: ("Samoa", "WS"),
|
||
203: ("San Marino", "SM"),
|
||
204: ("Sao Tome and Principe", "ST"),
|
||
205: ("Saudi Arabia", "SA"),
|
||
206: ("Senegal", "SN"),
|
||
207: ("Serbia", "RS"),
|
||
208: ("Seychelles", "SC"),
|
||
209: ("Sierra Leone", "SL"),
|
||
210: ("Singapore", "SG"),
|
||
211: ("Sint Maarten", "SX"),
|
||
212: ("Slovakia", "SK"),
|
||
213: ("Slovenia", "SI"),
|
||
214: ("Solomon Islands", "SB"),
|
||
215: ("Somalia", "SO"),
|
||
216: ("South Africa", "ZA"),
|
||
217: ("South Georgia and South Sandwich Islands", "GS"),
|
||
218: ("South Korea", "KR"),
|
||
219: ("South Sudan", "SS"),
|
||
220: ("Spain", "ES"),
|
||
221: ("Sri Lanka", "LK"),
|
||
222: ("Sudan", "SD"),
|
||
223: ("Suriname", "SR"),
|
||
224: ("Svalbard and Jan Mayen", "SJ"),
|
||
225: ("Sweden", "SE"),
|
||
226: ("Switzerland", "CH"),
|
||
227: ("Syria", "SY"),
|
||
228: ("Taiwan", "TW"),
|
||
229: ("Tajikistan", "TJ"),
|
||
230: ("Tanzania", "TZ"),
|
||
231: ("Thailand", "TH"),
|
||
232: ("Timor-Leste", "TL"),
|
||
233: ("Togo", "TG"),
|
||
234: ("Tokelau", "TK"),
|
||
235: ("Tonga", "TO"),
|
||
236: ("Trinidad and Tobago", "TT"),
|
||
237: ("Tristan da Cunha", "TA"),
|
||
238: ("Tunisia", "TN"),
|
||
239: ("Turkey", "TR"),
|
||
240: ("Turkmenistan", "TM"),
|
||
241: ("Turks and Caicos Islands", "TC"),
|
||
242: ("Tuvalu", "TV"),
|
||
243: ("Uganda", "UG"),
|
||
244: ("Ukraine", "UA"),
|
||
245: ("United Arab Emirates", "AE"),
|
||
246: ("United Kingdom", "GB"),
|
||
247: ("United States Outlying Islands", "UM"),
|
||
248: ("United States", "US"),
|
||
249: ("United States Virgin Islands", "VI"),
|
||
250: ("Uruguay", "UY"),
|
||
251: ("Uzbekistan", "UZ"),
|
||
252: ("Vanuatu", "VU"),
|
||
253: ("Vatican City", "VA"),
|
||
254: ("Venezuela", "VE"),
|
||
255: ("Vietnam", "VN"),
|
||
256: ("Wallis and Futuna", "WF"),
|
||
257: ("Western Sahara", "EH"),
|
||
258: ("world", "001"),
|
||
259: ("Yemen", "YE"),
|
||
260: ("Zambia", "ZM"),
|
||
261: ("Zimbabwe", "ZW"),
|
||
}
|
||
|
||
territory_aliases = {
|
||
# Renamings prior to Qt 6.0 (CLDR v37):
|
||
'DemocraticRepublicOfCongo': 'CongoKinshasa',
|
||
'PeoplesRepublicOfCongo': 'CongoBrazzaville',
|
||
'DemocraticRepublicOfKorea': 'NorthKorea',
|
||
'RepublicOfKorea': 'SouthKorea',
|
||
'RussianFederation': 'Russia',
|
||
'SyrianArabRepublic': 'Syria',
|
||
'LatinAmericaAndTheCaribbean': 'LatinAmerica',
|
||
# Renamings:
|
||
'EastTimor': 'TimorLeste',
|
||
'Bonaire': 'CaribbeanNetherlands',
|
||
'Macau': 'Macao',
|
||
'SouthGeorgiaAndTheSouthSandwichIslands': 'SouthGeorgiaAndSouthSandwichIslands',
|
||
'WallisAndFutunaIslands': 'WallisAndFutuna',
|
||
'SaintVincentAndTheGrenadines': 'SaintVincentAndGrenadines',
|
||
'BosniaAndHerzegowina': 'BosniaAndHerzegovina',
|
||
'SvalbardAndJanMayenIslands': 'SvalbardAndJanMayen',
|
||
'VaticanCityState': 'VaticanCity',
|
||
'Swaziland': 'Eswatini',
|
||
'UnitedStatesMinorOutlyingIslands': 'UnitedStatesOutlyingIslands',
|
||
'CuraSao': 'Curacao',
|
||
'CzechRepublic': 'Czechia',
|
||
|
||
# Backwards compatibility with old Country enum, prior to Qt 6.2:
|
||
'AnyCountry': 'AnyTerritory',
|
||
'NauruCountry': 'NauruTerritory',
|
||
'TokelauCountry': 'TokelauTerritory',
|
||
'TuvaluCountry': 'TuvaluTerritory',
|
||
}
|
||
|
||
script_map = {
|
||
0: ("AnyScript", "Zzzz"),
|
||
|
||
1: ("Adlam", "Adlm"),
|
||
2: ("Ahom", "Ahom"),
|
||
3: ("Anatolian Hieroglyphs", "Hluw"),
|
||
4: ("Arabic", "Arab"),
|
||
5: ("Armenian", "Armn"),
|
||
6: ("Avestan", "Avst"),
|
||
7: ("Balinese", "Bali"),
|
||
8: ("Bamum", "Bamu"),
|
||
9: ("Bangla", "Beng"),
|
||
10: ("Bassa Vah", "Bass"),
|
||
11: ("Batak", "Batk"),
|
||
12: ("Bhaiksuki", "Bhks"),
|
||
13: ("Bopomofo", "Bopo"),
|
||
14: ("Brahmi", "Brah"),
|
||
15: ("Braille", "Brai"),
|
||
16: ("Buginese", "Bugi"),
|
||
17: ("Buhid", "Buhd"),
|
||
18: ("Canadian Aboriginal", "Cans"),
|
||
19: ("Carian", "Cari"),
|
||
20: ("Caucasian Albanian", "Aghb"),
|
||
21: ("Chakma", "Cakm"),
|
||
22: ("Cham", "Cham"),
|
||
23: ("Cherokee", "Cher"),
|
||
24: ("Coptic", "Copt"),
|
||
25: ("Cuneiform", "Xsux"),
|
||
26: ("Cypriot", "Cprt"),
|
||
27: ("Cyrillic", "Cyrl"),
|
||
28: ("Deseret", "Dsrt"),
|
||
29: ("Devanagari", "Deva"),
|
||
30: ("Duployan", "Dupl"),
|
||
31: ("Egyptian hieroglyphs", "Egyp"),
|
||
32: ("Elbasan", "Elba"),
|
||
33: ("Ethiopic", "Ethi"),
|
||
34: ("Fraser", "Lisu"),
|
||
35: ("Georgian", "Geor"),
|
||
36: ("Glagolitic", "Glag"),
|
||
37: ("Gothic", "Goth"),
|
||
38: ("Grantha", "Gran"),
|
||
39: ("Greek", "Grek"),
|
||
40: ("Gujarati", "Gujr"),
|
||
41: ("Gurmukhi", "Guru"),
|
||
42: ("Hangul", "Hang"),
|
||
43: ("Han", "Hani"),
|
||
44: ("Hanunoo", "Hano"),
|
||
45: ("Han with Bopomofo", "Hanb"),
|
||
46: ("Hatran", "Hatr"),
|
||
47: ("Hebrew", "Hebr"),
|
||
48: ("Hiragana", "Hira"),
|
||
49: ("Imperial Aramaic", "Armi"),
|
||
50: ("Inscriptional Pahlavi", "Phli"),
|
||
51: ("Inscriptional Parthian", "Prti"),
|
||
52: ("Jamo", "Jamo"),
|
||
53: ("Japanese", "Jpan"),
|
||
54: ("Javanese", "Java"),
|
||
55: ("Kaithi", "Kthi"),
|
||
56: ("Kannada", "Knda"),
|
||
57: ("Katakana", "Kana"),
|
||
58: ("Kayah Li", "Kali"),
|
||
59: ("Kharoshthi", "Khar"),
|
||
60: ("Khmer", "Khmr"),
|
||
61: ("Khojki", "Khoj"),
|
||
62: ("Khudawadi", "Sind"),
|
||
63: ("Korean", "Kore"),
|
||
64: ("Lanna", "Lana"),
|
||
65: ("Lao", "Laoo"),
|
||
66: ("Latin", "Latn"),
|
||
67: ("Lepcha", "Lepc"),
|
||
68: ("Limbu", "Limb"),
|
||
69: ("Linear A", "Lina"),
|
||
70: ("Linear B", "Linb"),
|
||
71: ("Lycian", "Lyci"),
|
||
72: ("Lydian", "Lydi"),
|
||
73: ("Mahajani", "Mahj"),
|
||
74: ("Malayalam", "Mlym"),
|
||
75: ("Mandaean", "Mand"),
|
||
76: ("Manichaean", "Mani"),
|
||
77: ("Marchen", "Marc"),
|
||
78: ("Meitei Mayek", "Mtei"),
|
||
79: ("Mende", "Mend"),
|
||
80: ("Meroitic Cursive", "Merc"),
|
||
81: ("Meroitic", "Mero"),
|
||
82: ("Modi", "Modi"),
|
||
83: ("Mongolian", "Mong"),
|
||
84: ("Mro", "Mroo"),
|
||
85: ("Multani", "Mult"),
|
||
86: ("Myanmar", "Mymr"),
|
||
87: ("Nabataean", "Nbat"),
|
||
88: ("Newa", "Newa"),
|
||
89: ("New Tai Lue", "Talu"),
|
||
90: ("Nko", "Nkoo"),
|
||
91: ("Odia", "Orya"),
|
||
92: ("Ogham", "Ogam"),
|
||
93: ("Ol Chiki", "Olck"),
|
||
94: ("Old Hungarian", "Hung"),
|
||
95: ("Old Italic", "Ital"),
|
||
96: ("Old North Arabian", "Narb"),
|
||
97: ("Old Permic", "Perm"),
|
||
98: ("Old Persian", "Xpeo"),
|
||
99: ("Old South Arabian", "Sarb"),
|
||
100: ("Orkhon", "Orkh"),
|
||
101: ("Osage", "Osge"),
|
||
102: ("Osmanya", "Osma"),
|
||
103: ("Pahawh Hmong", "Hmng"),
|
||
104: ("Palmyrene", "Palm"),
|
||
105: ("Pau Cin Hau", "Pauc"),
|
||
106: ("Phags-pa", "Phag"),
|
||
107: ("Phoenician", "Phnx"),
|
||
108: ("Pollard Phonetic", "Plrd"),
|
||
109: ("Psalter Pahlavi", "Phlp"),
|
||
110: ("Rejang", "Rjng"),
|
||
111: ("Runic", "Runr"),
|
||
112: ("Samaritan", "Samr"),
|
||
113: ("Saurashtra", "Saur"),
|
||
114: ("Sharada", "Shrd"),
|
||
115: ("Shavian", "Shaw"),
|
||
116: ("Siddham", "Sidd"),
|
||
117: ("SignWriting", "Sgnw"), # Oddly, en.xml leaves no space in it.
|
||
118: ("Simplified Han", "Hans"),
|
||
119: ("Sinhala", "Sinh"),
|
||
120: ("Sora Sompeng", "Sora"),
|
||
121: ("Sundanese", "Sund"),
|
||
122: ("Syloti Nagri", "Sylo"),
|
||
123: ("Syriac", "Syrc"),
|
||
124: ("Tagalog", "Tglg"),
|
||
125: ("Tagbanwa", "Tagb"),
|
||
126: ("Tai Le", "Tale"),
|
||
127: ("Tai Viet", "Tavt"),
|
||
128: ("Takri", "Takr"),
|
||
129: ("Tamil", "Taml"),
|
||
130: ("Tangut", "Tang"),
|
||
131: ("Telugu", "Telu"),
|
||
132: ("Thaana", "Thaa"),
|
||
133: ("Thai", "Thai"),
|
||
134: ("Tibetan", "Tibt"),
|
||
135: ("Tifinagh", "Tfng"),
|
||
136: ("Tirhuta", "Tirh"),
|
||
137: ("Traditional Han", "Hant"),
|
||
138: ("Ugaritic", "Ugar"),
|
||
139: ("Vai", "Vaii"),
|
||
140: ("Varang Kshiti", "Wara"),
|
||
141: ("Yi", "Yiii"),
|
||
# Added at CLDR v43
|
||
142: ("Hanifi", "Rohg"), # Used for Rohingya
|
||
}
|
||
|
||
script_aliases = {
|
||
# Renamings prior to Qt 6.0 (CLDR v37):
|
||
'SimplifiedChineseScript': 'SimplifiedHanScript',
|
||
'TraditionalChineseScript': 'TraditionalHanScript',
|
||
# Renamings:
|
||
'OriyaScript': 'OdiaScript',
|
||
'MendeKikakuiScript': 'MendeScript',
|
||
'BengaliScript': 'BanglaScript',
|
||
}
|