1 | /**************************************************************************/ |
2 | /* locales.h */ |
3 | /**************************************************************************/ |
4 | /* This file is part of: */ |
5 | /* GODOT ENGINE */ |
6 | /* https://godotengine.org */ |
7 | /**************************************************************************/ |
8 | /* Copyright (c) 2014-present Godot Engine contributors (see AUTHORS.md). */ |
9 | /* Copyright (c) 2007-2014 Juan Linietsky, Ariel Manzur. */ |
10 | /* */ |
11 | /* Permission is hereby granted, free of charge, to any person obtaining */ |
12 | /* a copy of this software and associated documentation files (the */ |
13 | /* "Software"), to deal in the Software without restriction, including */ |
14 | /* without limitation the rights to use, copy, modify, merge, publish, */ |
15 | /* distribute, sublicense, and/or sell copies of the Software, and to */ |
16 | /* permit persons to whom the Software is furnished to do so, subject to */ |
17 | /* the following conditions: */ |
18 | /* */ |
19 | /* The above copyright notice and this permission notice shall be */ |
20 | /* included in all copies or substantial portions of the Software. */ |
21 | /* */ |
22 | /* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, */ |
23 | /* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF */ |
24 | /* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. */ |
25 | /* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY */ |
26 | /* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, */ |
27 | /* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE */ |
28 | /* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */ |
29 | /**************************************************************************/ |
30 | |
31 | #ifndef LOCALES_H |
32 | #define LOCALES_H |
33 | |
34 | // Windows has some weird locale identifiers which do not honor the ISO 639-1 |
35 | // standardized nomenclature. Whenever those don't conflict with existing ISO |
36 | // identifiers, we override them. |
37 | // |
38 | // Reference: |
39 | // - https://msdn.microsoft.com/en-us/library/windows/desktop/ms693062(v=vs.85).aspx |
40 | |
41 | static const char *locale_renames[][2] = { |
42 | { "in" , "id" }, // Indonesian |
43 | { "iw" , "he" }, // Hebrew |
44 | { "no" , "nb" }, // Norwegian Bokmål |
45 | { "C" , "en" }, // Locale is not set, fallback to English. |
46 | { nullptr, nullptr } |
47 | }; |
48 | |
49 | // Additional script information to preferred scripts. |
50 | // Language code, script code, default country, supported countries. |
51 | // Reference: |
52 | // - https://lh.2xlibre.net/locales/ |
53 | // - https://www.localeplanet.com/icu/index.html |
54 | // - https://docs.microsoft.com/en-us/openspecs/windows_protocols/ms-lcid/70feba9f-294e-491e-b6eb-56532684c37f |
55 | |
56 | static const char *locale_scripts[][4] = { |
57 | { "az" , "Latn" , "" , "AZ" }, |
58 | { "az" , "Arab" , "" , "IR" }, |
59 | { "bs" , "Latn" , "" , "BA" }, |
60 | { "ff" , "Latn" , "" , "BF,CM,GH,GM,GN,GW,LR,MR,NE,NG,SL,SN" }, |
61 | { "pa" , "Arab" , "PK" , "PK" }, |
62 | { "pa" , "Guru" , "IN" , "IN" }, |
63 | { "sd" , "Arab" , "PK" , "PK" }, |
64 | { "sd" , "Deva" , "IN" , "IN" }, |
65 | { "shi" , "Tfng" , "" , "MA" }, |
66 | { "sr" , "Cyrl" , "" , "BA,RS,XK" }, |
67 | { "sr" , "Latn" , "" , "ME" }, |
68 | { "uz" , "Latn" , "" , "UZ" }, |
69 | { "uz" , "Arab" , "AF" , "AF" }, |
70 | { "vai" , "Vaii" , "" , "LR" }, |
71 | { "yue" , "Hans" , "CN" , "CN" }, |
72 | { "yue" , "Hant" , "HK" , "HK" }, |
73 | { "zh" , "Hans" , "CN" , "CN,SG" }, |
74 | { "zh" , "Hant" , "TW" , "HK,MO,TW" }, |
75 | { nullptr, nullptr, nullptr, nullptr } |
76 | }; |
77 | |
78 | // Additional mapping for outdated, temporary or exceptionally reserved country codes. |
79 | // Reference: |
80 | // - https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2 |
81 | // - https://www.iso.org/obp/ui/#search/code/ |
82 | |
83 | static const char *country_renames[][2] = { |
84 | { "BU" , "MM" }, // Burma, name changed to Myanmar. |
85 | { "KV" , "XK" }, // Kosovo (temporary FIPS code to European Commission code), no official ISO code assigned. |
86 | { "TP" , "TL" }, // East Timor, name changed to Timor-Leste. |
87 | { "UK" , "GB" }, // United Kingdom, exceptionally reserved code. |
88 | { nullptr, nullptr } |
89 | }; |
90 | |
91 | // Country code, country name. |
92 | // Reference: |
93 | // - https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2 |
94 | // - https://www.iso.org/obp/ui/#search/code/ |
95 | |
96 | static const char *country_names[][2] = { |
97 | { "AC" , "Ascension Island" }, // Exceptionally reserved. |
98 | { "AD" , "Andorra" }, |
99 | { "AE" , "United Arab Emirates" }, |
100 | { "AF" , "Afghanistan" }, |
101 | { "AG" , "Antigua and Barbuda" }, |
102 | { "AI" , "Anguilla" }, |
103 | { "AL" , "Albania" }, |
104 | { "AM" , "Armenia" }, |
105 | { "AN" , "Netherlands Antilles" }, // Transitionally reserved, divided into BQ, CW and SX. |
106 | { "AO" , "Angola" }, |
107 | { "AQ" , "Antarctica" }, |
108 | { "AR" , "Argentina" }, |
109 | { "AS" , "American Samoa" }, |
110 | { "AT" , "Austria" }, |
111 | { "AU" , "Australia" }, |
112 | { "AW" , "Aruba" }, |
113 | { "AX" , "Åland Islands" }, |
114 | { "AZ" , "Azerbaijan" }, |
115 | { "BA" , "Bosnia and Herzegovina" }, |
116 | { "BB" , "Barbados" }, |
117 | { "BD" , "Bangladesh" }, |
118 | { "BE" , "Belgium" }, |
119 | { "BF" , "Burkina Faso" }, |
120 | { "BG" , "Bulgaria" }, |
121 | { "BH" , "Bahrain" }, |
122 | { "BI" , "Burundi" }, |
123 | { "BJ" , "Benin" }, |
124 | { "BL" , "St. Barthélemy" }, |
125 | { "BM" , "Bermuda" }, |
126 | { "BN" , "Brunei" }, |
127 | { "BO" , "Bolivia" }, |
128 | { "BQ" , "Caribbean Netherlands" }, |
129 | { "BR" , "Brazil" }, |
130 | { "BS" , "Bahamas" }, |
131 | { "BT" , "Bhutan" }, |
132 | { "BV" , "Bouvet Island" }, |
133 | { "BW" , "Botswana" }, |
134 | { "BY" , "Belarus" }, |
135 | { "BZ" , "Belize" }, |
136 | { "CA" , "Canada" }, |
137 | { "CC" , "Cocos (Keeling) Islands" }, |
138 | { "CD" , "Congo - Kinshasa" }, |
139 | { "CF" , "Central African Republic" }, |
140 | { "CG" , "Congo - Brazzaville" }, |
141 | { "CH" , "Switzerland" }, |
142 | { "CI" , "Côte d'Ivoire" }, |
143 | { "CK" , "Cook Islands" }, |
144 | { "CL" , "Chile" }, |
145 | { "CM" , "Cameroon" }, |
146 | { "CN" , "China" }, |
147 | { "CO" , "Colombia" }, |
148 | { "CP" , "Clipperton Island" }, // Exceptionally reserved. |
149 | { "CR" , "Costa Rica" }, |
150 | { "CQ" , "Island of Sark" }, // Exceptionally reserved. |
151 | { "CU" , "Cuba" }, |
152 | { "CV" , "Cabo Verde" }, |
153 | { "CW" , "Curaçao" }, |
154 | { "CX" , "Christmas Island" }, |
155 | { "CY" , "Cyprus" }, |
156 | { "CZ" , "Czechia" }, |
157 | { "DE" , "Germany" }, |
158 | { "DG" , "Diego Garcia" }, // Exceptionally reserved. |
159 | { "DJ" , "Djibouti" }, |
160 | { "DK" , "Denmark" }, |
161 | { "DM" , "Dominica" }, |
162 | { "DO" , "Dominican Republic" }, |
163 | { "DZ" , "Algeria" }, |
164 | { "EA" , "Ceuta and Melilla" }, // Exceptionally reserved. |
165 | { "EC" , "Ecuador" }, |
166 | { "EE" , "Estonia" }, |
167 | { "EG" , "Egypt" }, |
168 | { "EH" , "Western Sahara" }, |
169 | { "ER" , "Eritrea" }, |
170 | { "ES" , "Spain" }, |
171 | { "ET" , "Ethiopia" }, |
172 | { "EU" , "European Union" }, // Exceptionally reserved. |
173 | { "EZ" , "Eurozone" }, // Exceptionally reserved. |
174 | { "FI" , "Finland" }, |
175 | { "FJ" , "Fiji" }, |
176 | { "FK" , "Falkland Islands" }, |
177 | { "FM" , "Micronesia" }, |
178 | { "FO" , "Faroe Islands" }, |
179 | { "FR" , "France" }, |
180 | { "FX" , "France, Metropolitan" }, // Exceptionally reserved. |
181 | { "GA" , "Gabon" }, |
182 | { "GB" , "United Kingdom" }, |
183 | { "GD" , "Grenada" }, |
184 | { "GE" , "Georgia" }, |
185 | { "GF" , "French Guiana" }, |
186 | { "GG" , "Guernsey" }, |
187 | { "GH" , "Ghana" }, |
188 | { "GI" , "Gibraltar" }, |
189 | { "GL" , "Greenland" }, |
190 | { "GM" , "Gambia" }, |
191 | { "GN" , "Guinea" }, |
192 | { "GP" , "Guadeloupe" }, |
193 | { "GQ" , "Equatorial Guinea" }, |
194 | { "GR" , "Greece" }, |
195 | { "GS" , "South Georgia and South Sandwich Islands" }, |
196 | { "GT" , "Guatemala" }, |
197 | { "GU" , "Guam" }, |
198 | { "GW" , "Guinea-Bissau" }, |
199 | { "GY" , "Guyana" }, |
200 | { "HK" , "Hong Kong" }, |
201 | { "HM" , "Heard Island and McDonald Islands" }, |
202 | { "HN" , "Honduras" }, |
203 | { "HR" , "Croatia" }, |
204 | { "HT" , "Haiti" }, |
205 | { "HU" , "Hungary" }, |
206 | { "IC" , "Canary Islands" }, // Exceptionally reserved. |
207 | { "ID" , "Indonesia" }, |
208 | { "IE" , "Ireland" }, |
209 | { "IL" , "Israel" }, |
210 | { "IM" , "Isle of Man" }, |
211 | { "IN" , "India" }, |
212 | { "IO" , "British Indian Ocean Territory" }, |
213 | { "IQ" , "Iraq" }, |
214 | { "IR" , "Iran" }, |
215 | { "IS" , "Iceland" }, |
216 | { "IT" , "Italy" }, |
217 | { "JE" , "Jersey" }, |
218 | { "JM" , "Jamaica" }, |
219 | { "JO" , "Jordan" }, |
220 | { "JP" , "Japan" }, |
221 | { "KE" , "Kenya" }, |
222 | { "KG" , "Kyrgyzstan" }, |
223 | { "KH" , "Cambodia" }, |
224 | { "KI" , "Kiribati" }, |
225 | { "KM" , "Comoros" }, |
226 | { "KN" , "St. Kitts and Nevis" }, |
227 | { "KP" , "North Korea" }, |
228 | { "KR" , "South Korea" }, |
229 | { "KW" , "Kuwait" }, |
230 | { "KY" , "Cayman Islands" }, |
231 | { "KZ" , "Kazakhstan" }, |
232 | { "LA" , "Laos" }, |
233 | { "LB" , "Lebanon" }, |
234 | { "LC" , "St. Lucia" }, |
235 | { "LI" , "Liechtenstein" }, |
236 | { "LK" , "Sri Lanka" }, |
237 | { "LR" , "Liberia" }, |
238 | { "LS" , "Lesotho" }, |
239 | { "LT" , "Lithuania" }, |
240 | { "LU" , "Luxembourg" }, |
241 | { "LV" , "Latvia" }, |
242 | { "LY" , "Libya" }, |
243 | { "MA" , "Morocco" }, |
244 | { "MC" , "Monaco" }, |
245 | { "MD" , "Moldova" }, |
246 | { "ME" , "Montenegro" }, |
247 | { "MF" , "St. Martin" }, |
248 | { "MG" , "Madagascar" }, |
249 | { "MH" , "Marshall Islands" }, |
250 | { "MK" , "North Macedonia" }, |
251 | { "ML" , "Mali" }, |
252 | { "MM" , "Myanmar" }, |
253 | { "MN" , "Mongolia" }, |
254 | { "MO" , "Macao" }, |
255 | { "MP" , "Northern Mariana Islands" }, |
256 | { "MQ" , "Martinique" }, |
257 | { "MR" , "Mauritania" }, |
258 | { "MS" , "Montserrat" }, |
259 | { "MT" , "Malta" }, |
260 | { "MU" , "Mauritius" }, |
261 | { "MV" , "Maldives" }, |
262 | { "MW" , "Malawi" }, |
263 | { "MX" , "Mexico" }, |
264 | { "MY" , "Malaysia" }, |
265 | { "MZ" , "Mozambique" }, |
266 | { "NA" , "Namibia" }, |
267 | { "NC" , "New Caledonia" }, |
268 | { "NE" , "Niger" }, |
269 | { "NF" , "Norfolk Island" }, |
270 | { "NG" , "Nigeria" }, |
271 | { "NI" , "Nicaragua" }, |
272 | { "NL" , "Netherlands" }, |
273 | { "NO" , "Norway" }, |
274 | { "NP" , "Nepal" }, |
275 | { "NR" , "Nauru" }, |
276 | { "NU" , "Niue" }, |
277 | { "NZ" , "New Zealand" }, |
278 | { "OM" , "Oman" }, |
279 | { "PA" , "Panama" }, |
280 | { "PE" , "Peru" }, |
281 | { "PF" , "French Polynesia" }, |
282 | { "PG" , "Papua New Guinea" }, |
283 | { "PH" , "Philippines" }, |
284 | { "PK" , "Pakistan" }, |
285 | { "PL" , "Poland" }, |
286 | { "PM" , "St. Pierre and Miquelon" }, |
287 | { "PN" , "Pitcairn Islands" }, |
288 | { "PR" , "Puerto Rico" }, |
289 | { "PS" , "Palestine" }, |
290 | { "PT" , "Portugal" }, |
291 | { "PW" , "Palau" }, |
292 | { "PY" , "Paraguay" }, |
293 | { "QA" , "Qatar" }, |
294 | { "RE" , "Réunion" }, |
295 | { "RO" , "Romania" }, |
296 | { "RS" , "Serbia" }, |
297 | { "RU" , "Russia" }, |
298 | { "RW" , "Rwanda" }, |
299 | { "SA" , "Saudi Arabia" }, |
300 | { "SB" , "Solomon Islands" }, |
301 | { "SC" , "Seychelles" }, |
302 | { "SD" , "Sudan" }, |
303 | { "SE" , "Sweden" }, |
304 | { "SG" , "Singapore" }, |
305 | { "SH" , "St. Helena, Ascension and Tristan da Cunha" }, |
306 | { "SI" , "Slovenia" }, |
307 | { "SJ" , "Svalbard and Jan Mayen" }, |
308 | { "SK" , "Slovakia" }, |
309 | { "SL" , "Sierra Leone" }, |
310 | { "SM" , "San Marino" }, |
311 | { "SN" , "Senegal" }, |
312 | { "SO" , "Somalia" }, |
313 | { "SR" , "Suriname" }, |
314 | { "SS" , "South Sudan" }, |
315 | { "ST" , "Sao Tome and Principe" }, |
316 | { "SV" , "El Salvador" }, |
317 | { "SX" , "Sint Maarten" }, |
318 | { "SY" , "Syria" }, |
319 | { "SZ" , "Eswatini" }, |
320 | { "TA" , "Tristan da Cunha" }, // Exceptionally reserved. |
321 | { "TC" , "Turks and Caicos Islands" }, |
322 | { "TD" , "Chad" }, |
323 | { "TF" , "French Southern Territories" }, |
324 | { "TG" , "Togo" }, |
325 | { "TH" , "Thailand" }, |
326 | { "TJ" , "Tajikistan" }, |
327 | { "TK" , "Tokelau" }, |
328 | { "TL" , "Timor-Leste" }, |
329 | { "TM" , "Turkmenistan" }, |
330 | { "TN" , "Tunisia" }, |
331 | { "TO" , "Tonga" }, |
332 | { "TR" , "Turkey" }, |
333 | { "TT" , "Trinidad and Tobago" }, |
334 | { "TV" , "Tuvalu" }, |
335 | { "TW" , "Taiwan" }, |
336 | { "TZ" , "Tanzania" }, |
337 | { "UA" , "Ukraine" }, |
338 | { "UG" , "Uganda" }, |
339 | { "UM" , "U.S. Outlying Islands" }, |
340 | { "US" , "United States of America" }, |
341 | { "UY" , "Uruguay" }, |
342 | { "UZ" , "Uzbekistan" }, |
343 | { "VA" , "Holy See" }, |
344 | { "VC" , "St. Vincent and the Grenadines" }, |
345 | { "VE" , "Venezuela" }, |
346 | { "VG" , "British Virgin Islands" }, |
347 | { "VI" , "U.S. Virgin Islands" }, |
348 | { "VN" , "Viet Nam" }, |
349 | { "VU" , "Vanuatu" }, |
350 | { "WF" , "Wallis and Futuna" }, |
351 | { "WS" , "Samoa" }, |
352 | { "XK" , "Kosovo" }, // Temporary code, no official ISO code assigned. |
353 | { "YE" , "Yemen" }, |
354 | { "YT" , "Mayotte" }, |
355 | { "ZA" , "South Africa" }, |
356 | { "ZM" , "Zambia" }, |
357 | { "ZW" , "Zimbabwe" }, |
358 | { nullptr, nullptr } |
359 | }; |
360 | |
361 | // Languages code, language name. |
362 | // Reference: |
363 | // - https://en.wikipedia.org/wiki/List_of_ISO_639-1_codes |
364 | // - https://www.localeplanet.com/icu/index.html |
365 | // - https://lh.2xlibre.net/locales/ |
366 | |
367 | static const char *language_list[][2] = { |
368 | { "aa" , "Afar" }, |
369 | { "ab" , "Abkhazian" }, |
370 | { "ace" , "Achinese" }, |
371 | { "ach" , "Acoli" }, |
372 | { "ada" , "Adangme" }, |
373 | { "ady" , "Adyghe" }, |
374 | { "ae" , "Avestan" }, |
375 | { "aeb" , "Tunisian Arabic" }, |
376 | { "af" , "Afrikaans" }, |
377 | { "afh" , "Afrihili" }, |
378 | { "agq" , "Aghem" }, |
379 | { "ain" , "Ainu" }, |
380 | { "agr" , "Aguaruna" }, |
381 | { "ak" , "Akan" }, |
382 | { "akk" , "Akkadian" }, |
383 | { "akz" , "Alabama" }, |
384 | { "ale" , "Aleut" }, |
385 | { "aln" , "Gheg Albanian" }, |
386 | { "alt" , "Southern Altai" }, |
387 | { "am" , "Amharic" }, |
388 | { "an" , "Aragonese" }, |
389 | { "ang" , "Old English" }, |
390 | { "anp" , "Angika" }, |
391 | { "ar" , "Arabic" }, |
392 | { "arc" , "Aramaic" }, |
393 | { "arn" , "Mapudungun" }, |
394 | { "aro" , "Araona" }, |
395 | { "arp" , "Arapaho" }, |
396 | { "arq" , "Algerian Arabic" }, |
397 | { "ars" , "Najdi Arabic" }, |
398 | { "arw" , "Arawak" }, |
399 | { "ary" , "Moroccan Arabic" }, |
400 | { "arz" , "Egyptian Arabic" }, |
401 | { "as" , "Assamese" }, |
402 | { "asa" , "Asu" }, |
403 | { "ase" , "American Sign Language" }, |
404 | { "ast" , "Asturian" }, |
405 | { "av" , "Avaric" }, |
406 | { "avk" , "Kotava" }, |
407 | { "awa" , "Awadhi" }, |
408 | { "ayc" , "Southern Aymara" }, |
409 | { "ay" , "Aymara" }, |
410 | { "az" , "Azerbaijani" }, |
411 | { "ba" , "Bashkir" }, |
412 | { "bal" , "Baluchi" }, |
413 | { "ban" , "Balinese" }, |
414 | { "bar" , "Bavarian" }, |
415 | { "bas" , "Bassa" }, |
416 | { "bax" , "Bamun" }, |
417 | { "bbc" , "Batak Toba" }, |
418 | { "bbj" , "Ghomala" }, |
419 | { "be" , "Belarusian" }, |
420 | { "bej" , "Beja" }, |
421 | { "bem" , "Bemba" }, |
422 | { "ber" , "Berber" }, |
423 | { "bew" , "Betawi" }, |
424 | { "bez" , "Bena" }, |
425 | { "bfd" , "Bafut" }, |
426 | { "bfq" , "Badaga" }, |
427 | { "bg" , "Bulgarian" }, |
428 | { "bhb" , "Bhili" }, |
429 | { "bgn" , "Western Balochi" }, |
430 | { "bho" , "Bhojpuri" }, |
431 | { "bi" , "Bislama" }, |
432 | { "bik" , "Bikol" }, |
433 | { "bin" , "Bini" }, |
434 | { "bjn" , "Banjar" }, |
435 | { "bkm" , "Kom" }, |
436 | { "bla" , "Siksika" }, |
437 | { "bm" , "Bambara" }, |
438 | { "bn" , "Bengali" }, |
439 | { "bo" , "Tibetan" }, |
440 | { "bpy" , "Bishnupriya" }, |
441 | { "bqi" , "Bakhtiari" }, |
442 | { "br" , "Breton" }, |
443 | { "brh" , "Brahui" }, |
444 | { "brx" , "Bodo" }, |
445 | { "bs" , "Bosnian" }, |
446 | { "bss" , "Akoose" }, |
447 | { "bua" , "Buriat" }, |
448 | { "bug" , "Buginese" }, |
449 | { "bum" , "Bulu" }, |
450 | { "byn" , "Bilin" }, |
451 | { "byv" , "Medumba" }, |
452 | { "ca" , "Catalan" }, |
453 | { "cad" , "Caddo" }, |
454 | { "car" , "Carib" }, |
455 | { "cay" , "Cayuga" }, |
456 | { "cch" , "Atsam" }, |
457 | { "ccp" , "Chakma" }, |
458 | { "ce" , "Chechen" }, |
459 | { "ceb" , "Cebuano" }, |
460 | { "cgg" , "Chiga" }, |
461 | { "ch" , "Chamorro" }, |
462 | { "chb" , "Chibcha" }, |
463 | { "chg" , "Chagatai" }, |
464 | { "chk" , "Chuukese" }, |
465 | { "chm" , "Mari" }, |
466 | { "chn" , "Chinook Jargon" }, |
467 | { "cho" , "Choctaw" }, |
468 | { "chp" , "Chipewyan" }, |
469 | { "chr" , "Cherokee" }, |
470 | { "chy" , "Cheyenne" }, |
471 | { "cic" , "Chickasaw" }, |
472 | { "ckb" , "Central Kurdish" }, |
473 | { "csb" , "Kashubian" }, |
474 | { "cmn" , "Mandarin Chinese" }, |
475 | { "co" , "Corsican" }, |
476 | { "cop" , "Coptic" }, |
477 | { "cps" , "Capiznon" }, |
478 | { "cr" , "Cree" }, |
479 | { "crh" , "Crimean Tatar" }, |
480 | { "crs" , "Seselwa Creole French" }, |
481 | { "cs" , "Czech" }, |
482 | { "csb" , "Kashubian" }, |
483 | { "cu" , "Church Slavic" }, |
484 | { "cv" , "Chuvash" }, |
485 | { "cy" , "Welsh" }, |
486 | { "da" , "Danish" }, |
487 | { "dak" , "Dakota" }, |
488 | { "dar" , "Dargwa" }, |
489 | { "dav" , "Taita" }, |
490 | { "de" , "German" }, |
491 | { "del" , "Delaware" }, |
492 | { "den" , "Slave" }, |
493 | { "dgr" , "Dogrib" }, |
494 | { "din" , "Dinka" }, |
495 | { "dje" , "Zarma" }, |
496 | { "doi" , "Dogri" }, |
497 | { "dsb" , "Lower Sorbian" }, |
498 | { "dtp" , "Central Dusun" }, |
499 | { "dua" , "Duala" }, |
500 | { "dum" , "Middle Dutch" }, |
501 | { "dv" , "Dhivehi" }, |
502 | { "dyo" , "Jola-Fonyi" }, |
503 | { "dyu" , "Dyula" }, |
504 | { "dz" , "Dzongkha" }, |
505 | { "dzg" , "Dazaga" }, |
506 | { "ebu" , "Embu" }, |
507 | { "ee" , "Ewe" }, |
508 | { "efi" , "Efik" }, |
509 | { "egl" , "Emilian" }, |
510 | { "egy" , "Ancient Egyptian" }, |
511 | { "eka" , "Ekajuk" }, |
512 | { "el" , "Greek" }, |
513 | { "elx" , "Elamite" }, |
514 | { "en" , "English" }, |
515 | { "enm" , "Middle English" }, |
516 | { "eo" , "Esperanto" }, |
517 | { "es" , "Spanish" }, |
518 | { "esu" , "Central Yupik" }, |
519 | { "et" , "Estonian" }, |
520 | { "eu" , "Basque" }, |
521 | { "ewo" , "Ewondo" }, |
522 | { "ext" , "Extremaduran" }, |
523 | { "fa" , "Persian" }, |
524 | { "fan" , "Fang" }, |
525 | { "fat" , "Fanti" }, |
526 | { "ff" , "Fulah" }, |
527 | { "fi" , "Finnish" }, |
528 | { "fil" , "Filipino" }, |
529 | { "fit" , "Tornedalen Finnish" }, |
530 | { "fj" , "Fijian" }, |
531 | { "fo" , "Faroese" }, |
532 | { "fon" , "Fon" }, |
533 | { "fr" , "French" }, |
534 | { "frc" , "Cajun French" }, |
535 | { "frm" , "Middle French" }, |
536 | { "fro" , "Old French" }, |
537 | { "frp" , "Arpitan" }, |
538 | { "frr" , "Northern Frisian" }, |
539 | { "frs" , "Eastern Frisian" }, |
540 | { "fur" , "Friulian" }, |
541 | { "fy" , "Western Frisian" }, |
542 | { "ga" , "Irish" }, |
543 | { "gaa" , "Ga" }, |
544 | { "gag" , "Gagauz" }, |
545 | { "gan" , "Gan Chinese" }, |
546 | { "gay" , "Gayo" }, |
547 | { "gba" , "Gbaya" }, |
548 | { "gbz" , "Zoroastrian Dari" }, |
549 | { "gd" , "Scottish Gaelic" }, |
550 | { "gez" , "Geez" }, |
551 | { "gil" , "Gilbertese" }, |
552 | { "gl" , "Galician" }, |
553 | { "glk" , "Gilaki" }, |
554 | { "gmh" , "Middle High German" }, |
555 | { "gn" , "Guarani" }, |
556 | { "goh" , "Old High German" }, |
557 | { "gom" , "Goan Konkani" }, |
558 | { "gon" , "Gondi" }, |
559 | { "gor" , "Gorontalo" }, |
560 | { "got" , "Gothic" }, |
561 | { "grb" , "Grebo" }, |
562 | { "grc" , "Ancient Greek" }, |
563 | { "gsw" , "Swiss German" }, |
564 | { "gu" , "Gujarati" }, |
565 | { "guc" , "Wayuu" }, |
566 | { "gur" , "Frafra" }, |
567 | { "guz" , "Gusii" }, |
568 | { "gv" , "Manx" }, |
569 | { "gwi" , "Gwichʼin" }, |
570 | { "ha" , "Hausa" }, |
571 | { "hai" , "Haida" }, |
572 | { "hak" , "Hakka Chinese" }, |
573 | { "haw" , "Hawaiian" }, |
574 | { "he" , "Hebrew" }, |
575 | { "hi" , "Hindi" }, |
576 | { "hif" , "Fiji Hindi" }, |
577 | { "hil" , "Hiligaynon" }, |
578 | { "hit" , "Hittite" }, |
579 | { "hmn" , "Hmong" }, |
580 | { "ho" , "Hiri Motu" }, |
581 | { "hne" , "Chhattisgarhi" }, |
582 | { "hr" , "Croatian" }, |
583 | { "hsb" , "Upper Sorbian" }, |
584 | { "hsn" , "Xiang Chinese" }, |
585 | { "ht" , "Haitian" }, |
586 | { "hu" , "Hungarian" }, |
587 | { "hup" , "Hupa" }, |
588 | { "hus" , "Huastec" }, |
589 | { "hy" , "Armenian" }, |
590 | { "hz" , "Herero" }, |
591 | { "ia" , "Interlingua" }, |
592 | { "iba" , "Iban" }, |
593 | { "ibb" , "Ibibio" }, |
594 | { "id" , "Indonesian" }, |
595 | { "ie" , "Interlingue" }, |
596 | { "ig" , "Igbo" }, |
597 | { "ii" , "Sichuan Yi" }, |
598 | { "ik" , "Inupiaq" }, |
599 | { "ilo" , "Iloko" }, |
600 | { "inh" , "Ingush" }, |
601 | { "io" , "Ido" }, |
602 | { "is" , "Icelandic" }, |
603 | { "it" , "Italian" }, |
604 | { "iu" , "Inuktitut" }, |
605 | { "izh" , "Ingrian" }, |
606 | { "ja" , "Japanese" }, |
607 | { "jam" , "Jamaican Creole English" }, |
608 | { "jbo" , "Lojban" }, |
609 | { "jgo" , "Ngomba" }, |
610 | { "jmc" , "Machame" }, |
611 | { "jpr" , "Judeo-Persian" }, |
612 | { "jrb" , "Judeo-Arabic" }, |
613 | { "jut" , "Jutish" }, |
614 | { "jv" , "Javanese" }, |
615 | { "ka" , "Georgian" }, |
616 | { "kaa" , "Kara-Kalpak" }, |
617 | { "kab" , "Kabyle" }, |
618 | { "kac" , "Kachin" }, |
619 | { "kaj" , "Jju" }, |
620 | { "kam" , "Kamba" }, |
621 | { "kaw" , "Kawi" }, |
622 | { "kbd" , "Kabardian" }, |
623 | { "kbl" , "Kanembu" }, |
624 | { "kcg" , "Tyap" }, |
625 | { "kde" , "Makonde" }, |
626 | { "kea" , "Kabuverdianu" }, |
627 | { "ken" , "Kenyang" }, |
628 | { "kfo" , "Koro" }, |
629 | { "kg" , "Kongo" }, |
630 | { "kgp" , "Kaingang" }, |
631 | { "kha" , "Khasi" }, |
632 | { "kho" , "Khotanese" }, |
633 | { "khq" , "Koyra Chiini" }, |
634 | { "khw" , "Khowar" }, |
635 | { "ki" , "Kikuyu" }, |
636 | { "kiu" , "Kirmanjki" }, |
637 | { "kj" , "Kuanyama" }, |
638 | { "kk" , "Kazakh" }, |
639 | { "kkj" , "Kako" }, |
640 | { "kl" , "Kalaallisut" }, |
641 | { "kln" , "Kalenjin" }, |
642 | { "km" , "Central Khmer" }, |
643 | { "kmb" , "Kimbundu" }, |
644 | { "kn" , "Kannada" }, |
645 | { "ko" , "Korean" }, |
646 | { "koi" , "Komi-Permyak" }, |
647 | { "kok" , "Konkani" }, |
648 | { "kos" , "Kosraean" }, |
649 | { "kpe" , "Kpelle" }, |
650 | { "kr" , "Kanuri" }, |
651 | { "krc" , "Karachay-Balkar" }, |
652 | { "kri" , "Krio" }, |
653 | { "krj" , "Kinaray-a" }, |
654 | { "krl" , "Karelian" }, |
655 | { "kru" , "Kurukh" }, |
656 | { "ks" , "Kashmiri" }, |
657 | { "ksb" , "Shambala" }, |
658 | { "ksf" , "Bafia" }, |
659 | { "ksh" , "Colognian" }, |
660 | { "ku" , "Kurdish" }, |
661 | { "kum" , "Kumyk" }, |
662 | { "kut" , "Kutenai" }, |
663 | { "kv" , "Komi" }, |
664 | { "kw" , "Cornish" }, |
665 | { "ky" , "Kirghiz" }, |
666 | { "lag" , "Langi" }, |
667 | { "la" , "Latin" }, |
668 | { "lad" , "Ladino" }, |
669 | { "lag" , "Langi" }, |
670 | { "lah" , "Lahnda" }, |
671 | { "lam" , "Lamba" }, |
672 | { "lb" , "Luxembourgish" }, |
673 | { "lez" , "Lezghian" }, |
674 | { "lfn" , "Lingua Franca Nova" }, |
675 | { "lg" , "Ganda" }, |
676 | { "li" , "Limburgan" }, |
677 | { "lij" , "Ligurian" }, |
678 | { "liv" , "Livonian" }, |
679 | { "lkt" , "Lakota" }, |
680 | { "lmo" , "Lombard" }, |
681 | { "ln" , "Lingala" }, |
682 | { "lo" , "Lao" }, |
683 | { "lol" , "Mongo" }, |
684 | { "lou" , "Louisiana Creole" }, |
685 | { "loz" , "Lozi" }, |
686 | { "lrc" , "Northern Luri" }, |
687 | { "lt" , "Lithuanian" }, |
688 | { "ltg" , "Latgalian" }, |
689 | { "lu" , "Luba-Katanga" }, |
690 | { "lua" , "Luba-Lulua" }, |
691 | { "lui" , "Luiseno" }, |
692 | { "lun" , "Lunda" }, |
693 | { "luo" , "Luo" }, |
694 | { "lus" , "Mizo" }, |
695 | { "luy" , "Luyia" }, |
696 | { "lv" , "Latvian" }, |
697 | { "lzh" , "Literary Chinese" }, |
698 | { "lzz" , "Laz" }, |
699 | { "mad" , "Madurese" }, |
700 | { "maf" , "Mafa" }, |
701 | { "mag" , "Magahi" }, |
702 | { "mai" , "Maithili" }, |
703 | { "mak" , "Makasar" }, |
704 | { "man" , "Mandingo" }, |
705 | { "mas" , "Masai" }, |
706 | { "mde" , "Maba" }, |
707 | { "mdf" , "Moksha" }, |
708 | { "mdr" , "Mandar" }, |
709 | { "men" , "Mende" }, |
710 | { "mer" , "Meru" }, |
711 | { "mfe" , "Morisyen" }, |
712 | { "mg" , "Malagasy" }, |
713 | { "mga" , "Middle Irish" }, |
714 | { "mgh" , "Makhuwa-Meetto" }, |
715 | { "mgo" , "Metaʼ" }, |
716 | { "mh" , "Marshallese" }, |
717 | { "mhr" , "Eastern Mari" }, |
718 | { "mi" , "Māori" }, |
719 | { "mic" , "Mi'kmaq" }, |
720 | { "min" , "Minangkabau" }, |
721 | { "miq" , "Mískito" }, |
722 | { "mjw" , "Karbi" }, |
723 | { "mk" , "Macedonian" }, |
724 | { "ml" , "Malayalam" }, |
725 | { "mn" , "Mongolian" }, |
726 | { "mnc" , "Manchu" }, |
727 | { "mni" , "Manipuri" }, |
728 | { "mnw" , "Mon" }, |
729 | { "mos" , "Mossi" }, |
730 | { "moh" , "Mohawk" }, |
731 | { "mr" , "Marathi" }, |
732 | { "mrj" , "Western Mari" }, |
733 | { "ms" , "Malay" }, |
734 | { "mt" , "Maltese" }, |
735 | { "mua" , "Mundang" }, |
736 | { "mus" , "Muscogee" }, |
737 | { "mwl" , "Mirandese" }, |
738 | { "mwr" , "Marwari" }, |
739 | { "mwv" , "Mentawai" }, |
740 | { "my" , "Burmese" }, |
741 | { "mye" , "Myene" }, |
742 | { "myv" , "Erzya" }, |
743 | { "mzn" , "Mazanderani" }, |
744 | { "na" , "Nauru" }, |
745 | { "nah" , "Nahuatl" }, |
746 | { "nan" , "Min Nan Chinese" }, |
747 | { "nap" , "Neapolitan" }, |
748 | { "naq" , "Nama" }, |
749 | { "nan" , "Min Nan Chinese" }, |
750 | { "nb" , "Norwegian Bokmål" }, |
751 | { "nd" , "North Ndebele" }, |
752 | { "nds" , "Low German" }, |
753 | { "ne" , "Nepali" }, |
754 | { "new" , "Newari" }, |
755 | { "nhn" , "Central Nahuatl" }, |
756 | { "ng" , "Ndonga" }, |
757 | { "nia" , "Nias" }, |
758 | { "niu" , "Niuean" }, |
759 | { "njo" , "Ao Naga" }, |
760 | { "nl" , "Dutch" }, |
761 | { "nmg" , "Kwasio" }, |
762 | { "nn" , "Norwegian Nynorsk" }, |
763 | { "nnh" , "Ngiemboon" }, |
764 | { "nog" , "Nogai" }, |
765 | { "non" , "Old Norse" }, |
766 | { "nov" , "Novial" }, |
767 | { "nqo" , "N'ko" }, |
768 | { "nr" , "South Ndebele" }, |
769 | { "nso" , "Pedi" }, |
770 | { "nus" , "Nuer" }, |
771 | { "nv" , "Navajo" }, |
772 | { "nwc" , "Classical Newari" }, |
773 | { "ny" , "Nyanja" }, |
774 | { "nym" , "Nyamwezi" }, |
775 | { "nyn" , "Nyankole" }, |
776 | { "nyo" , "Nyoro" }, |
777 | { "nzi" , "Nzima" }, |
778 | { "oc" , "Occitan" }, |
779 | { "oj" , "Ojibwa" }, |
780 | { "om" , "Oromo" }, |
781 | { "or" , "Odia" }, |
782 | { "os" , "Ossetic" }, |
783 | { "osa" , "Osage" }, |
784 | { "ota" , "Ottoman Turkish" }, |
785 | { "pa" , "Panjabi" }, |
786 | { "pag" , "Pangasinan" }, |
787 | { "pal" , "Pahlavi" }, |
788 | { "pam" , "Pampanga" }, |
789 | { "pap" , "Papiamento" }, |
790 | { "pau" , "Palauan" }, |
791 | { "pcd" , "Picard" }, |
792 | { "pcm" , "Nigerian Pidgin" }, |
793 | { "pdc" , "Pennsylvania German" }, |
794 | { "pdt" , "Plautdietsch" }, |
795 | { "peo" , "Old Persian" }, |
796 | { "pfl" , "Palatine German" }, |
797 | { "phn" , "Phoenician" }, |
798 | { "pi" , "Pali" }, |
799 | { "pl" , "Polish" }, |
800 | { "pms" , "Piedmontese" }, |
801 | { "pnt" , "Pontic" }, |
802 | { "pon" , "Pohnpeian" }, |
803 | { "pr" , "Pirate" }, |
804 | { "prg" , "Prussian" }, |
805 | { "pro" , "Old Provençal" }, |
806 | { "prs" , "Dari" }, |
807 | { "ps" , "Pushto" }, |
808 | { "pt" , "Portuguese" }, |
809 | { "qu" , "Quechua" }, |
810 | { "quc" , "K'iche" }, |
811 | { "qug" , "Chimborazo Highland Quichua" }, |
812 | { "quy" , "Ayacucho Quechua" }, |
813 | { "quz" , "Cusco Quechua" }, |
814 | { "raj" , "Rajasthani" }, |
815 | { "rap" , "Rapanui" }, |
816 | { "rar" , "Rarotongan" }, |
817 | { "rgn" , "Romagnol" }, |
818 | { "rif" , "Riffian" }, |
819 | { "rm" , "Romansh" }, |
820 | { "rn" , "Rundi" }, |
821 | { "ro" , "Romanian" }, |
822 | { "rof" , "Rombo" }, |
823 | { "rom" , "Romany" }, |
824 | { "rtm" , "Rotuman" }, |
825 | { "ru" , "Russian" }, |
826 | { "rue" , "Rusyn" }, |
827 | { "rug" , "Roviana" }, |
828 | { "rup" , "Aromanian" }, |
829 | { "rw" , "Kinyarwanda" }, |
830 | { "rwk" , "Rwa" }, |
831 | { "sa" , "Sanskrit" }, |
832 | { "sad" , "Sandawe" }, |
833 | { "sah" , "Sakha" }, |
834 | { "sam" , "Samaritan Aramaic" }, |
835 | { "saq" , "Samburu" }, |
836 | { "sas" , "Sasak" }, |
837 | { "sat" , "Santali" }, |
838 | { "saz" , "Saurashtra" }, |
839 | { "sba" , "Ngambay" }, |
840 | { "sbp" , "Sangu" }, |
841 | { "sc" , "Sardinian" }, |
842 | { "scn" , "Sicilian" }, |
843 | { "sco" , "Scots" }, |
844 | { "sd" , "Sindhi" }, |
845 | { "sdc" , "Sassarese Sardinian" }, |
846 | { "sdh" , "Southern Kurdish" }, |
847 | { "se" , "Northern Sami" }, |
848 | { "see" , "Seneca" }, |
849 | { "seh" , "Sena" }, |
850 | { "sei" , "Seri" }, |
851 | { "sel" , "Selkup" }, |
852 | { "ses" , "Koyraboro Senni" }, |
853 | { "sg" , "Sango" }, |
854 | { "sga" , "Old Irish" }, |
855 | { "sgs" , "Samogitian" }, |
856 | { "sh" , "Serbo-Croatian" }, |
857 | { "shi" , "Tachelhit" }, |
858 | { "shn" , "Shan" }, |
859 | { "shs" , "Shuswap" }, |
860 | { "shu" , "Chadian Arabic" }, |
861 | { "si" , "Sinhala" }, |
862 | { "sid" , "Sidamo" }, |
863 | { "sk" , "Slovak" }, |
864 | { "sl" , "Slovenian" }, |
865 | { "sli" , "Lower Silesian" }, |
866 | { "sly" , "Selayar" }, |
867 | { "sm" , "Samoan" }, |
868 | { "sma" , "Southern Sami" }, |
869 | { "smj" , "Lule Sami" }, |
870 | { "smn" , "Inari Sami" }, |
871 | { "sms" , "Skolt Sami" }, |
872 | { "sn" , "Shona" }, |
873 | { "snk" , "Soninke" }, |
874 | { "so" , "Somali" }, |
875 | { "sog" , "Sogdien" }, |
876 | { "son" , "Songhai" }, |
877 | { "sq" , "Albanian" }, |
878 | { "sr" , "Serbian" }, |
879 | { "srn" , "Sranan Tongo" }, |
880 | { "srr" , "Serer" }, |
881 | { "ss" , "Swati" }, |
882 | { "ssy" , "Saho" }, |
883 | { "st" , "Southern Sotho" }, |
884 | { "stq" , "Saterland Frisian" }, |
885 | { "su" , "Sundanese" }, |
886 | { "suk" , "Sukuma" }, |
887 | { "sus" , "Susu" }, |
888 | { "sux" , "Sumerian" }, |
889 | { "sv" , "Swedish" }, |
890 | { "sw" , "Swahili" }, |
891 | { "swb" , "Comorian" }, |
892 | { "swc" , "Congo Swahili" }, |
893 | { "syc" , "Classical Syriac" }, |
894 | { "syr" , "Syriac" }, |
895 | { "szl" , "Silesian" }, |
896 | { "ta" , "Tamil" }, |
897 | { "tcy" , "Tulu" }, |
898 | { "te" , "Telugu" }, |
899 | { "tem" , "Timne" }, |
900 | { "teo" , "Teso" }, |
901 | { "ter" , "Tereno" }, |
902 | { "tet" , "Tetum" }, |
903 | { "tg" , "Tajik" }, |
904 | { "th" , "Thai" }, |
905 | { "the" , "Chitwania Tharu" }, |
906 | { "ti" , "Tigrinya" }, |
907 | { "tig" , "Tigre" }, |
908 | { "tiv" , "Tiv" }, |
909 | { "tk" , "Turkmen" }, |
910 | { "tkl" , "Tokelau" }, |
911 | { "tkr" , "Tsakhur" }, |
912 | { "tl" , "Tagalog" }, |
913 | { "tlh" , "Klingon" }, |
914 | { "tli" , "Tlingit" }, |
915 | { "tly" , "Talysh" }, |
916 | { "tmh" , "Tamashek" }, |
917 | { "tn" , "Tswana" }, |
918 | { "to" , "Tongan" }, |
919 | { "tog" , "Nyasa Tonga" }, |
920 | { "tpi" , "Tok Pisin" }, |
921 | { "tr" , "Turkish" }, |
922 | { "tru" , "Turoyo" }, |
923 | { "trv" , "Taroko" }, |
924 | { "ts" , "Tsonga" }, |
925 | { "tsd" , "Tsakonian" }, |
926 | { "tsi" , "Tsimshian" }, |
927 | { "tt" , "Tatar" }, |
928 | { "ttt" , "Muslim Tat" }, |
929 | { "tum" , "Tumbuka" }, |
930 | { "tvl" , "Tuvalu" }, |
931 | { "tw" , "Twi" }, |
932 | { "twq" , "Tasawaq" }, |
933 | { "ty" , "Tahitian" }, |
934 | { "tyv" , "Tuvinian" }, |
935 | { "tzm" , "Central Atlas Tamazight" }, |
936 | { "udm" , "Udmurt" }, |
937 | { "ug" , "Uyghur" }, |
938 | { "uga" , "Ugaritic" }, |
939 | { "uk" , "Ukrainian" }, |
940 | { "umb" , "Umbundu" }, |
941 | { "unm" , "Unami" }, |
942 | { "ur" , "Urdu" }, |
943 | { "uz" , "Uzbek" }, |
944 | { "vai" , "Vai" }, |
945 | { "ve" , "Venda" }, |
946 | { "vec" , "Venetian" }, |
947 | { "vep" , "Veps" }, |
948 | { "vi" , "Vietnamese" }, |
949 | { "vls" , "West Flemish" }, |
950 | { "vmf" , "Main-Franconian" }, |
951 | { "vo" , "Volapük" }, |
952 | { "vot" , "Votic" }, |
953 | { "vro" , "Võro" }, |
954 | { "vun" , "Vunjo" }, |
955 | { "wa" , "Walloon" }, |
956 | { "wae" , "Walser" }, |
957 | { "wal" , "Wolaytta" }, |
958 | { "war" , "Waray" }, |
959 | { "was" , "Washo" }, |
960 | { "wbp" , "Warlpiri" }, |
961 | { "wo" , "Wolof" }, |
962 | { "wuu" , "Wu Chinese" }, |
963 | { "xal" , "Kalmyk" }, |
964 | { "xh" , "Xhosa" }, |
965 | { "xmf" , "Mingrelian" }, |
966 | { "xog" , "Soga" }, |
967 | { "yao" , "Yao" }, |
968 | { "yap" , "Yapese" }, |
969 | { "yav" , "Yangben" }, |
970 | { "ybb" , "Yemba" }, |
971 | { "yi" , "Yiddish" }, |
972 | { "yo" , "Yoruba" }, |
973 | { "yrl" , "Nheengatu" }, |
974 | { "yue" , "Yue Chinese" }, |
975 | { "yuw" , "Papua New Guinea" }, |
976 | { "za" , "Zhuang" }, |
977 | { "zap" , "Zapotec" }, |
978 | { "zbl" , "Blissymbols" }, |
979 | { "zea" , "Zeelandic" }, |
980 | { "zen" , "Zenaga" }, |
981 | { "zgh" , "Standard Moroccan Tamazight" }, |
982 | { "zh" , "Chinese" }, |
983 | { "zu" , "Zulu" }, |
984 | { "zun" , "Zuni" }, |
985 | { "zza" , "Zaza" }, |
986 | { nullptr, nullptr } |
987 | }; |
988 | |
989 | // Additional regional variants. |
990 | // Variant name, supported languages. |
991 | |
992 | static const char *locale_variants[][2] = { |
993 | { "valencia" , "ca" }, |
994 | { "iqtelif" , "tt" }, |
995 | { "saaho" , "aa" }, |
996 | { "tradnl" , "es" }, |
997 | { nullptr, nullptr }, |
998 | }; |
999 | |
1000 | // Script names and codes (excludes typographic variants, special codes, reserved codes and aliases for combined scripts). |
1001 | // Reference: |
1002 | // - https://en.wikipedia.org/wiki/ISO_15924 |
1003 | |
1004 | static const char *script_list[][2] = { |
1005 | { "Adlam" , "Adlm" }, |
1006 | { "Afaka" , "Afak" }, |
1007 | { "Caucasian Albanian" , "Aghb" }, |
1008 | { "Ahom" , "Ahom" }, |
1009 | { "Arabic" , "Arab" }, |
1010 | { "Imperial Aramaic" , "Armi" }, |
1011 | { "Armenian" , "Armn" }, |
1012 | { "Avestan" , "Avst" }, |
1013 | { "Balinese" , "Bali" }, |
1014 | { "Bamum" , "Bamu" }, |
1015 | { "Bassa Vah" , "Bass" }, |
1016 | { "Batak" , "Batk" }, |
1017 | { "Bengali" , "Beng" }, |
1018 | { "Bhaiksuki" , "Bhks" }, |
1019 | { "Blissymbols" , "Blis" }, |
1020 | { "Bopomofo" , "Bopo" }, |
1021 | { "Brahmi" , "Brah" }, |
1022 | { "Braille" , "Brai" }, |
1023 | { "Buginese" , "Bugi" }, |
1024 | { "Buhid" , "Buhd" }, |
1025 | { "Chakma" , "Cakm" }, |
1026 | { "Unified Canadian Aboriginal" , "Cans" }, |
1027 | { "Carian" , "Cari" }, |
1028 | { "Cham" , "Cham" }, |
1029 | { "Cherokee" , "Cher" }, |
1030 | { "Chorasmian" , "Chrs" }, |
1031 | { "Cirth" , "Cirt" }, |
1032 | { "Coptic" , "Copt" }, |
1033 | { "Cypro-Minoan" , "Cpmn" }, |
1034 | { "Cypriot" , "Cprt" }, |
1035 | { "Cyrillic" , "Cyrl" }, |
1036 | { "Devanagari" , "Deva" }, |
1037 | { "Dives Akuru" , "Diak" }, |
1038 | { "Dogra" , "Dogr" }, |
1039 | { "Deseret" , "Dsrt" }, |
1040 | { "Duployan" , "Dupl" }, |
1041 | { "Egyptian demotic" , "Egyd" }, |
1042 | { "Egyptian hieratic" , "Egyh" }, |
1043 | { "Egyptian hieroglyphs" , "Egyp" }, |
1044 | { "Elbasan" , "Elba" }, |
1045 | { "Elymaic" , "Elym" }, |
1046 | { "Ethiopic" , "Ethi" }, |
1047 | { "Khutsuri" , "Geok" }, |
1048 | { "Georgian" , "Geor" }, |
1049 | { "Glagolitic" , "Glag" }, |
1050 | { "Gunjala Gondi" , "Gong" }, |
1051 | { "Masaram Gondi" , "Gonm" }, |
1052 | { "Gothic" , "Goth" }, |
1053 | { "Grantha" , "Gran" }, |
1054 | { "Greek" , "Grek" }, |
1055 | { "Gujarati" , "Gujr" }, |
1056 | { "Gurmukhi" , "Guru" }, |
1057 | { "Hangul" , "Hang" }, |
1058 | { "Han" , "Hani" }, |
1059 | { "Hanunoo" , "Hano" }, |
1060 | { "Simplified Han" , "Hans" }, |
1061 | { "Traditional Han" , "Hant" }, |
1062 | { "Hatran" , "Hatr" }, |
1063 | { "Hebrew" , "Hebr" }, |
1064 | { "Hiragana" , "Hira" }, |
1065 | { "Anatolian Hieroglyphs" , "Hluw" }, |
1066 | { "Pahawh Hmong" , "Hmng" }, |
1067 | { "Nyiakeng Puachue Hmong" , "Hmnp" }, |
1068 | { "Old Hungarian" , "Hung" }, |
1069 | { "Indus" , "Inds" }, |
1070 | { "Old Italic" , "Ital" }, |
1071 | { "Javanese" , "Java" }, |
1072 | { "Jurchen" , "Jurc" }, |
1073 | { "Kayah Li" , "Kali" }, |
1074 | { "Katakana" , "Kana" }, |
1075 | { "Kawi" , "Kawi" }, |
1076 | { "Kharoshthi" , "Khar" }, |
1077 | { "Khmer" , "Khmr" }, |
1078 | { "Khojki" , "Khoj" }, |
1079 | { "Khitan large script" , "Kitl" }, |
1080 | { "Khitan small script" , "Kits" }, |
1081 | { "Kannada" , "Knda" }, |
1082 | { "Kpelle" , "Kpel" }, |
1083 | { "Kaithi" , "Kthi" }, |
1084 | { "Tai Tham" , "Lana" }, |
1085 | { "Lao" , "Laoo" }, |
1086 | { "Latin" , "Latn" }, |
1087 | { "Leke" , "Leke" }, |
1088 | { "Lepcha" , "Lepc" }, |
1089 | { "Limbu" , "Limb" }, |
1090 | { "Linear A" , "Lina" }, |
1091 | { "Linear B" , "Linb" }, |
1092 | { "Lisu" , "Lisu" }, |
1093 | { "Loma" , "Loma" }, |
1094 | { "Lycian" , "Lyci" }, |
1095 | { "Lydian" , "Lydi" }, |
1096 | { "Mahajani" , "Mahj" }, |
1097 | { "Makasar" , "Maka" }, |
1098 | { "Mandaic" , "Mand" }, |
1099 | { "Manichaean" , "Mani" }, |
1100 | { "Marchen" , "Marc" }, |
1101 | { "Mayan Hieroglyphs" , "Maya" }, |
1102 | { "Medefaidrin" , "Medf" }, |
1103 | { "Mende Kikakui" , "Mend" }, |
1104 | { "Meroitic Cursive" , "Merc" }, |
1105 | { "Meroitic Hieroglyphs" , "Mero" }, |
1106 | { "Malayalam" , "Mlym" }, |
1107 | { "Modi" , "Modi" }, |
1108 | { "Mongolian" , "Mong" }, |
1109 | { "Moon" , "Moon" }, |
1110 | { "Mro" , "Mroo" }, |
1111 | { "Meitei Mayek" , "Mtei" }, |
1112 | { "Multani" , "Mult" }, |
1113 | { "Myanmar / Burmese" , "Mymr" }, |
1114 | { "Nag Mundari" , "Nagm" }, |
1115 | { "Nandinagari" , "Nand" }, |
1116 | { "Old North Arabian" , "Narb" }, |
1117 | { "Nabataean" , "Nbat" }, |
1118 | { "Newa" , "Newa" }, |
1119 | { "Naxi Dongba" , "Nkdb" }, |
1120 | { "Nakhi Geba" , "Nkgb" }, |
1121 | { "N'ko" , "Nkoo" }, |
1122 | { "Nüshu" , "Nshu" }, |
1123 | { "Ogham" , "Ogam" }, |
1124 | { "Ol Chiki" , "Olck" }, |
1125 | { "Old Turkic" , "Orkh" }, |
1126 | { "Oriya" , "Orya" }, |
1127 | { "Osage" , "Osge" }, |
1128 | { "Osmanya" , "Osma" }, |
1129 | { "Old Uyghur" , "Ougr" }, |
1130 | { "Palmyrene" , "Palm" }, |
1131 | { "Pau Cin Hau" , "Pauc" }, |
1132 | { "Proto-Cuneiform" , "Pcun" }, |
1133 | { "Proto-Elamite" , "Pelm" }, |
1134 | { "Old Permic" , "Perm" }, |
1135 | { "Phags-pa" , "Phag" }, |
1136 | { "Inscriptional Pahlavi" , "Phli" }, |
1137 | { "Psalter Pahlavi" , "Phlp" }, |
1138 | { "Book Pahlavi" , "Phlv" }, |
1139 | { "Phoenician" , "Phnx" }, |
1140 | { "Klingon" , "Piqd" }, |
1141 | { "Miao" , "Plrd" }, |
1142 | { "Inscriptional Parthian" , "Prti" }, |
1143 | { "Proto-Sinaitic" , "Psin" }, |
1144 | { "Ranjana" , "Ranj" }, |
1145 | { "Rejang" , "Rjng" }, |
1146 | { "Hanifi Rohingya" , "Rohg" }, |
1147 | { "Rongorongo" , "Roro" }, |
1148 | { "Runic" , "Runr" }, |
1149 | { "Samaritan" , "Samr" }, |
1150 | { "Sarati" , "Sara" }, |
1151 | { "Old South Arabian" , "Sarb" }, |
1152 | { "Saurashtra" , "Saur" }, |
1153 | { "SignWriting" , "Sgnw" }, |
1154 | { "Shavian" , "Shaw" }, |
1155 | { "Sharada" , "Shrd" }, |
1156 | { "Shuishu" , "Shui" }, |
1157 | { "Siddham" , "Sidd" }, |
1158 | { "Khudawadi" , "Sind" }, |
1159 | { "Sinhala" , "Sinh" }, |
1160 | { "Sogdian" , "Sogd" }, |
1161 | { "Old Sogdian" , "Sogo" }, |
1162 | { "Sora Sompeng" , "Sora" }, |
1163 | { "Soyombo" , "Soyo" }, |
1164 | { "Sundanese" , "Sund" }, |
1165 | { "Syloti Nagri" , "Sylo" }, |
1166 | { "Syriac" , "Syrc" }, |
1167 | { "Tagbanwa" , "Tagb" }, |
1168 | { "Takri" , "Takr" }, |
1169 | { "Tai Le" , "Tale" }, |
1170 | { "New Tai Lue" , "Talu" }, |
1171 | { "Tamil" , "Taml" }, |
1172 | { "Tangut" , "Tang" }, |
1173 | { "Tai Viet" , "Tavt" }, |
1174 | { "Telugu" , "Telu" }, |
1175 | { "Tengwar" , "Teng" }, |
1176 | { "Tifinagh" , "Tfng" }, |
1177 | { "Tagalog" , "Tglg" }, |
1178 | { "Thaana" , "Thaa" }, |
1179 | { "Thai" , "Thai" }, |
1180 | { "Tibetan" , "Tibt" }, |
1181 | { "Tirhuta" , "Tirh" }, |
1182 | { "Tangsa" , "Tnsa" }, |
1183 | { "Toto" , "Toto" }, |
1184 | { "Ugaritic" , "Ugar" }, |
1185 | { "Vai" , "Vaii" }, |
1186 | { "Visible Speech" , "Visp" }, |
1187 | { "Vithkuqi" , "Vith" }, |
1188 | { "Warang Citi" , "Wara" }, |
1189 | { "Wancho" , "Wcho" }, |
1190 | { "Woleai" , "Wole" }, |
1191 | { "Old Persian" , "Xpeo" }, |
1192 | { "Cuneiform" , "Xsux" }, |
1193 | { "Yezidi" , "Yezi" }, |
1194 | { "Yi" , "Yiii" }, |
1195 | { "Zanabazar Square" , "Zanb" }, |
1196 | { nullptr, nullptr } |
1197 | }; |
1198 | |
1199 | #endif // LOCALES_H |
1200 | |