You are viewing a plain text version of this content. The canonical link for it is here.
Posted to fop-commits@xmlgraphics.apache.org by pb...@apache.org on 2004/05/29 16:24:24 UTC
cvs commit: xml-fop/src/codegen xml-lang.xsl
pbwest 2004/05/29 07:24:23
Modified: src/codegen/org/apache/fop/datatypes Tag:
FOP_0-20-0_Alt-Design CountryLanguageScript.java
src/codegen Tag: FOP_0-20-0_Alt-Design xml-lang.xsl
Log:
Added canonical639_1Code() to get 2-letter language code from 3-letter Terminology code
Revision Changes Path
No revision
No revision
1.1.2.7 +218 -12 xml-fop/src/codegen/org/apache/fop/datatypes/Attic/CountryLanguageScript.java
Index: CountryLanguageScript.java
===================================================================
RCS file: /home/cvs/xml-fop/src/codegen/org/apache/fop/datatypes/Attic/CountryLanguageScript.java,v
retrieving revision 1.1.2.6
retrieving revision 1.1.2.7
diff -u -r1.1.2.6 -r1.1.2.7
--- CountryLanguageScript.java 10 Mar 2004 06:25:34 -0000 1.1.2.6
+++ CountryLanguageScript.java 29 May 2004 14:24:23 -0000 1.1.2.7
@@ -64,6 +64,11 @@
private static final HashMap iso639_1_To_639_2T;
/**
+ * Map of ISO 639-1 2-letter codes keyed on ISO 639-2 terminology code.
+ */
+ private static final HashMap iso639_2T_To_639_1;
+
+ /**
* Map of English script names keyed on ISO 15924 script code.
*/
private static final HashMap iso15924ToName;
@@ -71,10 +76,11 @@
static {
iso3166ToName = new HashMap(239);
- iso639_2T_ToENLang = new HashMap(466);
- iso639_2T_ToFRLang = new HashMap(466);
- iso639_2B_To_639_2T = new HashMap(466);
- iso639_1_To_639_2T = new HashMap(466);
+ iso639_2T_ToENLang = new HashMap((int)(466 * 1.4));
+ iso639_2T_ToFRLang = new HashMap((int)(466 * 1.4));
+ iso639_2B_To_639_2T = new HashMap((int)(466 * 1.4));
+ iso639_1_To_639_2T = new HashMap((int)(466 * 1.4));
+ iso639_2T_To_639_1 = new HashMap((int)(466 * 1.4));
iso15924ToName = new HashMap(186);
@@ -561,12 +567,14 @@
iso639_2T_ToFRLang.put("aar", "afar");
iso639_1_To_639_2T.put("aa", "aar");
+ iso639_2T_To_639_1.put("aar", "aa");
// Abkhazian
iso639_2T_ToENLang.put("abk", "Abkhazian");
iso639_2T_ToFRLang.put("abk", "abkhaze");
iso639_1_To_639_2T.put("ab", "abk");
+ iso639_2T_To_639_1.put("abk", "ab");
// Achinese
iso639_2T_ToENLang.put("ace", "Achinese");
@@ -593,6 +601,7 @@
iso639_2T_ToFRLang.put("afr", "afrikaans");
iso639_1_To_639_2T.put("af", "afr");
+ iso639_2T_To_639_1.put("afr", "af");
// Akan
iso639_2T_ToENLang.put("aka", "Akan");
@@ -609,6 +618,7 @@
iso639_2B_To_639_2T.put("alb", "sqi");
iso639_1_To_639_2T.put("sq", "sqi");
+ iso639_2T_To_639_1.put("sqi", "sq");
// Aleut
iso639_2T_ToENLang.put("ale", "Aleut");
@@ -623,6 +633,7 @@
iso639_2T_ToFRLang.put("amh", "amharique");
iso639_1_To_639_2T.put("am", "amh");
+ iso639_2T_To_639_1.put("amh", "am");
// English, Old (ca.450-1100)
iso639_2T_ToENLang.put("ang", "English, Old (ca.450-1100)");
@@ -637,6 +648,7 @@
iso639_2T_ToFRLang.put("ara", "arabe");
iso639_1_To_639_2T.put("ar", "ara");
+ iso639_2T_To_639_1.put("ara", "ar");
// Aramaic
iso639_2T_ToENLang.put("arc", "Aramaic");
@@ -649,6 +661,7 @@
iso639_2B_To_639_2T.put("arm", "hye");
iso639_1_To_639_2T.put("hy", "hye");
+ iso639_2T_To_639_1.put("hye", "hy");
// Araucanian
iso639_2T_ToENLang.put("arn", "Araucanian");
@@ -671,6 +684,7 @@
iso639_2T_ToFRLang.put("asm", "assamais");
iso639_1_To_639_2T.put("as", "asm");
+ iso639_2T_To_639_1.put("asm", "as");
// Asturian; Bable
iso639_2T_ToENLang.put("ast", "Asturian; Bable");
@@ -693,6 +707,7 @@
iso639_2T_ToFRLang.put("ave", "avestique");
iso639_1_To_639_2T.put("ae", "ave");
+ iso639_2T_To_639_1.put("ave", "ae");
// Awadhi
iso639_2T_ToENLang.put("awa", "Awadhi");
@@ -703,12 +718,14 @@
iso639_2T_ToFRLang.put("aym", "aymara");
iso639_1_To_639_2T.put("ay", "aym");
+ iso639_2T_To_639_1.put("aym", "ay");
// Azerbaijani
iso639_2T_ToENLang.put("aze", "Azerbaijani");
iso639_2T_ToFRLang.put("aze", "az�ri");
iso639_1_To_639_2T.put("az", "aze");
+ iso639_2T_To_639_1.put("aze", "az");
// Banda
iso639_2T_ToENLang.put("bad", "Banda");
@@ -723,6 +740,7 @@
iso639_2T_ToFRLang.put("bak", "bachkir");
iso639_1_To_639_2T.put("ba", "bak");
+ iso639_2T_To_639_1.put("bak", "ba");
// Baluchi
iso639_2T_ToENLang.put("bal", "Baluchi");
@@ -743,6 +761,7 @@
iso639_2B_To_639_2T.put("baq", "eus");
iso639_1_To_639_2T.put("eu", "eus");
+ iso639_2T_To_639_1.put("eus", "eu");
// Basa
iso639_2T_ToENLang.put("bas", "Basa");
@@ -761,6 +780,7 @@
iso639_2T_ToFRLang.put("bel", "bi�lorusse");
iso639_1_To_639_2T.put("be", "bel");
+ iso639_2T_To_639_1.put("bel", "be");
// Bemba
iso639_2T_ToENLang.put("bem", "Bemba");
@@ -771,6 +791,7 @@
iso639_2T_ToFRLang.put("ben", "bengali");
iso639_1_To_639_2T.put("bn", "ben");
+ iso639_2T_To_639_1.put("ben", "bn");
// Berber (Other)
iso639_2T_ToENLang.put("ber", "Berber (Other)");
@@ -785,6 +806,7 @@
iso639_2T_ToFRLang.put("bih", "bihari");
iso639_1_To_639_2T.put("bh", "bih");
+ iso639_2T_To_639_1.put("bih", "bh");
// Bikol
iso639_2T_ToENLang.put("bik", "Bikol");
@@ -799,6 +821,7 @@
iso639_2T_ToFRLang.put("bis", "bichlamar");
iso639_1_To_639_2T.put("bi", "bis");
+ iso639_2T_To_639_1.put("bis", "bi");
// Siksika
iso639_2T_ToENLang.put("bla", "Siksika");
@@ -815,12 +838,14 @@
iso639_2B_To_639_2T.put("tib", "bod");
iso639_1_To_639_2T.put("bo", "bod");
+ iso639_2T_To_639_1.put("bod", "bo");
// Bosnian
iso639_2T_ToENLang.put("bos", "Bosnian");
iso639_2T_ToFRLang.put("bos", "bosniaque");
iso639_1_To_639_2T.put("bs", "bos");
+ iso639_2T_To_639_1.put("bos", "bs");
// Braj
iso639_2T_ToENLang.put("bra", "Braj");
@@ -831,6 +856,7 @@
iso639_2T_ToFRLang.put("bre", "breton");
iso639_1_To_639_2T.put("br", "bre");
+ iso639_2T_To_639_1.put("bre", "br");
// Batak (Indonesia)
iso639_2T_ToENLang.put("btk", "Batak (Indonesia)");
@@ -849,6 +875,7 @@
iso639_2T_ToFRLang.put("bul", "bulgare");
iso639_1_To_639_2T.put("bg", "bul");
+ iso639_2T_To_639_1.put("bul", "bg");
// Burmese
iso639_2T_ToENLang.put("mya", "Burmese");
@@ -857,6 +884,7 @@
iso639_2B_To_639_2T.put("bur", "mya");
iso639_1_To_639_2T.put("my", "mya");
+ iso639_2T_To_639_1.put("mya", "my");
// Caddo
iso639_2T_ToENLang.put("cad", "Caddo");
@@ -875,6 +903,7 @@
iso639_2T_ToFRLang.put("cat", "catalan");
iso639_1_To_639_2T.put("ca", "cat");
+ iso639_2T_To_639_1.put("cat", "ca");
// Caucasian (Other)
iso639_2T_ToENLang.put("cau", "Caucasian (Other)");
@@ -895,12 +924,14 @@
iso639_2B_To_639_2T.put("cze", "ces");
iso639_1_To_639_2T.put("cs", "ces");
+ iso639_2T_To_639_1.put("ces", "cs");
// Chamorro
iso639_2T_ToENLang.put("cha", "Chamorro");
iso639_2T_ToFRLang.put("cha", "chamorro");
iso639_1_To_639_2T.put("ch", "cha");
+ iso639_2T_To_639_1.put("cha", "ch");
// Chibcha
iso639_2T_ToENLang.put("chb", "Chibcha");
@@ -911,6 +942,7 @@
iso639_2T_ToFRLang.put("che", "tch�tch�ne");
iso639_1_To_639_2T.put("ce", "che");
+ iso639_2T_To_639_1.put("che", "ce");
// Chagatai
iso639_2T_ToENLang.put("chg", "Chagatai");
@@ -923,6 +955,7 @@
iso639_2B_To_639_2T.put("chi", "zho");
iso639_1_To_639_2T.put("zh", "zho");
+ iso639_2T_To_639_1.put("zho", "zh");
// Chuukese
iso639_2T_ToENLang.put("chk", "Chuukese");
@@ -953,12 +986,14 @@
iso639_2T_ToFRLang.put("chu", "slavon d'�glise; vieux slave; slavon liturgique; vieux bulgare");
iso639_1_To_639_2T.put("cu", "chu");
+ iso639_2T_To_639_1.put("chu", "cu");
// Chuvash
iso639_2T_ToENLang.put("chv", "Chuvash");
iso639_2T_ToFRLang.put("chv", "tchouvache");
iso639_1_To_639_2T.put("cv", "chv");
+ iso639_2T_To_639_1.put("chv", "cv");
// Cheyenne
iso639_2T_ToENLang.put("chy", "Cheyenne");
@@ -977,12 +1012,14 @@
iso639_2T_ToFRLang.put("cor", "cornique");
iso639_1_To_639_2T.put("kw", "cor");
+ iso639_2T_To_639_1.put("cor", "kw");
// Corsican
iso639_2T_ToENLang.put("cos", "Corsican");
iso639_2T_ToFRLang.put("cos", "corse");
iso639_1_To_639_2T.put("co", "cos");
+ iso639_2T_To_639_1.put("cos", "co");
// Creoles and pidgins, English based (Other)
iso639_2T_ToENLang.put("cpe", "Creoles and pidgins, English based (Other)");
@@ -1015,6 +1052,7 @@
iso639_2B_To_639_2T.put("wel", "cym");
iso639_1_To_639_2T.put("cy", "cym");
+ iso639_2T_To_639_1.put("cym", "cy");
// Czech
iso639_2T_ToENLang.put("ces", "Czech");
@@ -1023,6 +1061,7 @@
iso639_2B_To_639_2T.put("cze", "ces");
iso639_1_To_639_2T.put("cs", "ces");
+ iso639_2T_To_639_1.put("ces", "cs");
// Dakota
iso639_2T_ToENLang.put("dak", "Dakota");
@@ -1033,6 +1072,7 @@
iso639_2T_ToFRLang.put("dan", "danois");
iso639_1_To_639_2T.put("da", "dan");
+ iso639_2T_To_639_1.put("dan", "da");
// Dayak
iso639_2T_ToENLang.put("day", "Dayak");
@@ -1053,6 +1093,7 @@
iso639_2B_To_639_2T.put("ger", "deu");
iso639_1_To_639_2T.put("de", "deu");
+ iso639_2T_To_639_1.put("deu", "de");
// Dogrib
iso639_2T_ToENLang.put("dgr", "Dogrib");
@@ -1089,6 +1130,7 @@
iso639_2B_To_639_2T.put("dut", "nld");
iso639_1_To_639_2T.put("nl", "nld");
+ iso639_2T_To_639_1.put("nld", "nl");
// Dyula
iso639_2T_ToENLang.put("dyu", "Dyula");
@@ -1099,6 +1141,7 @@
iso639_2T_ToFRLang.put("dzo", "dzongkha");
iso639_1_To_639_2T.put("dz", "dzo");
+ iso639_2T_To_639_1.put("dzo", "dz");
// Efik
iso639_2T_ToENLang.put("efi", "Efik");
@@ -1119,6 +1162,7 @@
iso639_2B_To_639_2T.put("gre", "ell");
iso639_1_To_639_2T.put("el", "ell");
+ iso639_2T_To_639_1.put("ell", "el");
// Elamite
iso639_2T_ToENLang.put("elx", "Elamite");
@@ -1129,6 +1173,7 @@
iso639_2T_ToFRLang.put("eng", "anglais");
iso639_1_To_639_2T.put("en", "eng");
+ iso639_2T_To_639_1.put("eng", "en");
// English, Middle (1100-1500)
iso639_2T_ToENLang.put("enm", "English, Middle (1100-1500)");
@@ -1139,12 +1184,14 @@
iso639_2T_ToFRLang.put("epo", "esp�ranto");
iso639_1_To_639_2T.put("eo", "epo");
+ iso639_2T_To_639_1.put("epo", "eo");
// Estonian
iso639_2T_ToENLang.put("est", "Estonian");
iso639_2T_ToFRLang.put("est", "estonien");
iso639_1_To_639_2T.put("et", "est");
+ iso639_2T_To_639_1.put("est", "et");
// Basque
iso639_2T_ToENLang.put("eus", "Basque");
@@ -1153,6 +1200,7 @@
iso639_2B_To_639_2T.put("baq", "eus");
iso639_1_To_639_2T.put("eu", "eus");
+ iso639_2T_To_639_1.put("eus", "eu");
// Ewe
iso639_2T_ToENLang.put("ewe", "Ewe");
@@ -1171,6 +1219,7 @@
iso639_2T_ToFRLang.put("fao", "f�ro�en");
iso639_1_To_639_2T.put("fo", "fao");
+ iso639_2T_To_639_1.put("fao", "fo");
// Persian
iso639_2T_ToENLang.put("fas", "Persian");
@@ -1179,6 +1228,7 @@
iso639_2B_To_639_2T.put("per", "fas");
iso639_1_To_639_2T.put("fa", "fas");
+ iso639_2T_To_639_1.put("fas", "fa");
// Fanti
iso639_2T_ToENLang.put("fat", "Fanti");
@@ -1189,12 +1239,14 @@
iso639_2T_ToFRLang.put("fij", "fidjien");
iso639_1_To_639_2T.put("fj", "fij");
+ iso639_2T_To_639_1.put("fij", "fj");
// Finnish
iso639_2T_ToENLang.put("fin", "Finnish");
iso639_2T_ToFRLang.put("fin", "finnois");
iso639_1_To_639_2T.put("fi", "fin");
+ iso639_2T_To_639_1.put("fin", "fi");
// Finno-Ugrian (Other)
iso639_2T_ToENLang.put("fiu", "Finno-Ugrian (Other)");
@@ -1211,6 +1263,7 @@
iso639_2B_To_639_2T.put("fre", "fra");
iso639_1_To_639_2T.put("fr", "fra");
+ iso639_2T_To_639_1.put("fra", "fr");
// French, Middle (ca.1400-1800)
iso639_2T_ToENLang.put("frm", "French, Middle (ca.1400-1800)");
@@ -1225,6 +1278,7 @@
iso639_2T_ToFRLang.put("fry", "frison");
iso639_1_To_639_2T.put("fy", "fry");
+ iso639_2T_To_639_1.put("fry", "fy");
// Fulah
iso639_2T_ToENLang.put("ful", "Fulah");
@@ -1257,6 +1311,7 @@
iso639_2B_To_639_2T.put("geo", "kat");
iso639_1_To_639_2T.put("ka", "kat");
+ iso639_2T_To_639_1.put("kat", "ka");
// German
iso639_2T_ToENLang.put("deu", "German");
@@ -1265,6 +1320,7 @@
iso639_2B_To_639_2T.put("ger", "deu");
iso639_1_To_639_2T.put("de", "deu");
+ iso639_2T_To_639_1.put("deu", "de");
// Geez
iso639_2T_ToENLang.put("gez", "Geez");
@@ -1279,24 +1335,28 @@
iso639_2T_ToFRLang.put("gla", "ga�lique; ga�lique �cossais");
iso639_1_To_639_2T.put("gd", "gla");
+ iso639_2T_To_639_1.put("gla", "gd");
// Irish
iso639_2T_ToENLang.put("gle", "Irish");
iso639_2T_ToFRLang.put("gle", "irlandais");
iso639_1_To_639_2T.put("ga", "gle");
+ iso639_2T_To_639_1.put("gle", "ga");
// Gallegan
iso639_2T_ToENLang.put("glg", "Gallegan");
iso639_2T_ToFRLang.put("glg", "galicien");
iso639_1_To_639_2T.put("gl", "glg");
+ iso639_2T_To_639_1.put("glg", "gl");
// Manx
iso639_2T_ToENLang.put("glv", "Manx");
iso639_2T_ToFRLang.put("glv", " manx; mannois");
iso639_1_To_639_2T.put("gv", "glv");
+ iso639_2T_To_639_1.put("glv", "gv");
// German, Middle High (ca.1050-1500)
iso639_2T_ToENLang.put("gmh", "German, Middle High (ca.1050-1500)");
@@ -1333,18 +1393,21 @@
iso639_2B_To_639_2T.put("gre", "ell");
iso639_1_To_639_2T.put("el", "ell");
+ iso639_2T_To_639_1.put("ell", "el");
// Guarani
iso639_2T_ToENLang.put("grn", "Guarani");
iso639_2T_ToFRLang.put("grn", "guarani");
iso639_1_To_639_2T.put("gn", "grn");
+ iso639_2T_To_639_1.put("grn", "gn");
// Gujarati
iso639_2T_ToENLang.put("guj", "Gujarati");
iso639_2T_ToFRLang.put("guj", "goudjrati");
iso639_1_To_639_2T.put("gu", "guj");
+ iso639_2T_To_639_1.put("guj", "gu");
// Gwich�in
iso639_2T_ToENLang.put("gwi", "Gwich�in");
@@ -1359,6 +1422,7 @@
iso639_2T_ToFRLang.put("hau", "haoussa");
iso639_1_To_639_2T.put("ha", "hau");
+ iso639_2T_To_639_1.put("hau", "ha");
// Hawaiian
iso639_2T_ToENLang.put("haw", "Hawaiian");
@@ -1369,12 +1433,14 @@
iso639_2T_ToFRLang.put("heb", "h�breu");
iso639_1_To_639_2T.put("he", "heb");
+ iso639_2T_To_639_1.put("heb", "he");
// Herero
iso639_2T_ToENLang.put("her", "Herero");
iso639_2T_ToFRLang.put("her", "herero");
iso639_1_To_639_2T.put("hz", "her");
+ iso639_2T_To_639_1.put("her", "hz");
// Hiligaynon
iso639_2T_ToENLang.put("hil", "Hiligaynon");
@@ -1389,6 +1455,7 @@
iso639_2T_ToFRLang.put("hin", "hindi");
iso639_1_To_639_2T.put("hi", "hin");
+ iso639_2T_To_639_1.put("hin", "hi");
// Hittite
iso639_2T_ToENLang.put("hit", "Hittite");
@@ -1403,6 +1470,7 @@
iso639_2T_ToFRLang.put("hmo", "hiri motu");
iso639_1_To_639_2T.put("ho", "hmo");
+ iso639_2T_To_639_1.put("hmo", "ho");
// Croatian
iso639_2T_ToENLang.put("hrv", "Croatian");
@@ -1411,12 +1479,14 @@
iso639_2B_To_639_2T.put("scr", "hrv");
iso639_1_To_639_2T.put("hr", "hrv");
+ iso639_2T_To_639_1.put("hrv", "hr");
// Hungarian
iso639_2T_ToENLang.put("hun", "Hungarian");
iso639_2T_ToFRLang.put("hun", "hongrois");
iso639_1_To_639_2T.put("hu", "hun");
+ iso639_2T_To_639_1.put("hun", "hu");
// Hupa
iso639_2T_ToENLang.put("hup", "Hupa");
@@ -1429,6 +1499,7 @@
iso639_2B_To_639_2T.put("arm", "hye");
iso639_1_To_639_2T.put("hy", "hye");
+ iso639_2T_To_639_1.put("hye", "hy");
// Iban
iso639_2T_ToENLang.put("iba", "Iban");
@@ -1445,12 +1516,14 @@
iso639_2B_To_639_2T.put("ice", "isl");
iso639_1_To_639_2T.put("is", "isl");
+ iso639_2T_To_639_1.put("isl", "is");
// Ido
iso639_2T_ToENLang.put("ido", "Ido");
iso639_2T_ToFRLang.put("ido", "ido");
iso639_1_To_639_2T.put("io", "ido");
+ iso639_2T_To_639_1.put("ido", "io");
// Ijo
iso639_2T_ToENLang.put("ijo", "Ijo");
@@ -1461,12 +1534,14 @@
iso639_2T_ToFRLang.put("iku", "inuktitut");
iso639_1_To_639_2T.put("iu", "iku");
+ iso639_2T_To_639_1.put("iku", "iu");
// Interlingue
iso639_2T_ToENLang.put("ile", "Interlingue");
iso639_2T_ToFRLang.put("ile", "interlingue");
iso639_1_To_639_2T.put("ie", "ile");
+ iso639_2T_To_639_1.put("ile", "ie");
// Iloko
iso639_2T_ToENLang.put("ilo", "Iloko");
@@ -1477,6 +1552,7 @@
iso639_2T_ToFRLang.put("ina", "interlingua (langue auxiliaire internationale)");
iso639_1_To_639_2T.put("ia", "ina");
+ iso639_2T_To_639_1.put("ina", "ia");
// Indic (Other)
iso639_2T_ToENLang.put("inc", "Indic (Other)");
@@ -1487,6 +1563,7 @@
iso639_2T_ToFRLang.put("ind", "indon�sien");
iso639_1_To_639_2T.put("id", "ind");
+ iso639_2T_To_639_1.put("ind", "id");
// Indo-European (Other)
iso639_2T_ToENLang.put("ine", "Indo-European (Other)");
@@ -1497,6 +1574,7 @@
iso639_2T_ToFRLang.put("ipk", "inupiaq");
iso639_1_To_639_2T.put("ik", "ipk");
+ iso639_2T_To_639_1.put("ipk", "ik");
// Iranian (Other)
iso639_2T_ToENLang.put("ira", "Iranian (Other)");
@@ -1513,24 +1591,28 @@
iso639_2B_To_639_2T.put("ice", "isl");
iso639_1_To_639_2T.put("is", "isl");
+ iso639_2T_To_639_1.put("isl", "is");
// Italian
iso639_2T_ToENLang.put("ita", "Italian");
iso639_2T_ToFRLang.put("ita", "italien");
iso639_1_To_639_2T.put("it", "ita");
+ iso639_2T_To_639_1.put("ita", "it");
// Javanese
iso639_2T_ToENLang.put("jav", "Javanese");
iso639_2T_ToFRLang.put("jav", "javanais");
iso639_1_To_639_2T.put("jv", "jav");
+ iso639_2T_To_639_1.put("jav", "jv");
// Japanese
iso639_2T_ToENLang.put("jpn", "Japanese");
iso639_2T_ToFRLang.put("jpn", "japonais");
iso639_1_To_639_2T.put("ja", "jpn");
+ iso639_2T_To_639_1.put("jpn", "ja");
// Judeo-Persian
iso639_2T_ToENLang.put("jpr", "Judeo-Persian");
@@ -1557,6 +1639,7 @@
iso639_2T_ToFRLang.put("kal", "groenlandais");
iso639_1_To_639_2T.put("kl", "kal");
+ iso639_2T_To_639_1.put("kal", "kl");
// Kamba
iso639_2T_ToENLang.put("kam", "Kamba");
@@ -1567,6 +1650,7 @@
iso639_2T_ToFRLang.put("kan", "kannada");
iso639_1_To_639_2T.put("kn", "kan");
+ iso639_2T_To_639_1.put("kan", "kn");
// Karen
iso639_2T_ToENLang.put("kar", "Karen");
@@ -1577,6 +1661,7 @@
iso639_2T_ToFRLang.put("kas", "kashmiri");
iso639_1_To_639_2T.put("ks", "kas");
+ iso639_2T_To_639_1.put("kas", "ks");
// Georgian
iso639_2T_ToENLang.put("kat", "Georgian");
@@ -1585,6 +1670,7 @@
iso639_2B_To_639_2T.put("geo", "kat");
iso639_1_To_639_2T.put("ka", "kat");
+ iso639_2T_To_639_1.put("kat", "ka");
// Kanuri
iso639_2T_ToENLang.put("kau", "Kanuri");
@@ -1599,6 +1685,7 @@
iso639_2T_ToFRLang.put("kaz", "kazakh");
iso639_1_To_639_2T.put("kk", "kaz");
+ iso639_2T_To_639_1.put("kaz", "kk");
// Khasi
iso639_2T_ToENLang.put("kha", "Khasi");
@@ -1613,6 +1700,7 @@
iso639_2T_ToFRLang.put("khm", "khmer");
iso639_1_To_639_2T.put("km", "khm");
+ iso639_2T_To_639_1.put("khm", "km");
// Khotanese
iso639_2T_ToENLang.put("kho", "Khotanese");
@@ -1623,18 +1711,21 @@
iso639_2T_ToFRLang.put("kik", "kikuyu");
iso639_1_To_639_2T.put("ki", "kik");
+ iso639_2T_To_639_1.put("kik", "ki");
// Kinyarwanda
iso639_2T_ToENLang.put("kin", "Kinyarwanda");
iso639_2T_ToFRLang.put("kin", "rwanda");
iso639_1_To_639_2T.put("rw", "kin");
+ iso639_2T_To_639_1.put("kin", "rw");
// Kirghiz
iso639_2T_ToENLang.put("kir", "Kirghiz");
iso639_2T_ToFRLang.put("kir", "kirghize");
iso639_1_To_639_2T.put("ky", "kir");
+ iso639_2T_To_639_1.put("kir", "ky");
// Kimbundu
iso639_2T_ToENLang.put("kmb", "Kimbundu");
@@ -1649,6 +1740,7 @@
iso639_2T_ToFRLang.put("kom", "kom");
iso639_1_To_639_2T.put("kv", "kom");
+ iso639_2T_To_639_1.put("kom", "kv");
// Kongo
iso639_2T_ToENLang.put("kon", "Kongo");
@@ -1659,6 +1751,7 @@
iso639_2T_ToFRLang.put("kor", "cor�en");
iso639_1_To_639_2T.put("ko", "kor");
+ iso639_2T_To_639_1.put("kor", "ko");
// Kosraean
iso639_2T_ToENLang.put("kos", "Kosraean");
@@ -1681,6 +1774,7 @@
iso639_2T_ToFRLang.put("kua", "kuanyama; kwanyama");
iso639_1_To_639_2T.put("kj", "kua");
+ iso639_2T_To_639_1.put("kua", "kj");
// Kumyk
iso639_2T_ToENLang.put("kum", "Kumyk");
@@ -1691,6 +1785,7 @@
iso639_2T_ToFRLang.put("kur", "kurde");
iso639_1_To_639_2T.put("ku", "kur");
+ iso639_2T_To_639_1.put("kur", "ku");
// Kutenai
iso639_2T_ToENLang.put("kut", "Kutenai");
@@ -1713,18 +1808,21 @@
iso639_2T_ToFRLang.put("lao", "lao");
iso639_1_To_639_2T.put("lo", "lao");
+ iso639_2T_To_639_1.put("lao", "lo");
// Latin
iso639_2T_ToENLang.put("lat", "Latin");
iso639_2T_ToFRLang.put("lat", "latin");
iso639_1_To_639_2T.put("la", "lat");
+ iso639_2T_To_639_1.put("lat", "la");
// Latvian
iso639_2T_ToENLang.put("lav", "Latvian");
iso639_2T_ToFRLang.put("lav", "letton");
iso639_1_To_639_2T.put("lv", "lav");
+ iso639_2T_To_639_1.put("lav", "lv");
// Lezghian
iso639_2T_ToENLang.put("lez", "Lezghian");
@@ -1735,18 +1833,21 @@
iso639_2T_ToFRLang.put("lim", "limbourgeois");
iso639_1_To_639_2T.put("li", "lim");
+ iso639_2T_To_639_1.put("lim", "li");
// Lingala
iso639_2T_ToENLang.put("lin", "Lingala");
iso639_2T_ToFRLang.put("lin", "lingala");
iso639_1_To_639_2T.put("ln", "lin");
+ iso639_2T_To_639_1.put("lin", "ln");
// Lithuanian
iso639_2T_ToENLang.put("lit", "Lithuanian");
iso639_2T_ToFRLang.put("lit", "lituanien");
iso639_1_To_639_2T.put("lt", "lit");
+ iso639_2T_To_639_1.put("lit", "lt");
// Mongo
iso639_2T_ToENLang.put("lol", "Mongo");
@@ -1761,6 +1862,7 @@
iso639_2T_ToFRLang.put("ltz", "luxembourgeois");
iso639_1_To_639_2T.put("lb", "ltz");
+ iso639_2T_To_639_1.put("ltz", "lb");
// Luba-Lulua
iso639_2T_ToENLang.put("lua", "Luba-Lulua");
@@ -1797,6 +1899,7 @@
iso639_2B_To_639_2T.put("mac", "mkd");
iso639_1_To_639_2T.put("mk", "mkd");
+ iso639_2T_To_639_1.put("mkd", "mk");
// Madurese
iso639_2T_ToENLang.put("mad", "Madurese");
@@ -1811,6 +1914,7 @@
iso639_2T_ToFRLang.put("mah", "marshall");
iso639_1_To_639_2T.put("mh", "mah");
+ iso639_2T_To_639_1.put("mah", "mh");
// Maithili
iso639_2T_ToENLang.put("mai", "Maithili");
@@ -1825,6 +1929,7 @@
iso639_2T_ToFRLang.put("mal", "malayalam");
iso639_1_To_639_2T.put("ml", "mal");
+ iso639_2T_To_639_1.put("mal", "ml");
// Mandingo
iso639_2T_ToENLang.put("man", "Mandingo");
@@ -1837,6 +1942,7 @@
iso639_2B_To_639_2T.put("mao", "mri");
iso639_1_To_639_2T.put("mi", "mri");
+ iso639_2T_To_639_1.put("mri", "mi");
// Austronesian (Other)
iso639_2T_ToENLang.put("map", "Austronesian (Other)");
@@ -1847,6 +1953,7 @@
iso639_2T_ToFRLang.put("mar", "marathe");
iso639_1_To_639_2T.put("mr", "mar");
+ iso639_2T_To_639_1.put("mar", "mr");
// Masai
iso639_2T_ToENLang.put("mas", "Masai");
@@ -1859,6 +1966,7 @@
iso639_2B_To_639_2T.put("may", "msa");
iso639_1_To_639_2T.put("ms", "msa");
+ iso639_2T_To_639_1.put("msa", "ms");
// Mandar
iso639_2T_ToENLang.put("mdr", "Mandar");
@@ -1891,6 +1999,7 @@
iso639_2B_To_639_2T.put("mac", "mkd");
iso639_1_To_639_2T.put("mk", "mkd");
+ iso639_2T_To_639_1.put("mkd", "mk");
// Mon-Khmer (Other)
iso639_2T_ToENLang.put("mkh", "Mon-Khmer (Other)");
@@ -1901,12 +2010,14 @@
iso639_2T_ToFRLang.put("mlg", "malgache");
iso639_1_To_639_2T.put("mg", "mlg");
+ iso639_2T_To_639_1.put("mlg", "mg");
// Maltese
iso639_2T_ToENLang.put("mlt", "Maltese");
iso639_2T_ToFRLang.put("mlt", "maltais");
iso639_1_To_639_2T.put("mt", "mlt");
+ iso639_2T_To_639_1.put("mlt", "mt");
// Manchu
iso639_2T_ToENLang.put("mnc", "Manchu");
@@ -1929,12 +2040,14 @@
iso639_2T_ToFRLang.put("mol", "moldave");
iso639_1_To_639_2T.put("mo", "mol");
+ iso639_2T_To_639_1.put("mol", "mo");
// Mongolian
iso639_2T_ToENLang.put("mon", "Mongolian");
iso639_2T_ToFRLang.put("mon", "mongol");
iso639_1_To_639_2T.put("mn", "mon");
+ iso639_2T_To_639_1.put("mon", "mn");
// Mossi
iso639_2T_ToENLang.put("mos", "Mossi");
@@ -1947,6 +2060,7 @@
iso639_2B_To_639_2T.put("mao", "mri");
iso639_1_To_639_2T.put("mi", "mri");
+ iso639_2T_To_639_1.put("mri", "mi");
// Malay
iso639_2T_ToENLang.put("msa", "Malay");
@@ -1955,6 +2069,7 @@
iso639_2B_To_639_2T.put("may", "msa");
iso639_1_To_639_2T.put("ms", "msa");
+ iso639_2T_To_639_1.put("msa", "ms");
// Multiple languages
iso639_2T_ToENLang.put("mul", "Multiple languages");
@@ -1979,6 +2094,7 @@
iso639_2B_To_639_2T.put("bur", "mya");
iso639_1_To_639_2T.put("my", "mya");
+ iso639_2T_To_639_1.put("mya", "my");
// Mayan languages
iso639_2T_ToENLang.put("myn", "Mayan languages");
@@ -2001,30 +2117,35 @@
iso639_2T_ToFRLang.put("nau", "nauruan");
iso639_1_To_639_2T.put("na", "nau");
+ iso639_2T_To_639_1.put("nau", "na");
// Navajo; Navaho
iso639_2T_ToENLang.put("nav", "Navajo; Navaho");
iso639_2T_ToFRLang.put("nav", "navaho");
iso639_1_To_639_2T.put("nv", "nav");
+ iso639_2T_To_639_1.put("nav", "nv");
// Ndebele, South; South Ndebele
iso639_2T_ToENLang.put("nbl", "Ndebele, South; South Ndebele");
iso639_2T_ToFRLang.put("nbl", "nd�b�l� du Sud");
iso639_1_To_639_2T.put("nr", "nbl");
+ iso639_2T_To_639_1.put("nbl", "nr");
// Ndebele, North; North Ndebele
iso639_2T_ToENLang.put("nde", "Ndebele, North; North Ndebele");
iso639_2T_ToFRLang.put("nde", "nd�b�l� du Nord");
iso639_1_To_639_2T.put("nd", "nde");
+ iso639_2T_To_639_1.put("nde", "nd");
// Ndonga
iso639_2T_ToENLang.put("ndo", "Ndonga");
iso639_2T_ToFRLang.put("ndo", "ndonga");
iso639_1_To_639_2T.put("ng", "ndo");
+ iso639_2T_To_639_1.put("ndo", "ng");
// Low German; Low Saxon; German, Low; Saxon, Low
iso639_2T_ToENLang.put("nds", "Low German; Low Saxon; German, Low; Saxon, Low");
@@ -2035,6 +2156,7 @@
iso639_2T_ToFRLang.put("nep", "n�palais");
iso639_1_To_639_2T.put("ne", "nep");
+ iso639_2T_To_639_1.put("nep", "ne");
// Newari
iso639_2T_ToENLang.put("new", "Newari");
@@ -2059,6 +2181,7 @@
iso639_2B_To_639_2T.put("dut", "nld");
iso639_1_To_639_2T.put("nl", "nld");
+ iso639_2T_To_639_1.put("nld", "nl");
// Norse, Old
iso639_2T_ToENLang.put("non", "Norse, Old");
@@ -2069,18 +2192,21 @@
iso639_2T_ToFRLang.put("nor", "norv�gien");
iso639_1_To_639_2T.put("no", "nor");
+ iso639_2T_To_639_1.put("nor", "no");
// Norwegian Nynorsk; Nynorsk, Norwegian
iso639_2T_ToENLang.put("nno", "Norwegian Nynorsk; Nynorsk, Norwegian");
iso639_2T_ToFRLang.put("nno", "norv�gien nynorsk; nynorsk, norv�gien ");
iso639_1_To_639_2T.put("nn", "nno");
+ iso639_2T_To_639_1.put("nno", "nn");
// Norwegian Bokm�l; Bokm�l, Norwegian
iso639_2T_ToENLang.put("nob", "Norwegian Bokm�l; Bokm�l, Norwegian");
iso639_2T_ToFRLang.put("nob", "norv�gien bokm�l; bokm�l, norv�gien");
iso639_1_To_639_2T.put("nb", "nob");
+ iso639_2T_To_639_1.put("nob", "nb");
// Sotho, Northern
iso639_2T_ToENLang.put("nso", "Sotho, Northern");
@@ -2095,6 +2221,7 @@
iso639_2T_ToFRLang.put("nya", "chichewa; chewa; nyanja");
iso639_1_To_639_2T.put("ny", "nya");
+ iso639_2T_To_639_1.put("nya", "ny");
// Nyamwezi
iso639_2T_ToENLang.put("nym", "Nyamwezi");
@@ -2117,6 +2244,7 @@
iso639_2T_ToFRLang.put("oci", "occitan (apr�s 1500); proven�al");
iso639_1_To_639_2T.put("oc", "oci");
+ iso639_2T_To_639_1.put("oci", "oc");
// Ojibwa
iso639_2T_ToENLang.put("oji", "Ojibwa");
@@ -2127,12 +2255,14 @@
iso639_2T_ToFRLang.put("ori", "oriya");
iso639_1_To_639_2T.put("or", "ori");
+ iso639_2T_To_639_1.put("ori", "or");
// Oromo
iso639_2T_ToENLang.put("orm", "Oromo");
iso639_2T_ToFRLang.put("orm", "galla");
iso639_1_To_639_2T.put("om", "orm");
+ iso639_2T_To_639_1.put("orm", "om");
// Osage
iso639_2T_ToENLang.put("osa", "Osage");
@@ -2143,6 +2273,7 @@
iso639_2T_ToFRLang.put("oss", "oss�te");
iso639_1_To_639_2T.put("os", "oss");
+ iso639_2T_To_639_1.put("oss", "os");
// Turkish, Ottoman (1500-1928)
iso639_2T_ToENLang.put("ota", "Turkish, Ottoman (1500-1928)");
@@ -2173,6 +2304,7 @@
iso639_2T_ToFRLang.put("pan", "pendjabi");
iso639_1_To_639_2T.put("pa", "pan");
+ iso639_2T_To_639_1.put("pan", "pa");
// Papiamento
iso639_2T_ToENLang.put("pap", "Papiamento");
@@ -2193,6 +2325,7 @@
iso639_2B_To_639_2T.put("per", "fas");
iso639_1_To_639_2T.put("fa", "fas");
+ iso639_2T_To_639_1.put("fas", "fa");
// Philippine (Other)
iso639_2T_ToENLang.put("phi", "Philippine (Other)");
@@ -2207,12 +2340,14 @@
iso639_2T_ToFRLang.put("pli", "pali");
iso639_1_To_639_2T.put("pi", "pli");
+ iso639_2T_To_639_1.put("pli", "pi");
// Polish
iso639_2T_ToENLang.put("pol", "Polish");
iso639_2T_ToFRLang.put("pol", "polonais");
iso639_1_To_639_2T.put("pl", "pol");
+ iso639_2T_To_639_1.put("pol", "pl");
// Pohnpeian
iso639_2T_ToENLang.put("pon", "Pohnpeian");
@@ -2223,6 +2358,7 @@
iso639_2T_ToFRLang.put("por", "portugais");
iso639_1_To_639_2T.put("pt", "por");
+ iso639_2T_To_639_1.put("por", "pt");
// Prakrit languages
iso639_2T_ToENLang.put("pra", "Prakrit languages");
@@ -2237,12 +2373,14 @@
iso639_2T_ToFRLang.put("pus", "pachto");
iso639_1_To_639_2T.put("ps", "pus");
+ iso639_2T_To_639_1.put("pus", "ps");
// Quechua
iso639_2T_ToENLang.put("que", "Quechua");
iso639_2T_ToFRLang.put("que", "quechua");
iso639_1_To_639_2T.put("qu", "que");
+ iso639_2T_To_639_1.put("que", "qu");
// Rajasthani
iso639_2T_ToENLang.put("raj", "Rajasthani");
@@ -2265,6 +2403,7 @@
iso639_2T_ToFRLang.put("roh", "rh�to-roman");
iso639_1_To_639_2T.put("rm", "roh");
+ iso639_2T_To_639_1.put("roh", "rm");
// Romany
iso639_2T_ToENLang.put("rom", "Romany");
@@ -2277,18 +2416,21 @@
iso639_2B_To_639_2T.put("rum", "ron");
iso639_1_To_639_2T.put("ro", "ron");
+ iso639_2T_To_639_1.put("ron", "ro");
// Rundi
iso639_2T_ToENLang.put("run", "Rundi");
iso639_2T_ToFRLang.put("run", "rundi");
iso639_1_To_639_2T.put("rn", "run");
+ iso639_2T_To_639_1.put("run", "rn");
// Russian
iso639_2T_ToENLang.put("rus", "Russian");
iso639_2T_ToFRLang.put("rus", "russe");
iso639_1_To_639_2T.put("ru", "rus");
+ iso639_2T_To_639_1.put("rus", "ru");
// Sandawe
iso639_2T_ToENLang.put("sad", "Sandawe");
@@ -2299,6 +2441,7 @@
iso639_2T_ToFRLang.put("sag", "sango");
iso639_1_To_639_2T.put("sg", "sag");
+ iso639_2T_To_639_1.put("sag", "sg");
// Yakut
iso639_2T_ToENLang.put("sah", "Yakut");
@@ -2321,6 +2464,7 @@
iso639_2T_ToFRLang.put("san", "sanskrit");
iso639_1_To_639_2T.put("sa", "san");
+ iso639_2T_To_639_1.put("san", "sa");
// Sasak
iso639_2T_ToENLang.put("sas", "Sasak");
@@ -2337,6 +2481,7 @@
iso639_2B_To_639_2T.put("scc", "srp");
iso639_1_To_639_2T.put("sr", "srp");
+ iso639_2T_To_639_1.put("srp", "sr");
// Scots
iso639_2T_ToENLang.put("sco", "Scots");
@@ -2349,6 +2494,7 @@
iso639_2B_To_639_2T.put("scr", "hrv");
iso639_1_To_639_2T.put("hr", "hrv");
+ iso639_2T_To_639_1.put("hrv", "hr");
// Selkup
iso639_2T_ToENLang.put("sel", "Selkup");
@@ -2379,6 +2525,7 @@
iso639_2T_ToFRLang.put("sin", "singhalais");
iso639_1_To_639_2T.put("si", "sin");
+ iso639_2T_To_639_1.put("sin", "si");
// Siouan languages
iso639_2T_ToENLang.put("sio", "Siouan languages ");
@@ -2399,12 +2546,14 @@
iso639_2B_To_639_2T.put("slo", "slk");
iso639_1_To_639_2T.put("sk", "slk");
+ iso639_2T_To_639_1.put("slk", "sk");
// Slovenian
iso639_2T_ToENLang.put("slv", "Slovenian");
iso639_2T_ToFRLang.put("slv", "slov�ne");
iso639_1_To_639_2T.put("sl", "slv");
+ iso639_2T_To_639_1.put("slv", "sl");
// Southern Sami
iso639_2T_ToENLang.put("sma", "Southern Sami");
@@ -2415,6 +2564,7 @@
iso639_2T_ToFRLang.put("sme", "sami du Nord");
iso639_1_To_639_2T.put("se", "sme");
+ iso639_2T_To_639_1.put("sme", "se");
// Sami languages (Other)
iso639_2T_ToENLang.put("smi", "Sami languages (Other) ");
@@ -2433,6 +2583,7 @@
iso639_2T_ToFRLang.put("smo", "samoan");
iso639_1_To_639_2T.put("sm", "smo");
+ iso639_2T_To_639_1.put("smo", "sm");
// Skolt Sami
iso639_2T_ToENLang.put("sms", "Skolt Sami");
@@ -2443,12 +2594,14 @@
iso639_2T_ToFRLang.put("sna", "shona");
iso639_1_To_639_2T.put("sn", "sna");
+ iso639_2T_To_639_1.put("sna", "sn");
// Sindhi
iso639_2T_ToENLang.put("snd", "Sindhi");
iso639_2T_ToFRLang.put("snd", "sindhi");
iso639_1_To_639_2T.put("sd", "snd");
+ iso639_2T_To_639_1.put("snd", "sd");
// Soninke
iso639_2T_ToENLang.put("snk", "Soninke ");
@@ -2463,6 +2616,7 @@
iso639_2T_ToFRLang.put("som", "somali");
iso639_1_To_639_2T.put("so", "som");
+ iso639_2T_To_639_1.put("som", "so");
// Songhai
iso639_2T_ToENLang.put("son", "Songhai");
@@ -2473,12 +2627,14 @@
iso639_2T_ToFRLang.put("sot", "sotho du Sud");
iso639_1_To_639_2T.put("st", "sot");
+ iso639_2T_To_639_1.put("sot", "st");
// Spanish; Castilian
iso639_2T_ToENLang.put("spa", "Spanish; Castilian");
iso639_2T_ToFRLang.put("spa", "espagnol; castillan");
iso639_1_To_639_2T.put("es", "spa");
+ iso639_2T_To_639_1.put("spa", "es");
// Albanian
iso639_2T_ToENLang.put("sqi", "Albanian");
@@ -2487,12 +2643,14 @@
iso639_2B_To_639_2T.put("alb", "sqi");
iso639_1_To_639_2T.put("sq", "sqi");
+ iso639_2T_To_639_1.put("sqi", "sq");
// Sardinian
iso639_2T_ToENLang.put("srd", "Sardinian");
iso639_2T_ToFRLang.put("srd", "sarde");
iso639_1_To_639_2T.put("sc", "srd");
+ iso639_2T_To_639_1.put("srd", "sc");
// Serbian
iso639_2T_ToENLang.put("srp", "Serbian");
@@ -2501,6 +2659,7 @@
iso639_2B_To_639_2T.put("scc", "srp");
iso639_1_To_639_2T.put("sr", "srp");
+ iso639_2T_To_639_1.put("srp", "sr");
// Serer
iso639_2T_ToENLang.put("srr", "Serer");
@@ -2515,6 +2674,7 @@
iso639_2T_ToFRLang.put("ssw", "swati");
iso639_1_To_639_2T.put("ss", "ssw");
+ iso639_2T_To_639_1.put("ssw", "ss");
// Sukuma
iso639_2T_ToENLang.put("suk", "Sukuma");
@@ -2525,6 +2685,7 @@
iso639_2T_ToFRLang.put("sun", "soundanais");
iso639_1_To_639_2T.put("su", "sun");
+ iso639_2T_To_639_1.put("sun", "su");
// Susu
iso639_2T_ToENLang.put("sus", "Susu");
@@ -2539,12 +2700,14 @@
iso639_2T_ToFRLang.put("swa", "swahili");
iso639_1_To_639_2T.put("sw", "swa");
+ iso639_2T_To_639_1.put("swa", "sw");
// Swedish
iso639_2T_ToENLang.put("swe", "Swedish");
iso639_2T_ToFRLang.put("swe", "su�dois");
iso639_1_To_639_2T.put("sv", "swe");
+ iso639_2T_To_639_1.put("swe", "sv");
// Syriac
iso639_2T_ToENLang.put("syr", "Syriac");
@@ -2555,6 +2718,7 @@
iso639_2T_ToFRLang.put("tah", "tahitien");
iso639_1_To_639_2T.put("ty", "tah");
+ iso639_2T_To_639_1.put("tah", "ty");
// Tai (Other)
iso639_2T_ToENLang.put("tai", "Tai (Other)");
@@ -2565,18 +2729,21 @@
iso639_2T_ToFRLang.put("tam", "tamoul");
iso639_1_To_639_2T.put("ta", "tam");
+ iso639_2T_To_639_1.put("tam", "ta");
// Tatar
iso639_2T_ToENLang.put("tat", "Tatar");
iso639_2T_ToFRLang.put("tat", "tatar");
iso639_1_To_639_2T.put("tt", "tat");
+ iso639_2T_To_639_1.put("tat", "tt");
// Telugu
iso639_2T_ToENLang.put("tel", "Telugu");
iso639_2T_ToFRLang.put("tel", "t�lougou");
iso639_1_To_639_2T.put("te", "tel");
+ iso639_2T_To_639_1.put("tel", "te");
// Timne
iso639_2T_ToENLang.put("tem", "Timne");
@@ -2595,18 +2762,21 @@
iso639_2T_ToFRLang.put("tgk", "tadjik");
iso639_1_To_639_2T.put("tg", "tgk");
+ iso639_2T_To_639_1.put("tgk", "tg");
// Tagalog
iso639_2T_ToENLang.put("tgl", "Tagalog");
iso639_2T_ToFRLang.put("tgl", "tagalog");
iso639_1_To_639_2T.put("tl", "tgl");
+ iso639_2T_To_639_1.put("tgl", "tl");
// Thai
iso639_2T_ToENLang.put("tha", "Thai");
iso639_2T_ToFRLang.put("tha", "tha�");
iso639_1_To_639_2T.put("th", "tha");
+ iso639_2T_To_639_1.put("tha", "th");
// Tibetan
iso639_2T_ToENLang.put("bod", "Tibetan");
@@ -2615,6 +2785,7 @@
iso639_2B_To_639_2T.put("tib", "bod");
iso639_1_To_639_2T.put("bo", "bod");
+ iso639_2T_To_639_1.put("bod", "bo");
// Tigre
iso639_2T_ToENLang.put("tig", "Tigre");
@@ -2625,6 +2796,7 @@
iso639_2T_ToFRLang.put("tir", "tigrigna");
iso639_1_To_639_2T.put("ti", "tir");
+ iso639_2T_To_639_1.put("tir", "ti");
// Tiv
iso639_2T_ToENLang.put("tiv", "Tiv");
@@ -2651,6 +2823,7 @@
iso639_2T_ToFRLang.put("ton", "tongan (�les Tonga)");
iso639_1_To_639_2T.put("to", "ton");
+ iso639_2T_To_639_1.put("ton", "to");
// Tok Pisin
iso639_2T_ToENLang.put("tpi", "Tok Pisin");
@@ -2665,18 +2838,21 @@
iso639_2T_ToFRLang.put("tsn", "tswana");
iso639_1_To_639_2T.put("tn", "tsn");
+ iso639_2T_To_639_1.put("tsn", "tn");
// Tsonga
iso639_2T_ToENLang.put("tso", "Tsonga");
iso639_2T_ToFRLang.put("tso", "tsonga");
iso639_1_To_639_2T.put("ts", "tso");
+ iso639_2T_To_639_1.put("tso", "ts");
// Turkmen
iso639_2T_ToENLang.put("tuk", "Turkmen");
iso639_2T_ToFRLang.put("tuk", "turkm�ne");
iso639_1_To_639_2T.put("tk", "tuk");
+ iso639_2T_To_639_1.put("tuk", "tk");
// Tumbuka
iso639_2T_ToENLang.put("tum", "Tumbuka");
@@ -2691,6 +2867,7 @@
iso639_2T_ToFRLang.put("tur", "turc");
iso639_1_To_639_2T.put("tr", "tur");
+ iso639_2T_To_639_1.put("tur", "tr");
// Altaic (Other)
iso639_2T_ToENLang.put("tut", "Altaic (Other)");
@@ -2705,6 +2882,7 @@
iso639_2T_ToFRLang.put("twi", "twi");
iso639_1_To_639_2T.put("tw", "twi");
+ iso639_2T_To_639_1.put("twi", "tw");
// Tuvinian
iso639_2T_ToENLang.put("tyv", "Tuvinian");
@@ -2719,12 +2897,14 @@
iso639_2T_ToFRLang.put("uig", "ou�gour");
iso639_1_To_639_2T.put("ug", "uig");
+ iso639_2T_To_639_1.put("uig", "ug");
// Ukrainian
iso639_2T_ToENLang.put("ukr", "Ukrainian");
iso639_2T_ToFRLang.put("ukr", "ukrainien");
iso639_1_To_639_2T.put("uk", "ukr");
+ iso639_2T_To_639_1.put("ukr", "uk");
// Umbundu
iso639_2T_ToENLang.put("umb", "Umbundu");
@@ -2739,12 +2919,14 @@
iso639_2T_ToFRLang.put("urd", "ourdou");
iso639_1_To_639_2T.put("ur", "urd");
+ iso639_2T_To_639_1.put("urd", "ur");
// Uzbek
iso639_2T_ToENLang.put("uzb", "Uzbek");
iso639_2T_ToFRLang.put("uzb", "ouszbek");
iso639_1_To_639_2T.put("uz", "uzb");
+ iso639_2T_To_639_1.put("uzb", "uz");
// Vai
iso639_2T_ToENLang.put("vai", "Vai");
@@ -2759,12 +2941,14 @@
iso639_2T_ToFRLang.put("vie", "vietnamien");
iso639_1_To_639_2T.put("vi", "vie");
+ iso639_2T_To_639_1.put("vie", "vi");
// Volap�k
iso639_2T_ToENLang.put("vol", "Volap�k");
iso639_2T_ToFRLang.put("vol", "volap�k");
iso639_1_To_639_2T.put("vo", "vol");
+ iso639_2T_To_639_1.put("vol", "vo");
// Votic
iso639_2T_ToENLang.put("vot", "Votic");
@@ -2793,6 +2977,7 @@
iso639_2B_To_639_2T.put("wel", "cym");
iso639_1_To_639_2T.put("cy", "cym");
+ iso639_2T_To_639_1.put("cym", "cy");
// Sorbian languages
iso639_2T_ToENLang.put("wen", "Sorbian languages");
@@ -2803,18 +2988,21 @@
iso639_2T_ToFRLang.put("wln", "wallon");
iso639_1_To_639_2T.put("wa", "wln");
+ iso639_2T_To_639_1.put("wln", "wa");
// Wolof
iso639_2T_ToENLang.put("wol", "Wolof");
iso639_2T_ToFRLang.put("wol", "wolof");
iso639_1_To_639_2T.put("wo", "wol");
+ iso639_2T_To_639_1.put("wol", "wo");
// Xhosa
iso639_2T_ToENLang.put("xho", "Xhosa");
iso639_2T_ToFRLang.put("xho", "xhosa");
iso639_1_To_639_2T.put("xh", "xho");
+ iso639_2T_To_639_1.put("xho", "xh");
// Yao
iso639_2T_ToENLang.put("yao", "Yao");
@@ -2829,12 +3017,14 @@
iso639_2T_ToFRLang.put("yid", "yiddish");
iso639_1_To_639_2T.put("yi", "yid");
+ iso639_2T_To_639_1.put("yid", "yi");
// Yoruba
iso639_2T_ToENLang.put("yor", "Yoruba");
iso639_2T_ToFRLang.put("yor", "yoruba");
iso639_1_To_639_2T.put("yo", "yor");
+ iso639_2T_To_639_1.put("yor", "yo");
// Yupik languages
iso639_2T_ToENLang.put("ypk", "Yupik languages");
@@ -2853,6 +3043,7 @@
iso639_2T_ToFRLang.put("zha", "zhuang; chuang");
iso639_1_To_639_2T.put("za", "zha");
+ iso639_2T_To_639_1.put("zha", "za");
// Chinese
iso639_2T_ToENLang.put("zho", "Chinese");
@@ -2861,6 +3052,7 @@
iso639_2B_To_639_2T.put("chi", "zho");
iso639_1_To_639_2T.put("zh", "zho");
+ iso639_2T_To_639_1.put("zho", "zh");
// Zande
iso639_2T_ToENLang.put("znd", "Zande");
@@ -2871,6 +3063,7 @@
iso639_2T_ToFRLang.put("zul", "zoulou");
iso639_1_To_639_2T.put("zu", "zul");
+ iso639_2T_To_639_1.put("zul", "zu");
// Zuni
iso639_2T_ToENLang.put("zun", "Zuni");
@@ -3280,23 +3473,36 @@
* code, an ISO 639-2 Bibliographic code, or an ISO 639-1 2-letter code.
* By convention, language codes are expressed in lower case.
* @param code - the String code.
- * @return - the equivalent ISO 639-2T code, or null if the
- * code is invalid.
+ * @return - the equivalent ISO 639-2T code, or the ISO 639_1 code if no
+ * not three-letter code exists, or null if the code is invalid.
*/
public static String canonicalLangCode(String code) {
- String biblio;
- String iso639_1;
+ String wasBiblio;
+ String wasIso639_1;
String locode = code.toLowerCase();
// Check for valid terminology code
if (iso639_2T_ToENLang.get(locode) != null)
return locode;
// Check for valid 2-letter code
- if ((iso639_1 = (String)(iso639_1_To_639_2T.get(locode))) != null)
- return iso639_1;
+ if ((wasIso639_1 = (String)(iso639_1_To_639_2T.get(locode))) != null)
+ return wasIso639_1;
// Check for valid bibliographic code
- if ((biblio = (String)(iso639_2B_To_639_2T.get(locode))) != null)
- return biblio;
+ if ((wasBiblio = (String)(iso639_2B_To_639_2T.get(locode))) != null)
+ return wasBiblio;
return null;
+ }
+
+ /**
+ * Get the canonical 2-letter ISO 639-1 code corresponding to an
+ * ISO 639 code. The argument must be an ISO 639-2 Terminology code.
+ * By convention, language codes are expressed in lower case.
+ * @param code - the 3-letter ISO 639-2 Terminology code.
+ * @return - the equivalent ISO 639-1 code, or null if the
+ * code is invalid.
+ */
+ public static String canonical639_1Code(String code) {
+ // Check for valid 3-letter code
+ return (String)(iso639_2T_To_639_1.get(code.toLowerCase()));
}
/**
No revision
No revision
1.1.2.6 +34 -14 xml-fop/src/codegen/Attic/xml-lang.xsl
Index: xml-lang.xsl
===================================================================
RCS file: /home/cvs/xml-fop/src/codegen/Attic/xml-lang.xsl,v
retrieving revision 1.1.2.5
retrieving revision 1.1.2.6
diff -u -r1.1.2.5 -r1.1.2.6
--- xml-lang.xsl 19 Feb 2004 03:57:51 -0000 1.1.2.5
+++ xml-lang.xsl 29 May 2004 14:24:23 -0000 1.1.2.6
@@ -86,6 +86,11 @@
private static final HashMap iso639_1_To_639_2T;
/**
+ * Map of ISO 639-1 2-letter codes keyed on ISO 639-2 terminology code.
+ */
+ private static final HashMap iso639_2T_To_639_1;
+
+ /**
* Map of English script names keyed on ISO 15924 script code.
*/
private static final HashMap iso15924ToName;
@@ -93,10 +98,11 @@
static {
iso3166ToName = new HashMap(<xsl:value-of select="$countries"/>);
- iso639_2T_ToENLang = new HashMap(<xsl:value-of select="$languages"/>);
- iso639_2T_ToFRLang = new HashMap(<xsl:value-of select="$languages"/>);
- iso639_2B_To_639_2T = new HashMap(<xsl:value-of select="$languages"/>);
- iso639_1_To_639_2T = new HashMap(<xsl:value-of select="$languages"/>);
+ iso639_2T_ToENLang = new HashMap((int)(<xsl:value-of select="$languages"/> * 1.4));
+ iso639_2T_ToFRLang = new HashMap((int)(<xsl:value-of select="$languages"/> * 1.4));
+ iso639_2B_To_639_2T = new HashMap((int)(<xsl:value-of select="$languages"/> * 1.4));
+ iso639_1_To_639_2T = new HashMap((int)(<xsl:value-of select="$languages"/> * 1.4));
+ iso639_2T_To_639_1 = new HashMap((int)(<xsl:value-of select="$languages"/> * 1.4));
iso15924ToName = new HashMap(<xsl:value-of select="$scripts"/>);
<xsl:apply-templates select="countrycodes/country"/>
@@ -134,26 +140,39 @@
* code, an ISO 639-2 Bibliographic code, or an ISO 639-1 2-letter code.
* By convention, language codes are expressed in lower case.
* @param code - the <tt>String</tt> code.
- * @return - the equivalent ISO 639-2T code, or <tt>null</tt> if the
- * code is invalid.
+ * @return - the equivalent ISO 639-2T code, or the ISO 639_1 code if no
+ * not three-letter code exists, or <tt>null</tt> if the code is invalid.
*/
public static String canonicalLangCode(String code) {
- String biblio;
- String iso639_1;
+ String wasBiblio;
+ String wasIso639_1;
String locode = code.toLowerCase();
// Check for valid terminology code
if (iso639_2T_ToENLang.get(locode) != null)
return locode;
// Check for valid 2-letter code
- if ((iso639_1 = (String)(iso639_1_To_639_2T.get(locode))) != null)
- return iso639_1;
+ if ((wasIso639_1 = (String)(iso639_1_To_639_2T.get(locode))) != null)
+ return wasIso639_1;
// Check for valid bibliographic code
- if ((biblio = (String)(iso639_2B_To_639_2T.get(locode))) != null)
- return biblio;
+ if ((wasBiblio = (String)(iso639_2B_To_639_2T.get(locode))) != null)
+ return wasBiblio;
return null;
}
/**
+ * Get the canonical 2-letter ISO 639-1 code corresponding to an
+ * ISO 639 code. The argument must be an ISO 639-2 Terminology code.
+ * By convention, language codes are expressed in lower case.
+ * @param code - the 3-letter ISO 639-2 Terminology code.
+ * @return - the equivalent ISO 639-1 code, or <tt>null</tt> if the
+ * code is invalid.
+ */
+ public static String canonical639_1Code(String code) {
+ // Check for valid 3-letter code
+ return (String)(iso639_2T_To_639_1.get(code.toLowerCase()));
+ }
+
+ /**
* Get the English name corresponding to a language code.
* @param code - the <tt>String</tt> code.
* @return - the English name of the language, or <tt>null</tt> if the
@@ -217,6 +236,7 @@
</xsl:template>
<xsl:template match="@iso639-1">
iso639_1_To_639_2T.put("<xsl:value-of select="."/>", "<xsl:value-of select="../@terminology"/>");
+ iso639_2T_To_639_1.put("<xsl:value-of select="../@terminology"/>", "<xsl:value-of select="."/>");
</xsl:template>
<xsl:template match="scriptcodes/script">
iso15924ToName.put("<xsl:value-of select="@code"/>", "<xsl:value-of select="@name"/>");
---------------------------------------------------------------------
To unsubscribe, e-mail: fop-cvs-unsubscribe@xml.apache.org
For additional commands, e-mail: fop-cvs-help@xml.apache.org