diff options
Diffstat (limited to 'perl-install/install_steps.pm')
0 files changed, 0 insertions, 0 deletions
![]() |
index : drakx | |
Mageia Installer and base platform for many utilities | Thierry Vignaud [tv] |
summaryrefslogtreecommitdiffstats |
package lang; # $Id$
use diagnostics;
use strict;
use common;
use utf8;
use log;
#- key: lang name (locale name for some (~5) special cases needing
#- extra distinctions)
#- [0]: lang name in english
#- [1]: transliterated locale name in the locale name (used for sorting)
#- [2]: default locale name to use for that language if there is not
#- an existing locale for the combination language+country choosen
#- [3]: geographic groups that this language belongs to (for displaying
#- in the menu grouped in smaller lists), 1=Europe, 2=Asia, 3=Africa,
#- 4=Oceania&Pacific, 5=America (if you wonder, it's the order
#- used in the olympic flag)
#- [4]: special value for LANGUAGE variable (if different of the default
#- of 'll_CC:ll_DD:ll' (ll_CC: locale (if exist) resulting of the
#- combination of chosen lang (ll) and country (CC), ll_DD: the
#- default locale shown here (field [2]) and ll: the language (the key))
our %langs = (
'af' => [ 'Afrikaans', 'Afrikaans', 'af_ZA', ' 3 ', 'iso-8859-1' ],
'am' => [ 'Amharic', 'ZZ emarNa', 'am_ET', ' 3 ', 'utf_ethi' ],
'ar' => [ 'Arabic', 'AA Arabic', 'ar_EG', ' 23 ', 'utf_ar' ],
'as' => [ 'Assamese', 'ZZ Assamese', 'as_IN', ' 2 ', 'utf_beng' ],
'az' => [ 'Azeri (Latin)', 'Azerbaycanca', 'az_AZ', ' 2 ', 'utf_az' ],
'be' => [ 'Belarussian', 'Belaruskaya', 'be_BY', '1 ', 'utf_cyr1' ],
'ber' => [ 'Berber', 'ZZ Tamazight', 'ber_MA', ' 3 ', 'utf_tfng', 'ber_MA:ber:fr' ],
'bg' => [ 'Bulgarian', 'Blgarski', 'bg_BG', '1 ', 'cp1251' ],
'bn' => [ 'Bengali', 'ZZ Bengali', 'bn_BD', ' 2 ', 'utf_beng' ],
#- bo_CN not yet done, using dz_BT locale instead
'bo' => [ 'Tibetan', 'ZZ Bod skad', 'dz_BT', ' 2 ', 'utf_tibt', 'bo' ],
'br' => [ 'Breton', 'Brezhoneg', 'br_FR', '1 ', 'iso-8859-15', 'br:fr_FR:fr' ],
'bs' => [ 'Bosnian', 'Bosanski', 'bs_BA', '1 ', 'iso-8859-2' ],
'ca' => [ 'Catalan', 'Catala', 'ca_ES', '1 ', 'iso-8859-15', 'ca:es_ES:es' ],
'ca@valencian' => [ 'Catalan (Valencian)', 'Catala (Valencia)', 'ca_ES', '1 ', 'iso-8859-15', 'ca_ES@valencian:ca@valencian:ca:es_ES:es' ],
'cs' => [ 'Czech', 'Cestina', 'cs_CZ', '1 ', 'iso-8859-2' ],
'cy' => [ 'Welsh', 'Cymraeg', 'cy_GB', '1 ', 'utf_lat8', 'cy:en_GB:en' ],
'da' => [ 'Danish', 'Dansk', 'da_DK', '1 ', 'iso-8859-15' ],
'de' => [ 'German', 'Deutsch', 'de_DE', '1 ', 'iso-8859-15' ],
'dz' => [ 'Buthanese', 'ZZ Dzhonka', 'dz_BT', ' 2 ', 'utf_tibt' ],
'el' => [ 'Greek', 'Ellynika', 'el_GR', '1 ', 'iso-8859-7' ],
'en_AU' => [ 'English (Australia)', 'English (AU)', 'en_AU', ' 4 ', 'iso-8859-1', 'en_AU:en_GB:en' ],
'en_CA' => [ 'English (Canada)', 'English (Canada)', 'en_CA', ' 5', 'iso-8859-15', 'en_CA:en_GB:en' ],
'en_GB' => [ 'English', 'English', 'en_GB', '123 5', 'iso-8859-15' ],
'en_IE' => [ 'English (Ireland)', 'English (Ireland)', 'en_IE', '1 ', 'iso-8859-15', 'en_IE:en_GB:en' ],
'en_NZ' => [ 'English (New-Zealand)', 'English (NZ)', 'en_NZ', ' 4 ', 'iso-8859-1', 'en_NZ:en_AU:en_GB:en' ],
'en_US' => [ 'English (American)', 'English (American)', 'en_US', ' 5', 'C' ],
'eo' => [ 'Esperanto', 'Esperanto', 'eo_XX', '12345', 'unicode' ],
'es' => [ 'Spanish', 'Espanol', 'es_ES', '1 3 5', 'iso-8859-15' ],
'et' => [ 'Estonian', 'Eesti', 'et_EE', '1 ', 'iso-8859-15' ],
'eu' => [ 'Euskara (Basque)', 'Euskara', 'eu_ES', '1 ', 'utf_lat1' ],
'fa' => [ 'Farsi (Iranian)', 'AA Farsi', 'fa_IR', ' 2 ', 'utf_ar' ],
'fi' => [ 'Finnish (Suomi)', 'Suomi', 'fi_FI', '1 ', 'iso-8859-15' ],
#- 'tl' in priority position for now, as 'fil' is not much used.
#- Monolingual window managers will not see the menus otherwise
'fil' => [ 'Filipino', 'Filipino', 'fil_PH', ' 2 ', 'utf_lat1', 'tl:fil' ],
'fo' => [ 'Faroese', 'Foroyskt', 'fo_FO', '1 ', 'utf_lat1' ],
'fr' => [ 'French', 'Francais', 'fr_FR', '1 345', 'iso-8859-15' ],
'fur' => [ 'Furlan', 'Furlan', 'fur_IT', '1 ', 'utf_lat1', 'fur:it_IT:it' ],
'fy' => [ 'Frisian', 'Frysk', 'fy_NL', '1 ', 'utf_lat1' ],
'ga' => [ 'Gaelic (Irish)', 'Gaeilge', 'ga_IE', '1 ', 'utf_lat1', 'ga:en_IE:en_GB:en' ],
#'gd' => [ 'Gaelic (Scottish)', 'Gaidhlig', 'gd_GB', '1 ', 'utf_lat8', 'gd:en_GB:en' ],
'gl' => [ 'Galician', 'Galego', 'gl_ES', '1 ', 'iso-8859-15', 'gl:es_ES:es:pt:pt_BR' ],
#- gn_PY not yet done, using es_PY locale instead
'gn' => [ 'Guarani', 'Avane-e', 'es_PY', ' 5', 'utf_lat1', 'gn:es_PY:es' ],
'gu' => [ 'Gujarati', 'ZZ Gujarati', 'gu_IN', ' 2 ', 'unicode' ],
#'gv' => [ 'Gaelic (Manx)', 'Gaelg', 'gv_GB', '1 ', 'utf_lat8', 'gv:en_GB:en' ],
'ha' => [ 'Hausa', 'Hausa', 'ha_NG', ' 3 ', 'utf_yo', 'ha:en_NG' ],
'he' => [ 'Hebrew', 'AA Ivrit', 'he_IL', ' 2 ', 'utf_he' ],
'hi' => [ 'Hindi', 'ZZ Hindi', 'hi_IN', ' 2 ', 'utf_deva' ],
'hr' => [ 'Croatian', 'Hrvatski', 'hr_HR', '1 ', 'iso-8859-2' ],
'hu' => [ 'Hungarian', 'Magyar', 'hu_HU', '1 ', 'iso-8859-2' ],
'hy' => [ 'Armenian', 'ZZ Armenian', 'hy_AM', ' 2 ', 'utf_armn' ],
# locale not done yet
#'ia' => [ 'Interlingua', 'Interlingua', 'ia_XX', '1 5', 'utf_lat1' ],
'id' => [ 'Indonesian', 'Bahasa Indonesia', 'id_ID', ' 2 ', 'utf_lat1' ],
'ig' => [ 'Igbo', 'Igbo', 'ig_NG', ' 3 ', 'utf_yo', 'ig:en_NG' ],
'is' => [ 'Icelandic', 'Islenska', 'is_IS', '1 ', 'iso-8859-15' ],
'it' => [ 'Italian', 'Italiano', 'it_IT', '1 ', 'iso-8859-15' ],
'iu' => [ 'Inuktitut', 'ZZ Inuktitut', 'iu_CA', ' 5', 'utf_iu' ],
'ja' => [ 'Japanese', 'ZZ Nihongo', 'ja_JP', ' 2 ', 'jisx0208' ],
'ka' => [ 'Georgian', 'ZZ Georgian', 'ka_GE', ' 2 ', 'utf_geor' ],
'kk' => [ 'Kazakh', 'Kazak', 'kk_KZ', ' 2 ', 'utf_cyr2' ],
'kl' => [ 'Greenlandic (inuit)', 'Kalaallisut', 'kl_GL', ' 5', 'utf_lat1' ],
'km' => [ 'Khmer', 'ZZ Khmer', 'km_KH', ' 2 ', 'utf_khmr' ],
'kn' => [ 'Kannada', 'ZZ Kannada', 'kn_IN', ' 2 ', 'utf_knda' ],
'ko' => [ 'Korean', 'ZZ Korea', 'ko_KR', ' 2 ', 'ksc5601' ],
'ku' => [ 'Kurdish', 'Kurdi', 'ku_TR', ' 2 ', 'utf_lat5' ],
#-'kw' => [ 'Cornish', 'Kernewek', 'kw_GB', '1 ', 'utf_lat8', 'kw:en_GB:en' ],
'ky' => [ 'Kyrgyz', 'Kyrgyz', 'ky_KG', ' 2 ', 'utf_cyr2' ],
#- lb_LU not yet done, using de_LU locale instead
'lb' => [ 'Luxembourgish', 'Letzebuergesch', 'de_LU', '1 ', 'utf_lat1', 'lb:de_LU' ],
'li' => [ 'Limbourgish', 'Limburgs', 'li_NL', '1 ', 'utf_lat1' ],
'lo' => [ 'Laotian', 'Laotian', 'lo_LA', ' 2 ', 'utf_laoo' ],
'lt' => [ 'Lithuanian', 'Lietuviskai', 'lt_LT', '1 ', 'iso-8859-13' ],
#- ltg_LV locale not done yet, using lv_LV for now
#- "ltg" is not a standard lang code, ISO-639 code was refused;
#- LTG_LV should be used instead (uppercase is for non-standard
#- langcodes, as defined by locale naming standard
'ltg' => [ 'Latgalian', 'Latgalisu', 'lv_LV', '1 ', 'utf_lat7', 'ltg:LTG:lv' ],
#'lu' => [ 'Luganda', 'Luganda', 'lg_UG', ' 3 ', 'utf_lat1' ],
'lv' => [ 'Latvian', 'Latviesu', 'lv_LV', '1 ', 'iso-8859-13' ],
'mi' => [ 'Maori', 'Maori', 'mi_NZ', ' 4 ', 'utf_lat7' ],
'mk' => [ 'Macedonian', 'Makedonski', 'mk_MK', '1 ', 'utf_cyr1' ],
'ml' => [ 'Malayalam', 'ZZ Malayalam', 'ml_IN', ' 2 ', 'utf_mlym' ],
'mn' => [ 'Mongolian', 'Mongol', 'mn_MN', ' 2 ', 'utf_cyr2' ],
'mr' => [ 'Marathi', 'ZZ Marathi', 'mr_IN', ' 2 ', 'utf_deva' ],
'ms' => [ 'Malay', 'Bahasa Melayu', 'ms_MY', ' 2 ', 'utf_lat1' ],
'mt' => [ 'Maltese', 'Maltin', 'mt_MT', '1 3 ', 'unicode' ],
#- "my_MM" not yet done, using "en_US" for now
'my' => [ 'Burmese', 'ZZ Bamaca', 'en_US', ' 2 ', 'utf_mymr', 'my_MM:my' ],
'nb' => [ 'Norwegian Bokmaal', 'Norsk, Bokmal', 'nb_NO', '1 ', 'iso-8859-15', 'nb:no' ],
'nds' => [ 'Low Saxon', 'Platduutsch', 'nds_DE', '1 ', 'utf_lat1', 'nds_DE:nds' ],
'ne' => [ 'Nepali', 'ZZ Nepali', 'ne_NP', ' 2 ', 'utf_deva' ],
'nl' => [ 'Dutch', 'Nederlands', 'nl_NL', '1 ', 'iso-8859-15' ],
'nn' => [ 'Norwegian Nynorsk', 'Norsk, Nynorsk', 'nn_NO', '1 ', 'iso-8859-15', 'nn:no@nynorsk:no_NY:no:nb' ],
'nr' => [ 'Ndebele', 'IsiNdebele', 'nr_ZA', ' 3 ', 'utf_lat1', 'nr:en_ZA' ],
'nso' => [ 'Northern Sotho', 'Sesotho sa Leboa', 'nso_ZA', ' 3 ', 'utf_lat1', 'st:nso:en_ZA' ],
'oc' => [ 'Occitan', 'Occitan', 'oc_FR', '1 ', 'utf_lat1', 'oc:fr_FR:fr' ],
'pa_IN' => [ 'Punjabi (gurmukhi)', 'ZZ Punjabi', 'pa_IN', ' 2 ', 'utf_guru' ],
'pl' => [ 'Polish', 'Polski', 'pl_PL', '1 ', 'iso-8859-2' ],
'pt' => [ 'Portuguese', 'Portugues', 'pt_PT', '1 3 ', 'iso-8859-15', 'pt_PT:pt:pt_BR' ],
'pt_BR' => [ 'Portuguese Brazil', 'Portugues do Brasil', 'pt_BR', ' 5', 'iso-8859-1', 'pt_BR:pt_PT:pt' ],
#- qu_PE not yet done, using es_PE locale instead
'qu' => [ 'Quichua', 'Runa Simi', 'es_PE', ' 5', 'utf_lat1', 'qu:es_PE:es' ],
'ro' => [ 'Romanian', 'Romana', 'ro_RO', '1 ', 'iso-8859-2' ],
'ru' => [ 'Russian', 'Russkij', 'ru_RU', '12 ', 'koi8-u' ],
'rw' => [ 'Kinyarwanda', 'Kinyarwanda', 'rw_RW', ' 3 ', 'utf_lat1', 'rw' ],
'sc' => [ 'Sardinian', 'Sardu', 'sc_IT', '1 ', 'utf_lat1', 'sc:it_IT:it' ],
'se' => [ 'Saami', 'Samegiella', 'se_NO', '1 ', 'unicode' ],
'sk' => [ 'Slovak', 'Slovencina', 'sk_SK', '1 ', 'iso-8859-2' ],
'sl' => [ 'Slovenian', 'Slovenscina', 'sl_SI', '1 ', 'iso-8859-2' ],
'so' => [ 'Somali', 'Soomaali', 'so_SO', ' 3 ', 'utf_lat1' ],
'sq' => [ 'Albanian', 'Shqip', 'sq_AL', '1 ', 'iso-8859-1' ],
'sr' => [ 'Serbian Cyrillic', 'Srpska', 'sr_CS', '1 ', 'utf_cyr1', 'sp:sr' ],
#- "sh" comes first, because otherwise, due to the way glibc does language
#- fallback, if "sr@Latn" is not there but a "sr" (whichs uses cyrillic)
#- is there, "sh" will never be used.
'sr@Latn' => [ 'Serbian Latin', 'Srpska', 'sr_CS', '1 ', 'unicode', 'sh:sr@Latn' ],
'ss' => [ 'Swati', 'SiSwati', 'ss_ZA', ' 3 ', 'utf_lat1', 'ss:en_ZA' ],
'st' => [ 'Sotho', 'Sesotho', 'st_ZA', ' 3 ', 'utf_lat1', 'st:nso:en_ZA' ],
'sv' => [ 'Swedish', 'Svenska', 'sv_SE', '1 ', 'iso-8859-15' ],
'ta' => [ 'Tamil', 'ZZ Tamil', 'ta_IN', ' 2 ', 'utf_taml' ],
'te' => [ 'Telugu', 'ZZ Telugu', 'te_IN', ' 2 ', 'unicode' ],
'tg' => [ 'Tajik', 'Tojiki', 'tg_TJ', ' 2 ', 'utf_cyr2' ],
'th' => [ 'Thai', 'ZZ Thai', 'th_TH', ' 2 ', 'tis620' ],
'tk' => [ 'Turkmen', 'Turkmence', 'tk_TM', ' 2 ', 'utf_az' ],
'tn' => [ 'Tswana', 'Setswana', 'tn_ZA', ' 3 ', 'utf_lat1', 'tn:en_ZA' ],
'tr' => [ 'Turkish', 'Turkce', 'tr_TR', '12 ', 'iso-8859-9' ],
'ts' => [ 'Tsonga', 'Xitsonga', 'ts_ZA', ' 3 ', 'utf_lat1', 'ts:en_ZA' ],
'tt' => [ 'Tatar', 'Tatarca', 'tt_RU', ' 2 ', 'utf_lat5' ],
'ug' => [ 'Uyghur', 'AA Uyghur', 'ug_CN', ' 2 ', 'utf_ar', 'ug' ],
'uk' => [ 'Ukrainian', 'Ukrayinska', 'uk_UA', '1 ', 'koi8-u' ],
'ur' => [ 'Urdu', 'AA Urdu', 'ur_PK', ' 2 ', 'utf_ar' ],
'uz' => [ 'Uzbek', 'Ozbekcha', 'uz_UZ', ' 2 ', 'utf_cyr2', 'uz' ],
'uz@cyrillic' => [ 'Uzbek (cyrillic)', 'Ozbekcha', 'uz_UZ@cyrillic', ' 2 ', 'utf_cyr2', 'uz@cyrillic' ],
've' => [ 'Venda', 'Tshivenda', 've_ZA', ' 3 ', 'utf_lat1', 've:ven:en_ZA' ],
'vi' => [ 'Vietnamese', 'Tieng Viet', 'vi_VN', ' 2 ', 'utf_vi' ],
'wa' => [ 'Walon', 'Walon', 'wa_BE', '1 ', 'utf_lat1', 'wa:fr_BE:fr' ],
#- locale "wen_DE" not done yet, using "de_DE" instead
#- wen disabled until we have a perl-install/pixmaps/langs/lang-wen.png for it
#'wen' => [ 'Sorbian', 'Sorbian', 'de_DE', '1 ', 'utf_lat1', 'wen' ],
'xh' => [ 'Xhosa', 'IsiXhosa', 'xh_ZA', ' 3 ', 'utf_lat1', 'xh:en_ZA' ],
'yi' => [ 'Yiddish', 'AA Yidish', 'yi_US', '1 ', 'utf_he' ],
'yo' => [ 'Yoruba', 'Yoruba', 'yo_NG', ' 3 ', 'utf_yo', 'yo:en_NG' ],
'zh_CN' => [ 'Chinese Simplified', 'ZZ ZhongWen', 'zh_CN', ' 2 ', 'gb2312', 'zh_CN.GBK:zh_CN.GB2312:zh_CN:zh' ],
'zh_TW' => [ 'Chinese Traditional', 'ZZ ZhongWen', 'zh_TW', ' 2 ', 'Big5', 'zh_TW.Big5:zh_TW:zh_HK:zh' ],
'zu' => [ 'Zulu', 'IsiZulu', 'zu_ZA', ' 3 ', 'utf_lat1', 'xh:en_ZA' ],
);
sub l2name { exists $langs{$_[0]} && $langs{$_[0]}[0] }
sub l2transliterated { exists $langs{$_[0]} && $langs{$_[0]}[1] }
sub l2locale { exists $langs{$_[0]} && $langs{$_[0]}[2] }
sub l2location {
my ($lang) = @_;
my %geo = (1 => 'Europe', 2 => 'Asia', 3 => 'Africa', 4 => 'Oceania/Pacific', 5 => 'America');
map { $geo{$_} } grep { $langs{$lang} && $langs{$lang}[3] =~ $_ } 1..5;
}
sub l2charset { exists $langs{$_[0]} && $langs{$_[0]}[4] }
sub l2language { exists $langs{$_[0]} && $langs{$_[0]}[5] }
sub list_langs {
my (%options) = @_;
my @l = keys %langs;
$options{exclude_non_installed} ? grep { -e "/usr/share/locale/" . l2locale($_) . "/LC_CTYPE" } @l : @l;
}
sub text_direction_rtl() {
#-PO: the string "default:LTR" can be translated *ONLY* as "default:LTR"
#-PO: or as "default:RTL", depending if your language is written from
#-PO: left to right, or from right to left; any other string is wrong.
N("default:LTR") eq "default:RTL";
}
#- key: country name (that should be YY in xx_YY locale)
#- [0]: country name in natural language
#- [1]: default locale for that country
#- [2]: geographic groups that this country belongs to (for displaying
#- in the menu grouped in smaller lists), 1=Europe, 2=Asia, 3=Africa,
#- 4=Oceania&Pacific, 5=America (if you wonder, it's the order
#- used in the olympic flag)
#-
#- Note: for countries for which a glibc locale do not exist (yet) I tried to
#- put a locale that makes sense; and a '#' at the end of the line to show
#- the locale is not the "correct" one. 'en_US' is used when no good choice
#- is available.
my %countries = (
'AD' => [ N_("Andorra"), 'ca_AD', '1' ],
'AE' => [ N_("United Arab Emirates"), 'ar_AE', '2' ],
'AF' => [ N_("Afghanistan"), 'en_US', '2' ], #
'AG' => [ N_("Antigua and Barbuda"), 'en_US', '5' ], #
'AI' => [ N_("Anguilla"), 'en_US', '5' ], #
'AL' => [ N_("Albania"), 'sq_AL', '1' ],
'AM' => [ N_("Armenia"), 'hy_AM', '2' ],
'AN' => [ N_("Netherlands Antilles"), 'en_US', '5' ], #
'AO' => [ N_("Angola"), 'pt_PT', '3' ], #
'AQ' => [ N_("Antarctica"), 'en_US', '4' ], #
'AR' => [ N_("Argentina"), 'es_AR', '5' ],
'AS' => [ N_("American Samoa"), 'en_US', '4' ], #
'AT' => [ N_("Austria"), 'de_AT', '1' ],
'AU' => [ N_("Australia"), 'en_AU', '4' ],
'AW' => [ N_("Aruba"), 'en_US', '5' ], #
'AZ' => [ N_("Azerbaijan"), 'az_AZ', '1' ],
'BA' => [ N_("Bosnia and Herzegovina"), 'bs_BA', '1' ],
'BB' => [ N_("Barbados"), 'en_US', '5' ], #
'BD' => [ N_("Bangladesh"), 'bn_BD', '2' ],
'BE' => [ N_("Belgium"), 'fr_BE', '1' ],
'BF' => [ N_("Burkina Faso"), 'en_US', '3' ], #
'BG' => [ N_("Bulgaria"), 'bg_BG', '1' ],
'BH' => [ N_("Bahrain"), 'ar_BH', '2' ],
'BI' => [ N_("Burundi"), 'en_US', '3' ], #
'BJ' => [ N_("Benin"), 'fr_FR', '3' ], #
'BM' => [ N_("Bermuda"), 'en_US', '5' ], #
'BN' => [ N_("Brunei Darussalam"), 'ar_EG', '2' ], #
'BO' => [ N_("Bolivia"), 'es_BO', '5' ],
'BR' => [ N_("Brazil"), 'pt_BR', '5' ],
'BS' => [ N_("Bahamas"), 'en_US', '5' ], #
'BT' => [ N_("Bhutan"), 'dz_BT', '2' ],
'BV' => [ N_("Bouvet Island"), 'en_US', '3' ], #
'BW' => [ N_("Botswana"), 'en_BW', '3' ],
'BY' => [ N_("Belarus"), 'be_BY', '1' ],
'BZ' => [ N_("Belize"), 'en_US', '5' ], #
'CA' => [ N_("Canada"), 'en_CA', '5' ],
'CC' => [ N_("Cocos (Keeling) Islands"), 'en_US', '4' ], #
'CD' => [ N_("Congo (Kinshasa)"), 'fr_FR', '3' ], #
'CF' => [ N_("Central African Republic"), 'fr_FR', '3' ], #
'CG' => [ N_("Congo (Brazzaville)"), 'fr_FR', '3' ], #
'CH' => [ N_("Switzerland"), 'de_CH', '1' ],
'CI' => [ N_("Cote d'Ivoire"), 'fr_FR', '3' ], #
'CK' => [ N_("Cook Islands"), 'en_US', '4' ], #
'CL' => [ N_("Chile"), 'es_CL', '5' ],
'CM' => [ N_("Cameroon"), 'fr_FR', '3' ], #
'CN' => [ N_("China"), 'zh_CN', '2' ],
'CO' => [ N_("Colombia"), 'es_CO', '5' ],
'CR' => [ N_("Costa Rica"), 'es_CR', '5' ],
'CS' => [ N_("Serbia & Montenegro"), 'sr_CS', '1' ],
'CU' => [ N_("Cuba"), 'es_DO', '5' ], #
'CV' => [ N_("Cape Verde"), 'pt_PT', '3' ], #
'CX' => [ N_("Christmas Island"), 'en_US', '4' ], #
'CY' => [ N_("Cyprus"), 'el_CY', '1' ],
'CZ' => [ N_("Czech Republic"), 'cs_CZ', '2' ],
'DE' => [ N_("Germany"), 'de_DE', '1' ],
'DJ' => [ N_("Djibouti"), 'en_US', '3' ], #
'DK' => [ N_("Denmark"), 'da_DK', '1' ],