|
1 /* |
|
2 * Copyright (c) 2007 Sun Microsystems, Inc. All Rights Reserved. |
|
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. |
|
4 * |
|
5 * This code is free software; you can redistribute it and/or modify it |
|
6 * under the terms of the GNU General Public License version 2 only, as |
|
7 * published by the Free Software Foundation. |
|
8 * |
|
9 * This code is distributed in the hope that it will be useful, but WITHOUT |
|
10 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or |
|
11 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License |
|
12 * version 2 for more details (a copy is included in the LICENSE file that |
|
13 * accompanied this code). |
|
14 * |
|
15 * You should have received a copy of the GNU General Public License version |
|
16 * 2 along with this work; if not, write to the Free Software Foundation, |
|
17 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. |
|
18 * |
|
19 * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara, |
|
20 * CA 95054 USA or visit www.sun.com if you need additional information or |
|
21 * have any questions. |
|
22 */ |
|
23 /* |
|
24 @test |
|
25 @summary test ISO639-2 language codes |
|
26 @compile -encoding ascii -source 1.4 -target 1.4 Bug4175998Test.java |
|
27 @run main Bug4175998Test |
|
28 @bug 4175998 |
|
29 */ |
|
30 /* |
|
31 * |
|
32 * |
|
33 * (C) Copyright IBM Corp. 1998 - All Rights Reserved |
|
34 * |
|
35 * Portions Copyright 2007 by Sun Microsystems, Inc., |
|
36 * 901 San Antonio Road, Palo Alto, California, 94303, U.S.A. |
|
37 * All rights reserved. |
|
38 * |
|
39 * This software is the confidential and proprietary information |
|
40 * of Sun Microsystems, Inc. ("Confidential Information"). You |
|
41 * shall not disclose such Confidential Information and shall use |
|
42 * it only in accordance with the terms of the license agreement |
|
43 * you entered into with Sun. |
|
44 * |
|
45 * The original version of this source code and documentation is |
|
46 * copyrighted and owned by IBM. These materials are provided |
|
47 * under terms of a License Agreement between IBM and Sun. |
|
48 * This technology is protected by multiple US and International |
|
49 * patents. This notice and attribution to IBM may not be removed. |
|
50 * |
|
51 */ |
|
52 |
|
53 import java.util.*; |
|
54 import java.io.*; |
|
55 |
|
56 /** |
|
57 * Bug4175998Test verifies that the following bug has been fixed: |
|
58 * Bug 4175998 - The java.util.Locale.getISO3Language() returns wrong result for a locale with |
|
59 * language code 'ta'(Tamil). |
|
60 */ |
|
61 public class Bug4175998Test extends LocaleTestFmwk { |
|
62 public static void main(String[] args) throws Exception { |
|
63 new Bug4175998Test().run(args); |
|
64 //generateTables(); //uncomment this to regenerate data tables |
|
65 } |
|
66 |
|
67 public void testIt() throws Exception { |
|
68 boolean bad = false; |
|
69 for (int i = 0; i < CODES.length; i++) { |
|
70 final String[] localeCodes = CODES[i]; |
|
71 final Locale l = new Locale(localeCodes[0], ""); |
|
72 final String iso3 = l.getISO3Language(); |
|
73 if (!iso3.equals(localeCodes[1]) /*&& !iso3.equals(localeCodes[2])*/) { |
|
74 logln("Locale("+l+") returned bad ISO3 language code." |
|
75 +" Got '"+iso3+"' instead of '"+localeCodes[1]+"'"/*+" or '"+localeCodes[2]+"'"*/); |
|
76 bad = true; |
|
77 } |
|
78 } |
|
79 if (bad) { |
|
80 errln("Bad ISO3 language codes detected."); |
|
81 } |
|
82 } |
|
83 |
|
84 private static final String[][] CODES = { |
|
85 {"pt","por","por"}, |
|
86 {"eu","eus","baq"}, |
|
87 {"ps","pus","pus"}, |
|
88 {"et","est","est"}, |
|
89 {"ka","kat","geo"}, |
|
90 {"es","spa","spa"}, |
|
91 {"eo","epo","epo"}, |
|
92 {"en","eng","eng"}, |
|
93 {"pl","pol","pol"}, |
|
94 {"el","ell","gre"}, |
|
95 {"uz","uzb","uzb"}, |
|
96 {"jv","jav","jav"}, |
|
97 {"ur","urd","urd"}, |
|
98 {"uk","ukr","ukr"}, |
|
99 {"ug","uig","uig"}, |
|
100 {"zu","zul","zul"}, |
|
101 {"ja","jpn","jpn"}, |
|
102 {"or","ori","ori"}, |
|
103 {"om","orm","orm"}, |
|
104 {"zh","zho","chi"}, |
|
105 {"tw","twi","twi"}, |
|
106 {"de","deu","ger"}, |
|
107 {"oc","oci","oci"}, |
|
108 {"za","zha","zha"}, |
|
109 {"tt","tat","tat"}, |
|
110 {"iu","iku","iku"}, |
|
111 {"ts","tso","tso"}, |
|
112 {"it","ita","ita"}, |
|
113 {"tr","tur","tur"}, |
|
114 {"da","dan","dan"}, |
|
115 {"is","isl","ice"}, |
|
116 {"to","ton","ton"}, |
|
117 {"tl","tgl","tgl"}, |
|
118 {"tk","tuk","tuk"}, |
|
119 {"ik","ipk","ipk"}, |
|
120 {"ti","tir","tir"}, |
|
121 {"th","tha","tha"}, |
|
122 {"tg","tgk","tgk"}, |
|
123 {"te","tel","tel"}, |
|
124 {"cy","cym","wel"}, |
|
125 {"ie","ile","ile"}, |
|
126 {"id","ind","ind"}, |
|
127 {"ta","tam","tam"}, |
|
128 {"ia","ina","ina"}, |
|
129 {"cs","ces","cze"}, |
|
130 {"yo","yor","yor"}, |
|
131 {"no","nor","nor"}, |
|
132 {"co","cos","cos"}, |
|
133 {"nl","nld","dut"}, |
|
134 {"yi","yid","yid"}, |
|
135 {"hy","hye","arm"}, |
|
136 {"sw","swa","swa"}, |
|
137 {"ne","nep","nep"}, |
|
138 {"sv","swe","swe"}, |
|
139 {"su","sun","sun"}, |
|
140 {"hu","hun","hun"}, |
|
141 {"na","nau","nau"}, |
|
142 {"sr","srp","scc"}, |
|
143 {"ca","cat","cat"}, |
|
144 {"sq","sqi","alb"}, |
|
145 {"hr","hrv","scr"}, |
|
146 {"so","som","som"}, |
|
147 {"sn","sna","sna"}, |
|
148 {"sm","smo","smo"}, |
|
149 {"sl","slv","slv"}, |
|
150 {"sk","slk","slo"}, |
|
151 {"si","sin","sin"}, |
|
152 {"hi","hin","hin"}, |
|
153 {"my","mya","bur"}, |
|
154 {"sd","snd","snd"}, |
|
155 {"he","heb","heb"}, |
|
156 {"sa","san","san"}, |
|
157 {"mt","mlt","mlt"}, |
|
158 {"ms","msa","may"}, |
|
159 {"ha","hau","hau"}, |
|
160 {"mr","mar","mar"}, |
|
161 {"br","bre","bre"}, |
|
162 {"mo","mol","mol"}, |
|
163 {"bo","bod","tib"}, |
|
164 {"mn","mon","mon"}, |
|
165 {"bn","ben","ben"}, |
|
166 {"ml","mal","mal"}, |
|
167 {"mk","mkd","mac"}, |
|
168 {"xh","xho","xho"}, |
|
169 {"mi","mri","mao"}, |
|
170 {"bi","bis","bis"}, |
|
171 {"bh","bih","bih"}, |
|
172 {"mg","mlg","mlg"}, |
|
173 {"bg","bul","bul"}, |
|
174 {"rw","kin","kin"}, |
|
175 {"be","bel","bel"}, |
|
176 {"ru","rus","rus"}, |
|
177 {"gu","guj","guj"}, |
|
178 {"ba","bak","bak"}, |
|
179 {"ro","ron","rum"}, |
|
180 {"rm","roh","roh"}, |
|
181 {"gn","grn","grn"}, |
|
182 {"az","aze","aze"}, |
|
183 {"ay","aym","aym"}, |
|
184 {"gd","gla","gla"}, |
|
185 {"lv","lav","lav"}, |
|
186 {"lt","lit","lit"}, |
|
187 {"ga","gle","gle"}, |
|
188 {"as","asm","asm"}, |
|
189 {"ar","ara","ara"}, |
|
190 {"wo","wol","wol"}, |
|
191 {"ln","lin","lin"}, |
|
192 {"am","amh","amh"}, |
|
193 {"fy","fry","fry"}, |
|
194 {"af","afr","afr"}, |
|
195 {"qu","que","que"}, |
|
196 {"ab","abk","abk"}, |
|
197 {"la","lat","lat"}, |
|
198 {"aa","aar","aar"}, |
|
199 {"fr","fra","fre"}, |
|
200 {"fo","fao","fao"}, |
|
201 {"fj","fij","fij"}, |
|
202 {"fi","fin","fin"}, |
|
203 {"ky","kir","kir"}, |
|
204 {"ku","kur","kur"}, |
|
205 {"fa","fas","per"}, |
|
206 {"ks","kas","kas"}, |
|
207 {"vo","vol","vol"}, |
|
208 {"ko","kor","kor"}, |
|
209 {"kn","kan","kan"}, |
|
210 {"kk","kaz","kaz"}, |
|
211 {"vi","vie","vie"}, |
|
212 }; |
|
213 |
|
214 /* |
|
215 The following code was used to generate the table above from the two ISO standards. |
|
216 It matches the language names (not the codes) from both standards to associate |
|
217 the two and three letter codes. |
|
218 |
|
219 private static final String ISO639 = "d:\\temp\\iso639.txt"; |
|
220 private static final String ISO6392 = "d:\\temp\\iso-639-2.txt"; |
|
221 private static void generateTables() { |
|
222 try { |
|
223 BufferedReader ISO639File = new BufferedReader(new FileReader(ISO639)); |
|
224 Hashtable i639 = new Hashtable(); |
|
225 for (String line = ISO639File.readLine(); line != null; line = ISO639File.readLine()) { |
|
226 if (!line.startsWith("#")) { |
|
227 final int ndx = line.indexOf(' '); |
|
228 final String arg1 = line.substring(0, ndx); |
|
229 final int ndx2 = line.indexOf(' ', ndx+1); |
|
230 final String arg2 = line.substring(ndx+1, ndx2 < 0 ? line.length() : ndx2); |
|
231 i639.put(arg1, arg2); |
|
232 } |
|
233 } |
|
234 |
|
235 BufferedReader ISO6392File = new BufferedReader(new FileReader(ISO6392)); |
|
236 Hashtable i6392 = new Hashtable(); |
|
237 for (String line = ISO6392File.readLine(); line != null; line = ISO6392File.readLine()) { |
|
238 final int ndx = line.indexOf(' '); |
|
239 final int ndx2 = line.indexOf(' ', ndx+1); |
|
240 int ndx3 = line.indexOf(' ', ndx2+1); |
|
241 if (ndx3 < 0) ndx3 = line.length(); |
|
242 final String arg1 = line.substring(0, ndx); |
|
243 final String arg2 = line.substring(ndx+1, ndx2); |
|
244 final String arg3 = line.substring(ndx2+1, ndx3); |
|
245 i6392.put(arg3, new ISO6392Entry(arg1, arg2)); |
|
246 } |
|
247 |
|
248 Enumeration keys = i639.keys(); |
|
249 while (keys.hasMoreElements()) { |
|
250 final Object key = keys.nextElement(); |
|
251 final Object name = i639.get(key); |
|
252 final Object value = i6392.get(name); |
|
253 |
|
254 if (value != null) { |
|
255 System.out.print("{"); |
|
256 System.out.print("\""+key+"\","); |
|
257 System.out.print(value); |
|
258 System.out.println("},"); |
|
259 } |
|
260 } |
|
261 } catch (Exception e) { |
|
262 System.out.println(e); |
|
263 } |
|
264 } |
|
265 |
|
266 |
|
267 private static final class ISO6392Entry { |
|
268 public final String code; |
|
269 public final String name; |
|
270 public ISO6392Entry(String code, String name) { |
|
271 this.code = code; |
|
272 this.name = name; |
|
273 } |
|
274 public String toString() { |
|
275 return "\""+code+"\",\""+name+"\""; |
|
276 } |
|
277 |
|
278 } |
|
279 */ |
|
280 |
|
281 } |
|
282 |
|
283 /* |
|
284 |
|
285 data from ftp://dkuug.dk on March 4, 1999 |
|
286 verified by http://www.triacom.com/archive/iso639-2.en.html |
|
287 |
|
288 iso 639 data |
|
289 aa Afar |
|
290 ab Abkhazian |
|
291 af Afrikaans |
|
292 am Amharic |
|
293 ar Arabic |
|
294 as Assamese |
|
295 ay Aymara |
|
296 az Azerbaijani |
|
297 ba Bashkir |
|
298 be Belarussian |
|
299 bg Bulgarian |
|
300 bh Bihari |
|
301 bi Bislama |
|
302 bn Bengali |
|
303 bo Tibetan |
|
304 br Breton |
|
305 ca Catalan |
|
306 co Corsican |
|
307 cs Czech |
|
308 cy Welsh |
|
309 da Danish |
|
310 de German |
|
311 dz Bhutani |
|
312 el Greek |
|
313 en English |
|
314 eo Esperanto |
|
315 es Spanish |
|
316 et Estonian |
|
317 eu Basque |
|
318 fa Persian |
|
319 fi Finnish |
|
320 fj Fijian |
|
321 fo Faroese |
|
322 fr French |
|
323 fy Frisian |
|
324 ga Irish |
|
325 gd Gaelic |
|
326 gl Galician |
|
327 gn Guarani |
|
328 gu Gujarati |
|
329 ha Hausa |
|
330 he Hebrew |
|
331 hi Hindi |
|
332 hr Croatian |
|
333 hu Hungarian |
|
334 hy Armenian |
|
335 ia Interlingua |
|
336 id Indonesian |
|
337 ie Interlingue |
|
338 ik Inupiak |
|
339 is Icelandic |
|
340 it Italian |
|
341 iu Inuktitut |
|
342 ja Japanese |
|
343 jw Javanese |
|
344 ka Georgian |
|
345 kk Kazakh |
|
346 kl Greenlandic |
|
347 km Cambodian |
|
348 kn Kannada |
|
349 ko Korean |
|
350 ks Kashmiri |
|
351 ku Kurdish |
|
352 ky Kirghiz |
|
353 la Latin |
|
354 ln Lingala |
|
355 lo Laothian |
|
356 lt Lithuanian |
|
357 lv Latvian |
|
358 mg Malagasy |
|
359 mi Maori |
|
360 mk Macedonian |
|
361 ml Malayalam |
|
362 mn Mongolian |
|
363 mo Moldavian |
|
364 mr Marathi |
|
365 ms Malay |
|
366 mt Maltese |
|
367 my Burmese |
|
368 na Nauru |
|
369 ne Nepali |
|
370 nl Dutch |
|
371 no Norwegian |
|
372 oc Occitan |
|
373 om Oromo |
|
374 or Oriya |
|
375 pa Punjabi |
|
376 pl Polish |
|
377 ps Pushto |
|
378 pt Portuguese |
|
379 qu Quechua |
|
380 rm Raeto-Romance |
|
381 rn Kirundi |
|
382 ro Romanian |
|
383 ru Russian |
|
384 rw Kinyarwanda |
|
385 sa Sanskrit |
|
386 sd Sindhi |
|
387 sg Sangho |
|
388 sh Croatian (Serbo) |
|
389 si Sinhalese |
|
390 sk Slovak |
|
391 sl Slovenian |
|
392 sm Samoan |
|
393 sn Shona |
|
394 so Somali |
|
395 sq Albanian |
|
396 sr Serbian |
|
397 ss Siswati |
|
398 st Sesotho |
|
399 su Sundanese |
|
400 sv Swedish |
|
401 sw Swahili |
|
402 ta Tamil |
|
403 te Telugu |
|
404 tg Tajik |
|
405 th Thai |
|
406 ti Tigrinya |
|
407 tk Turkmen |
|
408 tl Tagalog |
|
409 tn Setswana |
|
410 to Tonga |
|
411 tr Turkish |
|
412 ts Tsonga |
|
413 tt Tatar |
|
414 tw Twi |
|
415 ug Uighur |
|
416 uk Ukrainian |
|
417 ur Urdu |
|
418 uz Uzbek |
|
419 vi Vietnamese |
|
420 vo Volapuk |
|
421 wo Wolof |
|
422 xh Xhosa |
|
423 yi Yiddish |
|
424 yo Yoruba |
|
425 za Zhuang |
|
426 zh Chinese |
|
427 zu Zulu |
|
428 |
|
429 ISO 639-2 data |
|
430 |
|
431 aar aar Afar |
|
432 abk abk Abkhazian |
|
433 ace ace Achinese |
|
434 ach ach Acoli |
|
435 ada ada Adangme |
|
436 afa afa Afro-Asiatic (Other) |
|
437 afh afh Afrihili |
|
438 afr afr Afrikaans |
|
439 aka aka Akan |
|
440 akk akk Akkadian |
|
441 ale ale Aleut |
|
442 alg alg Algonquian languages |
|
443 amh amh Amharic |
|
444 ang ang English-Old (ca. 450-1100) |
|
445 apa apa Apache languages |
|
446 ara ara Arabic |
|
447 arc arc Aramaic |
|
448 arn arn Araucanian |
|
449 arp arp Arapaho |
|
450 art art Artificial (Other) |
|
451 arw arw Arawak |
|
452 asm asm Assamese |
|
453 ath ath Athapascan languages |
|
454 aus aus Australian languages |
|
455 ava ava Avaric |
|
456 ave ave Avestan |
|
457 awa awa Awadhi |
|
458 aym aym Aymara |
|
459 aze aze Azerbaijani |
|
460 bad bad Banda |
|
461 bai bai Bamileke languages |
|
462 bak bak Bashkir |
|
463 bal bal Baluchi |
|
464 bam bam Bambara |
|
465 ban ban Balinese |
|
466 bas bas Basa |
|
467 bat bat Baltic (Other) |
|
468 bej bej Beja |
|
469 bel bel Belarussian |
|
470 bem bem Bemba |
|
471 ben ben Bengali |
|
472 ber ber Berber (Other) |
|
473 bho bho Bhojpuri |
|
474 bih bih Bihari |
|
475 bik bik Bikol |
|
476 bin bin Bini |
|
477 bis bis Bislama |
|
478 bla bla Siksika |
|
479 bnt bnt Bantu (Other) |
|
480 bod tib Tibetan |
|
481 bra bra Braj |
|
482 bre bre Breton |
|
483 btk btk Batak (Indonesia) |
|
484 bua bua Buriat |
|
485 bug bug Buginese |
|
486 bul bul Bulgarian |
|
487 cad cad Caddo |
|
488 cai cai Central-American-Indian (Other) |
|
489 car car Carib |
|
490 cat cat Catalan |
|
491 cau cau Caucasian (Other) |
|
492 ceb ceb Cebuano |
|
493 cel cel Celtic (Other) |
|
494 ces cze Czech |
|
495 cha cha Chamorro |
|
496 chb chb Chibcha |
|
497 che che Chechen |
|
498 chg chg Chagatai |
|
499 chk chk Chuukese |
|
500 chm chm Mari |
|
501 chn chn Chinook-jargon |
|
502 cho cho Choctaw |
|
503 chp chp Chipewyan |
|
504 chr chr Cherokee |
|
505 chu chu Church-Slavic |
|
506 chv chv Chuvash |
|
507 chy chy Cheyenne |
|
508 cmc cmc Chamic languages |
|
509 cop cop Coptic |
|
510 cor cor Cornish |
|
511 cos cos Corsican |
|
512 cpe cpe Creoles-and-pidgins-English-based (Other) |
|
513 cpf cpf Creoles-and-pidgins-French-based (Other) |
|
514 cpp cpp Creoles-and-pidgins-Portuguese-based (Other) |
|
515 cre cre Cree |
|
516 crp crp Creoles-and-pidgins (Other) |
|
517 cus cus Cushitic (Other) |
|
518 cym wel Welsh |
|
519 dak dak Dakota |
|
520 dan dan Danish |
|
521 day day Dayak |
|
522 del del Delaware |
|
523 den den Slave (Athapascan) |
|
524 deu ger German |
|
525 dgr dgr Dogrib |
|
526 din din Dinka |
|
527 div div Divehi |
|
528 doi doi Dogri |
|
529 dra dra Dravidian (Other) |
|
530 dua dua Duala |
|
531 dum dum Dutch-Middle (ca. 1050-1350) |
|
532 dyu dyu Dyula |
|
533 dzo dzo Dzongkha |
|
534 efi efi Efik |
|
535 egy egy Egyptian (Ancient) |
|
536 eka eka Ekajuk |
|
537 ell gre Greek Modern (post 1453) |
|
538 elx elx Elamite |
|
539 eng eng English |
|
540 enm enm English-Middle (1100-1500) |
|
541 epo epo Esperanto |
|
542 est est Estonian |
|
543 eus baq Basque |
|
544 ewe ewe Ewe |
|
545 ewo ewo Ewondo |
|
546 fan fan Fang |
|
547 fao fao Faroese |
|
548 fas per Persian |
|
549 fat fat Fanti |
|
550 fij fij Fijian |
|
551 fin fin Finnish |
|
552 fiu fiu Finno-Ugrian (Other) |
|
553 fon fon Fon |
|
554 fra fre French |
|
555 frm frm French-Middle (ca. 1400-1600) |
|
556 fro fro French-Old (842-ca. 1400) |
|
557 fry fry Frisian |
|
558 ful ful Fulah |
|
559 fur fur Friulian |
|
560 gaa gaa Ga |
|
561 gay gay Gayo |
|
562 gba gba Gbaya |
|
563 gem gem Germanic (Other) |
|
564 gez gez Geez |
|
565 gil gil Gilbertese |
|
566 gdh gae Gaelic |
|
567 gai iri Irish |
|
568 glg glg Gallegan |
|
569 glv glv Manx |
|
570 gmh gmh German-Middle High (ca. 1050-1500) |
|
571 goh goh German-Old High (ca. 750-1050) |
|
572 gon gon Gondi |
|
573 gor gor Gorontalo |
|
574 got got Gothic |
|
575 grb grb Grebo |
|
576 grc grc Greek-Ancient (to 1453) |
|
577 grn grn Guarani |
|
578 guj guj Gujarati |
|
579 gwi gwi Gwich'in |
|
580 hai hai Haida |
|
581 hau hau Hausa |
|
582 haw haw Hawaiian |
|
583 heb heb Hebrew |
|
584 her her Herero |
|
585 hil hil Hiligaynon |
|
586 him him Himachali |
|
587 hin hin Hindi |
|
588 hit hit Hittite |
|
589 hmn hmn Hmong |
|
590 hmo hmo Hiri Motu |
|
591 hrv scr Croatian |
|
592 hun hun Hungarian |
|
593 hup hup Hupa |
|
594 hye arm Armenian |
|
595 iba iba Iban |
|
596 ibo ibo Igbo |
|
597 ijo ijo Ijo |
|
598 iku iku Inuktitut |
|
599 ile ile Interlingue |
|
600 ilo ilo Iloko |
|
601 ina ina Interlingua (International Auxilary Language Association) |
|
602 inc inc Indic (Other) |
|
603 ind ind Indonesian |
|
604 ine ine Indo-European (Other) |
|
605 ipk ipk Inupiak |
|
606 ira ira Iranian (Other) |
|
607 iro iro Iroquoian languages |
|
608 isl ice Icelandic |
|
609 ita ita Italian |
|
610 jaw jav Javanese |
|
611 jpn jpn Japanese |
|
612 jpr jpr Judeo-Persian |
|
613 jrb jrb Judeo-Arabic |
|
614 kaa kaa Kara-Kalpak |
|
615 kab kab Kabyle |
|
616 kac kac Kachin |
|
617 kal kal Kalaallisut |
|
618 kam kam Kamba |
|
619 kan kan Kannada |
|
620 kar kar Karen |
|
621 kas kas Kashmiri |
|
622 kat geo Georgian |
|
623 kau kau Kanuri |
|
624 kaw kaw Kawi |
|
625 kaz kaz Kazakh |
|
626 kha kha Khasi |
|
627 khi khi Khoisan (Other) |
|
628 khm khm Khmer |
|
629 kho kho Khotanese |
|
630 kik kik Kikuyu |
|
631 kin kin Kinyarwanda |
|
632 kir kir Kirghiz |
|
633 kmb kmb Kimbundu |
|
634 kok kok Konkani |
|
635 kom kom Komi |
|
636 kon kon Kongo |
|
637 kor kor Korean |
|
638 kos kos Kosraean |
|
639 kpe kpe Kpelle |
|
640 kro kro Kru |
|
641 kru kru Kurukh |
|
642 kua kua Kuanyama |
|
643 kum kum Kumyk |
|
644 kur kur Kurdish |
|
645 kut kut Kutenai |
|
646 lad lad Ladino |
|
647 lah lah Lahnda |
|
648 lam lam Lamba |
|
649 lao lao Lao |
|
650 lat lat Latin |
|
651 lav lav Latvian |
|
652 lez lez Lezghian |
|
653 lin lin Lingala |
|
654 lit lit Lithuanian |
|
655 lol lol Mongo |
|
656 loz loz Lozi |
|
657 ltz ltz Letzeburgesch |
|
658 lua lua Luba-Lulua |
|
659 lub lub Luba-Katanga |
|
660 lug lug Ganda |
|
661 lui lui Luiseno |
|
662 lun lun Lunda |
|
663 luo luo Luo (Kenya and Tanzania) |
|
664 lus lus Lushai |
|
665 mad mad Madurese |
|
666 mag mag Magahi |
|
667 mah mah Marshall |
|
668 mai mai Maithili |
|
669 mak mak Makasar |
|
670 mal mal Malayalam |
|
671 man man Mandingo |
|
672 map map Austronesian (Other) |
|
673 mar mar Marathi |
|
674 mas mas Masai |
|
675 mdr mdr Mandar |
|
676 men men Mende |
|
677 mga mga Irish-Middle (900-1200) |
|
678 mic mic Micmac |
|
679 min min Minangkabau |
|
680 mis mis Miscellaneous languages |
|
681 mkd mac Macedonian |
|
682 mkh mkh Mon-Khmer (Other) |
|
683 mlg mlg Malagasy |
|
684 mlt mlt Maltese |
|
685 mni mni Manipuri |
|
686 mno mno Manobo languages |
|
687 moh moh Mohawk |
|
688 mol mol Moldavian |
|
689 mon mon Mongolian |
|
690 mos mos Mossi |
|
691 mri mao Maori |
|
692 msa may Malay |
|
693 mul mul Multiple languages |
|
694 mun mun Munda languages |
|
695 mus mus Creek |
|
696 mwr mwr Marwari |
|
697 mya bur Burmese |
|
698 myn myn Mayan languages |
|
699 nah nah Nahuatl |
|
700 nai nai North American Indian (Other) |
|
701 nau nau Nauru |
|
702 nav nav Navajo |
|
703 nbl nbl Ndebele, South |
|
704 nde nde Ndebele, North |
|
705 ndo ndo Ndonga |
|
706 nep nep Nepali |
|
707 new new Newari |
|
708 nia nia Nias |
|
709 nic nic Niger-Kordofanian (Other) |
|
710 niu niu Niuean |
|
711 nld dut Dutch |
|
712 non non Norse, Old |
|
713 nor nor Norwegian |
|
714 nso nso Sohto, Northern |
|
715 nub nub Nubian languages |
|
716 nya nya Nyanja |
|
717 nym nym Nyamwezi |
|
718 nyn nyn Nyankole |
|
719 nyo nyo Nyoro |
|
720 nzi nzi Nzima |
|
721 oci oci Occitan (post 1500) |
|
722 oji oji Ojibwa |
|
723 ori ori Oriya |
|
724 orm orm Oromo |
|
725 osa osa Osage |
|
726 oss oss Ossetic |
|
727 ota ota Turkish, Ottoman (1500-1928) |
|
728 oto oto Otomian languages |
|
729 paa paa Papuan (Other) |
|
730 pag pag Pangasinan |
|
731 pal pal Pahlavi |
|
732 pam pam Pampanga |
|
733 pan pan Panjabi |
|
734 pap pap Papiamento |
|
735 pau pau Palauan |
|
736 peo peo Persian, Old (ca. 600-400 B.C.) |
|
737 phi phi Philippine (Other) |
|
738 phn phn Phoenician |
|
739 pli pli Pali |
|
740 pol pol Polish |
|
741 pon pon Pohnpeian |
|
742 por por Portuguese |
|
743 pra pra Prakrit languages |
|
744 pro pro Provençal, Old (to 1500) |
|
745 pus pus Pushto |
|
746 qaa-qtz qaa-qtz Reserved for local use |
|
747 que que Quechua |
|
748 raj raj Rajasthani |
|
749 rap rap Rapanui |
|
750 rar rar Rarotongan |
|
751 roa roa Romance (Other) |
|
752 roh roh Raeto-Romance |
|
753 rom rom Romany |
|
754 ron rum Romanian |
|
755 run run Rundi |
|
756 rus rus Russian |
|
757 sad sad Sandawe |
|
758 sag sag Sango |
|
759 sah sah Yakut |
|
760 sai sai South American Indian (Other) |
|
761 sal sal Salishan languages |
|
762 sam sam Samaritan Aramaic |
|
763 san san Sanskrit |
|
764 sas sas Sasak |
|
765 sat sat Santali |
|
766 sco sco Scots |
|
767 sel sel Selkup |
|
768 sem sem Semitic (Other) |
|
769 sga sga Irish-Old (to 900) |
|
770 shn shn Shan |
|
771 sid sid Sidamo |
|
772 sin sin Sinhalese |
|
773 sio sio Siouan languages |
|
774 sit sit Sino-Tibetan (Other) |
|
775 sla sla Slavic (Other) |
|
776 slk slo Slovak |
|
777 slv slv Slovenian |
|
778 smi smi Sami languages |
|
779 smo smo Samoan |
|
780 sna sna Shona |
|
781 snd snd Sindhi |
|
782 snk snk Soninke |
|
783 sog sog Sogdian |
|
784 som som Somali |
|
785 son son Songhai |
|
786 sot sot Sotho Southern |
|
787 spa spa Spanish |
|
788 sqi alb Albanian |
|
789 srd srd Sardinian |
|
790 srp scc Serbian |
|
791 srr srr Serer |
|
792 ssa ssa Nilo-Saharan (Other) |
|
793 ssw ssw Swati |
|
794 suk suk Sukuma |
|
795 sun sun Sundanese |
|
796 sus sus Susu |
|
797 sux sux Sumerian |
|
798 swa swa Swahili |
|
799 swe swe Swedish |
|
800 syr syr Syriac |
|
801 tah tah Tahitian |
|
802 tai tai Tai (Other) |
|
803 tam tam Tamil |
|
804 tat tat Tatar |
|
805 tel tel Telugu |
|
806 tem tem Timne |
|
807 ter ter Tereno |
|
808 tet tet Tetum |
|
809 tgk tgk Tajik |
|
810 tgl tgl Tagalog |
|
811 tha tha Thai |
|
812 tig tig Tigre |
|
813 tir tir Tigrinya |
|
814 tiv tiv Tiv |
|
815 tkl tkl Tokelau |
|
816 tli tli Tlingit |
|
817 tmh tmh Tamashek |
|
818 tog tog Tonga (Nyasa) |
|
819 ton ton Tonga (Tonga Islands) |
|
820 tpi tpi Tok Pisin |
|
821 tsi tsi Tsimshian |
|
822 tsn tsn Tswana |
|
823 tso tso Tsonga |
|
824 tuk tuk Turkmen |
|
825 tum tum Tumbuka |
|
826 tur tur Turkish |
|
827 tut tut Altaic |
|
828 tvl tvl Tuvalu |
|
829 twi twi Twi |
|
830 tyv tyv Tuvinian |
|
831 uga uga Ugaritic |
|
832 uig uig Uighur |
|
833 ukr ukr Ukrainian |
|
834 umb umb Umbundu |
|
835 und und Undetermined |
|
836 urd urd Urdu |
|
837 uzb uzb Uzbek |
|
838 vai vai Vai |
|
839 ven ven Venda |
|
840 vie vie Vietnamese |
|
841 vol vol Volapuk |
|
842 vot vot Votic |
|
843 wak wak Wakashan |
|
844 wal wal Walamo |
|
845 war war Waray |
|
846 was was Washo |
|
847 wen wen Sorbian |
|
848 wol wol Wolof |
|
849 xho xho Xhosa |
|
850 yao yao Yao |
|
851 yap yap Yapese |
|
852 yid yid Yiddish |
|
853 yor yor Yoruba |
|
854 ypk ypk Yupik |
|
855 zap zap Zapotec |
|
856 zen zen Zenaga |
|
857 zha zha Zhuang |
|
858 zho chi Chinese |
|
859 znd znd Zande |
|
860 zul zul Zulu |
|
861 zun zun Zuni |
|
862 |
|
863 */ |