# encoding: utf-8 =begin * Name: SiSU ** Description: documents, structuring, processing, publishing, search *** internationalisation ** Author: Ralph Amissah ** Copyright: (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013, 2014, 2015 Ralph Amissah, All Rights Reserved. ** License: GPL 3 or later: SiSU, a framework for document structuring, publishing and search Copyright (C) Ralph Amissah This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see . If you have Internet connection, the latest version of the GPL should be available at these locations: ** SiSU uses: * Standard SiSU markup syntax, * Standard SiSU meta-markup syntax, and the * Standard SiSU object citation numbering and system ** Hompages: ** Git =end module SiSU_i18n @@language_table,@@language_list=nil,nil class Languages def language def table @@language_table ||= { am: { c: 'am', n: 'Amharic', t: 'Amharic', xlp: 'amharic' }, bg: { c: 'bg', n: 'Bulgarian', t: 'Български (Bəlgarski)', xlp: 'bulgarian' }, bn: { c: 'bn', n: 'Bengali', t: 'Bengali', xlp: 'bengali' }, br: { c: 'br', n: 'Breton', t: 'Breton', xlp: 'breton' }, ca: { c: 'ca', n: 'Catalan', t: 'catalan', xlp: 'catalan' }, cs: { c: 'cs', n: 'Czech', t: 'česky', xlp: 'czech' }, cy: { c: 'cy', n: 'Welsh', t: 'Welsh', xlp: 'welsh' }, da: { c: 'da', n: 'Danish', t: 'dansk', xlp: 'danish' }, de: { c: 'de', n: 'German', t: 'Deutsch', xlp: 'german' }, el: { c: 'el', n: 'Greek', t: 'Ελληνικά (Ellinika)', xlp: 'greek' }, en: { c: 'en', n: 'English', t: 'English', xlp: 'english' }, eo: { c: 'eo', n: 'Esperanto', t: 'Esperanto', xlp: 'esperanto' }, es: { c: 'es', n: 'Spanish', t: 'español', xlp: 'spanish' }, et: { c: 'et', n: 'Estonian', t: 'Estonian', xlp: 'estonian' }, eu: { c: 'eu', n: 'Basque', t: 'basque', xlp: 'basque' }, fi: { c: 'fi', n: 'Finnish', t: 'suomi', xlp: 'finnish' }, fr: { c: 'fr', n: 'French', t: 'français', xlp: 'french' }, ga: { c: 'ga', n: 'Irish', t: 'Irish', xlp: 'irish' }, gl: { c: 'gl', n: 'Galician', t: 'Galician', xlp: 'galician' }, he: { c: 'he', n: 'Hebrew', t: 'Hebrew', xlp: 'hebrew' }, hi: { c: 'hi', n: 'Hindi', t: 'Hindi', xlp: 'hindi' }, hr: { c: 'hr', n: 'Croatian', t: 'Croatian', xlp: 'croatian' }, hy: { c: 'hy', n: 'Armenian', t: 'Armenian', xlp: 'armenian' }, ia: { c: 'ia', n: 'Interlingua', t: 'Interlingua', xlp: 'interlingua' }, is: { c: 'is', n: 'Icelandic', t: 'Icelandic', xlp: 'icelandic' }, it: { c: 'it', n: 'Italian', t: 'Italiano', xlp: 'italian' }, ja: { c: 'ja', n: 'Japanese', t: '日本語 (Nihongo)', xlp: 'japanese' }, ko: { c: 'ko', n: 'Korean', t: 'Korean', xlp: 'korean' }, la: { c: 'la', n: 'Latin', t: 'Latin', xlp: 'latin' }, lo: { c: 'lo', n: 'Lao', t: 'Lao', xlp: 'lao' }, lt: { c: 'lt', n: 'Lithuanian', t: 'Lithuanian', xlp: 'lithuanian' }, lv: { c: 'lv', n: 'Latvian', t: 'Latvian', xlp: 'latvian' }, ml: { c: 'ml', n: 'Malayalam', t: 'Malayalam', xlp: 'malayalam' }, mr: { c: 'mr', n: 'Marathi', t: 'Marathi', xlp: 'marathi' }, nl: { c: 'nl', n: 'Dutch', t: 'Nederlands', xlp: 'dutch' }, no: { c: 'no', n: 'Norwegian', t: 'norsk', xlp: 'norsk' }, nn: { c: 'nn', n: 'Norwegian Nynorsk', t: 'nynorsk', xlp: 'nynorsk' }, oc: { c: 'oc', n: 'Occitan', t: 'Occitan', xlp: 'occitan' }, pl: { c: 'pl', n: 'Polish', t: 'polski', xlp: 'polish' }, pt: { c: 'pt', n: 'Portuguese', t: 'Português', xlp: 'portuges' }, pt_BR: { c: 'pt_BR', n: 'Portuguese Brazil', t: 'Brazilian Português', xlp: 'brazilian' }, ro: { c: 'ro', n: 'Romanian', t: 'română', xlp: 'romanian' }, ru: { c: 'ru', n: 'Russian', t: 'Русский (Russkij)', xlp: 'russian' }, sa: { c: 'sa', n: 'Sanskrit', t: 'Sanskrit', xlp: 'sanskrit' }, se: { c: 'se', n: 'Sami', t: 'Samin', xlp: 'samin' }, sk: { c: 'sk', n: 'Slovak', t: 'slovensky', xlp: 'slovak' }, sl: { c: 'sl', n: 'Slovenian', t: 'Slovenian', xlp: 'slovenian' }, sq: { c: 'sq', n: 'Albanian', t: 'Albanian', xlp: 'albanian' }, sr: { c: 'sr', n: 'Serbian', t: 'Serbian', xlp: 'serbian' }, sv: { c: 'sv', n: 'Swedish', t: 'svenska', xlp: 'swedish' }, ta: { c: 'ta', n: 'Tamil', t: 'Tamil', xlp: 'tamil' }, te: { c: 'te', n: 'Telugu', t: 'Telugu', xlp: 'telugu' }, th: { c: 'th', n: 'Thai', t: 'Thai', xlp: 'thai' }, tk: { c: 'tk', n: 'Turkmen', t: 'Turkmen', xlp: 'turkmen' }, tr: { c: 'tr', n: 'Turkish', t: 'Türkçe', xlp: 'turkish' }, uk: { c: 'uk', n: 'Ukranian', t: 'українська (ukrajins\'ka)', xlp: 'ukrainian' }, ur: { c: 'ur', n: 'Urdu', t: 'Urdu', xlp: 'urdu' }, us: { c: 'en', n: 'English (American)',t: 'English', xlp: 'english' }, vi: { c: 'vi', n: 'Vietnamese', t: 'Vietnamese', xlp: 'vietnamese' }, zh: { c: 'zh', n: 'Chinese', t: '中文', xlp: 'chinese' }, en: { c: 'en', n: 'English', t: 'English', xlp: 'english' }, xx: { c: 'xx', n: 'Default', t: 'English', xlp: 'english' }, } end def list @@language_list ||= { 'am' => table[:am], 'bg' => table[:bg], 'bn' => table[:bn], 'br' => table[:br], 'ca' => table[:ca], 'cs' => table[:cs], 'cy' => table[:cy], 'da' => table[:da], 'de' => table[:de], 'el' => table[:el], 'en' => table[:en], 'eo' => table[:eo], 'es' => table[:es], 'et' => table[:et], 'eu' => table[:eu], 'fi' => table[:fi], 'fr' => table[:fr], 'ga' => table[:ga], 'gl' => table[:gl], 'he' => table[:he], 'hi' => table[:hi], 'hr' => table[:hr], 'hy' => table[:hy], 'ia' => table[:ia], 'is' => table[:is], 'it' => table[:it], 'ja' => table[:ja], 'ko' => table[:ko], 'la' => table[:la], 'lo' => table[:lo], 'lt' => table[:lt], 'lv' => table[:lv], 'ml' => table[:ml], 'mr' => table[:mr], 'nl' => table[:nl], 'no' => table[:no], 'nn' => table[:nn], 'oc' => table[:oc], 'pl' => table[:pl], 'pt' => table[:pt], 'pt_BR' => table[:pt_BR], 'ro' => table[:ro], 'ru' => table[:ru], 'sa' => table[:sa], 'se' => table[:se], 'sk' => table[:sk], 'sl' => table[:sl], 'sq' => table[:sq], 'sr' => table[:sr], 'sv' => table[:sv], 'ta' => table[:ta], 'te' => table[:te], 'th' => table[:th], 'tk' => table[:tk], 'tr' => table[:tr], 'uk' => table[:uk], 'ur' => table[:ur], 'us' => table[:en], 'vi' => table[:vi], 'zh' => table[:zh], 'en' => table[:en], 'xx' => table[:en] } end self end end class Alphabet def initialize(lng_code) @lng_code=lng_code end def hash_arrays @alph=case @lng_code when /en/ #english { u: %w[A B C D E F G H I J K L M N O P Q R S T U V W X Y Z], l: %w[a b c d e f g h i j k l m n o p q r s t u v w x y z] } when /da|no|nn/ #danish, norwegian { u: %w[A B C D E F G H I J K L M N O P Q R S T U V W X Y Z Å Æ Ø], l: %w[a b c d e f g h i j k l m n o p q r s t u v w x y z å æ ø] #u: %W[A B C D E F G H I J K L M N O P Q R S T U V W X Y Z Æ Ø Å], #l: %w[a b c d e f g h i j k l m n o p q r s t u v w x y z æ ø å] } when /sv/ #swedish { u: %w[A B C D E F G H I J K L M N O P Q R S T U V W X Y Z Å Ä Ö], l: %w[a b c d e f g h i j k l m n o p q r s t u v w x y z å ä ö] } else #english default { u: %w[A B C D E F G H I J K L M N O P Q R S T U V W X Y Z], l: %w[a b c d e f g h i j k l m n o p q r s t u v w x y z] } end end def hash_strings { u: hash_arrays[:u].join, l: hash_arrays[:l].join } end end end __END__ Language Lists * po4a c: Px[:lng_lst] see constants.rb * polyglossia xlp: missing from (:c) list: arabic asturian bahasai bahasam coptic divehi farsi lsorbian magyar scottish syriac usorbian note ISO_639-1 also note ISO_639-2 Px[:lng_lst] # constants.rb module SiSU_TextTranslation class Language def initialize(md) @md=md end def tex_name(char) @lang=if char case char when 'sq' then 'albanian' when 'am' then 'amharic' #when 'ar' then 'arabic' # see polyglossia when 'hy' then 'armenian' #when '' then 'asturian' # polyglossia #when '' then 'bahasai' # polyglossia #when '' then 'bahasam' # polyglossia when 'eu' then 'basque' when 'bn' then 'bengali' when 'pt_BR' then 'brazilian' when 'br' then 'breton' when 'bg' then 'bulgarian' when 'ca' then 'catalan' # see polyglossia #when '' then 'coptic' # polyglossia when 'hr' then 'croatian' when 'cs' then 'czech' when 'da' then 'danish' #when '' then 'divehi' # polyglossia when 'nl' then 'dutch' # see polyglossia when 'en' then 'english' # see polyglossia when 'eo' then 'esperanto' # see polyglossia when 'et' then 'estonian' when 'gl' then 'galician' when 'de' then 'german' when 'el' then 'greek' #gl ? when 'he' then 'hebrew' when 'hi' then 'hindi' when 'is' then 'icelandic' when 'ia' then 'interlingua' when 'ga' then 'irish' when 'it' then 'italian' #when '' then 'farsi' # polyglossia when 'fi' then 'finnish' when 'fr' then 'french' when 'lo' then 'lao' when 'la' then 'latin' when 'lv' then 'latvian' when 'lt' then 'lithuanian' #when '' then 'lsorbian' # polyglossia #when '' then 'magyar' # polyglossia when 'ml' then 'malayalam' when 'mr' then 'marathi' #when 'hu' then 'magyar' when 'no' then 'norske' when 'nn' then 'nynorsk' when 'oc' then 'occitan' when 'pl' then 'polish' when 'pt' then 'portuges' when 'ro' then 'romanian' when 'ru' then 'russian' when 'se' then 'samin' #(check sami?) when 'sa' then 'sanskrit' when 'sr' then 'serbian' #when '' then 'scottish' # polyglossia (gd (Gaelic (Scots))) when 'sk' then 'slovak' when 'sl' then 'slovenian' when 'es' then 'spanish' when 'sv' then 'swedish' when 'ta' then 'tamil' when 'te' then 'telugu' when 'th' then 'thai' when 'tr' then 'turkish' when 'tk' then 'turkmen' when 'uk' then 'ukrainian' when 'ur' then 'urdu' #when '' then 'usorbian' # polyglossia when 'vi' then 'vietnamese' when 'cy' then 'welsh' when 'us' then 'USenglish' # depreciated, see iso-639-2 else then 'english' end else 'english' end end end end #% Language List po4a http://www.debian.org/international/l10n/po/ see polyglossia for subset * CSB (Unknown language) * KAB (Unknown language) * TLH (Unknown language) * aa (Afar) * ab (Abkhazian) * af (Afrikaans) * af_ZA (Afrikaans, as spoken in South Africa) * am (Amharic) * an (Unknown language) * ang (Unknown language) * ar (Arabic) * ar_AR (Arabic, as spoken in Argentina) * ar_EG (Arabic, as spoken in Egypt) * ar_OM (Arabic, as spoken in Oman) * ar_PS (Arabic, as spoken in Palestinian Territory, Occupied) * ar_SA (Arabic, as spoken in Saudi Arabia) * ar_SY (Arabic, as spoken in Syrian Arab Republic) * as (Assamese) * ast (Unknown language) * ay (Aymara) * az (Azerbaijani) * az_IR (Azerbaijani, as spoken in Iran) * be (Belarusian) * be@latin (Unknown language) * be@tarask (Unknown language) * bem (Unknown language) * bg (Bulgarian) * bg_BG (Bulgarian, as spoken in Bulgaria) * bi (Bislama) * bn (Bengali) * bn_BD (Bengali, as spoken in Bangladesh) * bn_IN (Bengali, as spoken in India) * bo (Tibetan) * br (Breton) * bs (Bosnian) * bs_BA (Bosnian, as spoken in Bosnia and Herzegovina) * bs_BS (Bosnian, as spoken in Bahamas) * byn (Unknown language) * ca (Catalan) * ca@valencia (Unknown language) * ca_AD (Catalan, as spoken in Andorra) * ca_ES (Catalan, as spoken in Spain) * ca_ES@valencia (Unknown language) * ca_FR (Catalan, as spoken in France) * ca_IT (Catalan, as spoken in Italy) * co (Corsican) * crh (Unknown language) * cs (Czech) * cs_CZ (Czech, as spoken in Czech Republic) * csb (Unknown language) * cy (Welsh) * cy_GB (Welsh, as spoken in Great Britain) * cz (Unknown language) * da (Danish) * da_DK (Danish, as spoken in Denmark) * de (German) * de_AT (German, as spoken in Austria) * de_CH (German, as spoken in Switzerland) * de_DE (German, as spoken in Germany) * dk (Unknown language) * dz (Dzongkha) * el (Greek) * el_GR (Greek, as spoken in Greece) * en (English) * en@boldquot (Unknown language) * en@quot (Unknown language) * en@shaw (Unknown language) * en_AU (English, as spoken in Australia) * en_CA (English, as spoken in Canada) * en_GB (English, as spoken in Great Britain) * en_NZ (English, as spoken in New Zealand) * en_US (English, as spoken in United States) * en_US@piglatin (Unknown language) * en_ZA (English, as spoken in South Africa) * eo (Esperanto) * es (Spanish) * es_AR (Spanish, as spoken in Argentina) * es_CL (Spanish, as spoken in Chile) * es_CO (Spanish, as spoken in Colombia) * es_CR (Spanish, as spoken in Costa Rica) * es_DO (Spanish, as spoken in Dominican Republic) * es_EC (Spanish, as spoken in Ecuador) * es_ES (Spanish, as spoken in Spain) * es_GA (Spanish, as spoken in Gabon) * es_GT (Spanish, as spoken in Guatemala) * es_HN (Spanish, as spoken in Honduras) * es_LA (Spanish, as spoken in Lao People''s Democratic Republic) * es_MX (Spanish, as spoken in Mexico) * es_NI (Spanish, as spoken in Nicaragua) * es_PA (Spanish, as spoken in Panama) * es_PE (Spanish, as spoken in Peru) * es_PR (Spanish, as spoken in Puerto Rico) * es_SV (Spanish, as spoken in El Salvador) * es_UY (Spanish, as spoken in Uruguay) * es_VE (Spanish, as spoken in Venezuela) * et (Estonian) * et_EE (Estonian, as spoken in Estonia) * eu (Basque) * eu_ES (Basque, as spoken in Spain) * fa (Persian) * fa_AF (Persian, as spoken in Afghanistan) * fa_IR (Persian, as spoken in Iran) * fi (Finnish) * fi_FI (Finnish, as spoken in Finland) * fil (Unknown language) * fo (Faeroese) * fo_FO (Faeroese, as spoken in Faroe Islands) * fr (French) * fr_BE (French, as spoken in Belgium) * fr_CA (French, as spoken in Canada) * fr_CH (French, as spoken in Switzerland) * fr_FR (French, as spoken in France) * fr_FX (French, as spoken in France, Metropolitan) * fr_LU (French, as spoken in Luxembourg) * frp (Unknown language) * fur (Unknown language) * fy (Frisian) * fy_NL (Frisian, as spoken in Netherlands) * ga (Irish) * gd (Gaelic (Scots)) * gez (Unknown language) * gl (Galician) * gl_ES (Galician, as spoken in Spain) * gn (Guarani) * gu (Gujarati) * gv (Manx) * ha (Hausa) * he (Hebrew) * he_IL (Hebrew, as spoken in Israel) * hi (Hindi) * hne (Unknown language) * hr (Croatian) * hr_HR (Croatian, as spoken in Croatia) * ht (Unknown language) * hu (Hungarian) * hu_HU (Hungarian, as spoken in Hungary) * hy (Armenian) * ia (Interlingua) * id (Indonesian) * id_ID (Indonesian, as spoken in Indonesia) * ig (Unknown language) * io (Unknown language) * is (Icelandic) * is_IS (Icelandic, as spoken in Iceland) * it (Italian) * it_CH (Italian, as spoken in Switzerland) * it_IT (Italian, as spoken in Italy) * iu (Inuktitut) * ja (Japanese) * ja_JP (Japanese, as spoken in Japan) * jv (Unknown language) * jv_ID (Unknown language) * ka (Georgian) * kab (Unknown language) * kk (Kazakh) * kl (Kalaallisut) * km (Khmer) * km_KH (Khmer, as spoken in Cambodia) * kn (Kannada) * ko (Korean) * ko_KR (Korean, as spoken in Korea) * ks (Kashmiri) * ku (Kurdish) * kw (Cornish) * ky (Kirghiz) * la (Latin) * lb (Letzeburgesch) * lg (Unknown language) * li (Unknown language) * ln (Lingala) * lo (Lao) * lt (Lithuanian) * lt_LT (Lithuanian, as spoken in Lithuania) * lv (Latvian) * lv_LV (Latvian, as spoken in Latvia) * mai (Unknown language) * mal (Unknown language) * mg (Malagasy) * mi (Maori) * mk (Macedonian) * mk_MK (Macedonian, as spoken in Macedonia, the Former Yugoslav Republic of) * ml (Malayalam) * ml_IN (Malayalam, as spoken in India) * ml_ML (Malayalam, as spoken in Mali) * mn (Mongolian) * mr (Marathi) * ms (Malay) * ms_MY (Malay, as spoken in Malaysia) * mt (Maltese) * my (Burmese) * my_MM (Burmese, as spoken in Myanmar) * na (Nauru) * nb (Norwegian Bokmål) * nb_NO (Norwegian Bokmål, as spoken in Norway) * nds (Unknown language) * ne (Nepali) * new (Unknown language) * nl (Dutch) * nl_BE (Dutch, as spoken in Belgium) * nl_NL (Dutch, as spoken in Netherlands) * nn (Norwegian Nynorsk) * nn_NO (Norwegian Nynorsk, as spoken in Norway) * no (Norwegian) * no_NO (Norwegian, as spoken in Norway) * nr (Ndebele, South) * nso (Unknown language) * oc (Occitan (post 1500)) * oc_FR (Occitan (post 1500), as spoken in France) * om (Oromo) * or (Oriya) * pa (Panjabi) * pl (Polish) * pl_PL (Polish, as spoken in Poland) * pms (Unknown language) * ps (Pushto) * pt (Portuguese) * pt_BR (Portuguese, as spoken in Brazil) * pt_PT (Portuguese, as spoken in Portugal) * qu (Quechua) * rm (Rhaeto-Romance) * ro (Romanian) * ro_RO (Romanian, as spoken in Romania) * ru (Russian) * ru_RU (Russian, as spoken in Russia) * rw (Kinyarwanda) * sa (Sanskrit) * sc (Sardinian) * sd (Sindhi) * se (Sami) * se_NO (Sami, as spoken in Norway) * si (Sinhalese) * si_LK (Sinhalese, as spoken in Sri Lanka) * si_SI (Sinhalese, as spoken in Slovenia) * sk (Slovak) * sk_SK (Slovak, as spoken in Slovakia) * sl (Slovenian) * sl_SI (Slovenian, as spoken in Slovenia) * sl_SL (Slovenian, as spoken in Sierra Leone) * so (Somali) * sp (Unknown language) * sq (Albanian) * sq_AL (Albanian, as spoken in Albania) * sr (Serbian) * sr@Latn (Unknown language) * sr@ije (Unknown language) * sr@ijekavian (Unknown language) * sr@ijekavianlatin (Unknown language) * sr@latin (Unknown language) * sr_SR (Serbian, as spoken in Suriname) * sr_YU (Serbian, as spoken in Yugoslavia) * st (Sotho) * su (Sundanese) * su_ID (Sundanese, as spoken in Indonesia) * sv (Swedish) * sv_SE (Swedish, as spoken in Sweden) * sw (Swahili) * ta (Tamil) * ta_LK (Tamil, as spoken in Sri Lanka) * te (Telugu) * tg (Tajik) * th (Thai) * th_TH (Thai, as spoken in Thailand) * ti (Tigrinya) * tig (Unknown language) * tk (Turkmen) * tl (Tagalog) * tlh (Unknown language) * to (Tonga) * tr (Turkish) * tr_TR (Turkish, as spoken in Turkey) * tt (Tatar) * ug (Uighur) * ug_CN (Uighur, as spoken in China) * uk (Ukrainian) * uk_UA (Ukrainian, as spoken in Ukraine) * ur (Urdu) * ur_PK (Urdu, as spoken in Pakistan) * uz (Uzbek) * uz@cyrillic (Unknown language) * ve (Unknown language) * vi (Vietnamese) * vi_AR (Vietnamese, as spoken in Argentina) * vi_DE (Vietnamese, as spoken in Germany) * vi_PL (Vietnamese, as spoken in Poland) * vi_TR (Vietnamese, as spoken in Turkey) * vi_VN (Vietnamese, as spoken in Vietnam) * wa (Unknown language) * wal (Unknown language) * wo (Wolof) * xh (Xhosa) * yi (Yiddish) * yo (Yoruba) * zh (Chinese) * zh_CN (Chinese, as spoken in China) * zh_HK (Chinese, as spoken in Hong Kong) * zh_TW (Chinese, as spoken in Taiwan) * zu (Zulu) 'sq'; 'albanian' 'am'; 'amharic' #'ar'; 'arabic' # see polyglossia 'hy'; 'armenian' #''; 'asturian' # polyglossia #''; 'bahasai' # polyglossia #''; 'bahasam' # polyglossia 'eu'; 'basque' 'bn'; 'bengali' 'pt_BR'; 'brazilian' 'br'; 'breton' 'bg'; 'bulgarian' 'ca'; 'catalan' # see polyglossia #''; 'coptic' # polyglossia 'hr'; 'croatian' 'cs'; 'czech' 'da'; 'danish' #''; 'divehi' # polyglossia 'nl'; 'dutch' # see polyglossia 'en'; 'english' # see polyglossia 'eo'; 'esperanto' # see polyglossia 'et'; 'estonian' 'gl'; 'galician' 'de'; 'german' 'el'; 'greek' #gl ? 'he'; 'hebrew' 'hi'; 'hindi' 'is'; 'icelandic' 'ia'; 'interlingua' 'ga'; 'irish' 'it'; 'italian' #''; 'farsi' # polyglossia 'fi'; 'finnish' 'fr'; 'french' 'lo'; 'lao' 'la'; 'latin' 'lv'; 'latvian' 'lt'; 'lithuanian' #''; 'lsorbian' # polyglossia #''; 'magyar' # polyglossia 'ml'; 'malayalam' 'mr'; 'marathi' #'hu'; 'magyar' 'no'; 'norske' 'nn'; 'nynorsk' 'oc'; 'occitan' 'pl'; 'polish' 'pt'; 'portuges' 'ro'; 'romanian' 'ru'; 'russian' 'se'; 'samin' #(check sami?) 'sa'; 'sanskrit' 'sr'; 'serbian' #''; 'scottish' # polyglossia (gd (Gaelic (Scots))) 'sk'; 'slovak' 'sl'; 'slovenian' 'es'; 'spanish' 'sv'; 'swedish' 'ta'; 'tamil' 'te'; 'telugu' 'th'; 'thai' 'tr'; 'turkish' 'tk'; 'turkmen' 'uk'; 'ukrainian' 'ur'; 'urdu' #''; 'usorbian' # polyglossia 'vi'; 'vietnamese' 'cy'; 'welsh' 'us'; 'USenglish' # depreciated, see iso-639-2