| /* == Start of generated table == */ |
| /* |
| * The following table is generated by running: |
| * |
| * ./gen-tag-table.py languagetags language-subtag-registry |
| * |
| * on files with these headers: |
| * |
| * <meta name="updated_at" content="2021-09-02 09:40 PM" /> |
| * File-Date: 2021-08-06 |
| */ |
| |
| #ifndef HB_OT_TAG_TABLE_HH |
| #define HB_OT_TAG_TABLE_HH |
| |
| static const LangTag ot_languages[] = { |
| {"aa", HB_TAG('A','F','R',' ')}, /* Afar */ |
| {"aae", HB_TAG('S','Q','I',' ')}, /* Arbëreshë Albanian -> Albanian */ |
| {"aao", HB_TAG('A','R','A',' ')}, /* Algerian Saharan Arabic -> Arabic */ |
| {"aat", HB_TAG('S','Q','I',' ')}, /* Arvanitika Albanian -> Albanian */ |
| {"ab", HB_TAG('A','B','K',' ')}, /* Abkhazian */ |
| {"aba", HB_TAG_NONE }, /* Abé != Abaza */ |
| {"abh", HB_TAG('A','R','A',' ')}, /* Tajiki Arabic -> Arabic */ |
| {"abq", HB_TAG('A','B','A',' ')}, /* Abaza */ |
| {"abs", HB_TAG('C','P','P',' ')}, /* Ambonese Malay -> Creoles */ |
| {"abv", HB_TAG('A','R','A',' ')}, /* Baharna Arabic -> Arabic */ |
| {"acf", HB_TAG('F','A','N',' ')}, /* Saint Lucian Creole French -> French Antillean */ |
| {"acf", HB_TAG('C','P','P',' ')}, /* Saint Lucian Creole French -> Creoles */ |
| /*{"ach", HB_TAG('A','C','H',' ')},*/ /* Acoli -> Acholi */ |
| {"acm", HB_TAG('A','R','A',' ')}, /* Mesopotamian Arabic -> Arabic */ |
| {"acq", HB_TAG('A','R','A',' ')}, /* Ta'izzi-Adeni Arabic -> Arabic */ |
| {"acr", HB_TAG('A','C','R',' ')}, /* Achi */ |
| {"acr", HB_TAG('M','Y','N',' ')}, /* Achi -> Mayan */ |
| {"acw", HB_TAG('A','R','A',' ')}, /* Hijazi Arabic -> Arabic */ |
| {"acx", HB_TAG('A','R','A',' ')}, /* Omani Arabic -> Arabic */ |
| {"acy", HB_TAG('A','R','A',' ')}, /* Cypriot Arabic -> Arabic */ |
| {"ada", HB_TAG('D','N','G',' ')}, /* Adangme -> Dangme */ |
| {"adf", HB_TAG('A','R','A',' ')}, /* Dhofari Arabic -> Arabic */ |
| {"adp", HB_TAG('D','Z','N',' ')}, /* Adap (retired code) -> Dzongkha */ |
| /*{"ady", HB_TAG('A','D','Y',' ')},*/ /* Adyghe */ |
| {"aeb", HB_TAG('A','R','A',' ')}, /* Tunisian Arabic -> Arabic */ |
| {"aec", HB_TAG('A','R','A',' ')}, /* Saidi Arabic -> Arabic */ |
| {"af", HB_TAG('A','F','K',' ')}, /* Afrikaans */ |
| {"afb", HB_TAG('A','R','A',' ')}, /* Gulf Arabic -> Arabic */ |
| {"afk", HB_TAG_NONE }, /* Nanubae != Afrikaans */ |
| {"afs", HB_TAG('C','P','P',' ')}, /* Afro-Seminole Creole -> Creoles */ |
| {"agu", HB_TAG('M','Y','N',' ')}, /* Aguacateco -> Mayan */ |
| {"agw", HB_TAG_NONE }, /* Kahua != Agaw */ |
| {"ahg", HB_TAG('A','G','W',' ')}, /* Qimant -> Agaw */ |
| {"aht", HB_TAG('A','T','H',' ')}, /* Ahtena -> Athapaskan */ |
| {"aig", HB_TAG('C','P','P',' ')}, /* Antigua and Barbuda Creole English -> Creoles */ |
| {"aii", HB_TAG('S','W','A',' ')}, /* Assyrian Neo-Aramaic -> Swadaya Aramaic */ |
| {"aii", HB_TAG('S','Y','R',' ')}, /* Assyrian Neo-Aramaic -> Syriac */ |
| /*{"aio", HB_TAG('A','I','O',' ')},*/ /* Aiton */ |
| {"aiw", HB_TAG('A','R','I',' ')}, /* Aari */ |
| {"ajp", HB_TAG('A','R','A',' ')}, /* South Levantine Arabic -> Arabic */ |
| {"ak", HB_TAG('A','K','A',' ')}, /* Akan [macrolanguage] */ |
| {"akb", HB_TAG('A','K','B',' ')}, /* Batak Angkola */ |
| {"akb", HB_TAG('B','T','K',' ')}, /* Batak Angkola -> Batak */ |
| {"aln", HB_TAG('S','Q','I',' ')}, /* Gheg Albanian -> Albanian */ |
| {"als", HB_TAG('S','Q','I',' ')}, /* Tosk Albanian -> Albanian */ |
| /*{"alt", HB_TAG('A','L','T',' ')},*/ /* Southern Altai -> Altai */ |
| {"am", HB_TAG('A','M','H',' ')}, /* Amharic */ |
| {"amf", HB_TAG('H','B','N',' ')}, /* Hamer-Banna -> Hammer-Banna */ |
| {"amw", HB_TAG('S','Y','R',' ')}, /* Western Neo-Aramaic -> Syriac */ |
| {"an", HB_TAG('A','R','G',' ')}, /* Aragonese */ |
| /*{"ang", HB_TAG('A','N','G',' ')},*/ /* Old English (ca. 450-1100) -> Anglo-Saxon */ |
| {"aoa", HB_TAG('C','P','P',' ')}, /* Angolar -> Creoles */ |
| {"apa", HB_TAG('A','T','H',' ')}, /* Apache [family] -> Athapaskan */ |
| {"apc", HB_TAG('A','R','A',' ')}, /* North Levantine Arabic -> Arabic */ |
| {"apd", HB_TAG('A','R','A',' ')}, /* Sudanese Arabic -> Arabic */ |
| {"apj", HB_TAG('A','T','H',' ')}, /* Jicarilla Apache -> Athapaskan */ |
| {"apk", HB_TAG('A','T','H',' ')}, /* Kiowa Apache -> Athapaskan */ |
| {"apl", HB_TAG('A','T','H',' ')}, /* Lipan Apache -> Athapaskan */ |
| {"apm", HB_TAG('A','T','H',' ')}, /* Mescalero-Chiricahua Apache -> Athapaskan */ |
| {"apw", HB_TAG('A','T','H',' ')}, /* Western Apache -> Athapaskan */ |
| {"ar", HB_TAG('A','R','A',' ')}, /* Arabic [macrolanguage] */ |
| {"arb", HB_TAG('A','R','A',' ')}, /* Standard Arabic -> Arabic */ |
| {"ari", HB_TAG_NONE }, /* Arikara != Aari */ |
| {"ark", HB_TAG_NONE }, /* Arikapú != Rakhine */ |
| {"arn", HB_TAG('M','A','P',' ')}, /* Mapudungun */ |
| {"arq", HB_TAG('A','R','A',' ')}, /* Algerian Arabic -> Arabic */ |
| {"ars", HB_TAG('A','R','A',' ')}, /* Najdi Arabic -> Arabic */ |
| {"ary", HB_TAG('M','O','R',' ')}, /* Moroccan Arabic -> Moroccan */ |
| {"ary", HB_TAG('A','R','A',' ')}, /* Moroccan Arabic -> Arabic */ |
| {"arz", HB_TAG('A','R','A',' ')}, /* Egyptian Arabic -> Arabic */ |
| {"as", HB_TAG('A','S','M',' ')}, /* Assamese */ |
| /*{"ast", HB_TAG('A','S','T',' ')},*/ /* Asturian */ |
| /*{"ath", HB_TAG('A','T','H',' ')},*/ /* Athapascan [family] -> Athapaskan */ |
| {"atj", HB_TAG('R','C','R',' ')}, /* Atikamekw -> R-Cree */ |
| {"atv", HB_TAG('A','L','T',' ')}, /* Northern Altai -> Altai */ |
| {"auj", HB_TAG('B','B','R',' ')}, /* Awjilah -> Berber */ |
| {"auz", HB_TAG('A','R','A',' ')}, /* Uzbeki Arabic -> Arabic */ |
| {"av", HB_TAG('A','V','R',' ')}, /* Avaric -> Avar */ |
| {"avl", HB_TAG('A','R','A',' ')}, /* Eastern Egyptian Bedawi Arabic -> Arabic */ |
| /*{"avn", HB_TAG('A','V','N',' ')},*/ /* Avatime */ |
| /*{"awa", HB_TAG('A','W','A',' ')},*/ /* Awadhi */ |
| {"ay", HB_TAG('A','Y','M',' ')}, /* Aymara [macrolanguage] */ |
| {"ayc", HB_TAG('A','Y','M',' ')}, /* Southern Aymara -> Aymara */ |
| {"ayh", HB_TAG('A','R','A',' ')}, /* Hadrami Arabic -> Arabic */ |
| {"ayl", HB_TAG('A','R','A',' ')}, /* Libyan Arabic -> Arabic */ |
| {"ayn", HB_TAG('A','R','A',' ')}, /* Sanaani Arabic -> Arabic */ |
| {"ayp", HB_TAG('A','R','A',' ')}, /* North Mesopotamian Arabic -> Arabic */ |
| {"ayr", HB_TAG('A','Y','M',' ')}, /* Central Aymara -> Aymara */ |
| {"az", HB_TAG('A','Z','E',' ')}, /* Azerbaijani [macrolanguage] */ |
| {"azb", HB_TAG('A','Z','B',' ')}, /* South Azerbaijani -> Torki */ |
| {"azb", HB_TAG('A','Z','E',' ')}, /* South Azerbaijani -> Azerbaijani */ |
| {"azd", HB_TAG('N','A','H',' ')}, /* Eastern Durango Nahuatl -> Nahuatl */ |
| {"azj", HB_TAG('A','Z','E',' ')}, /* North Azerbaijani -> Azerbaijani */ |
| {"azn", HB_TAG('N','A','H',' ')}, /* Western Durango Nahuatl -> Nahuatl */ |
| {"azz", HB_TAG('N','A','H',' ')}, /* Highland Puebla Nahuatl -> Nahuatl */ |
| {"ba", HB_TAG('B','S','H',' ')}, /* Bashkir */ |
| {"bad", HB_TAG('B','A','D','0')}, /* Banda [family] */ |
| {"bag", HB_TAG_NONE }, /* Tuki != Baghelkhandi */ |
| {"bah", HB_TAG('C','P','P',' ')}, /* Bahamas Creole English -> Creoles */ |
| {"bai", HB_TAG('B','M','L',' ')}, /* Bamileke [family] */ |
| {"bal", HB_TAG('B','L','I',' ')}, /* Baluchi [macrolanguage] */ |
| /*{"ban", HB_TAG('B','A','N',' ')},*/ /* Balinese */ |
| /*{"bar", HB_TAG('B','A','R',' ')},*/ /* Bavarian */ |
| {"bau", HB_TAG_NONE }, /* Bada (Nigeria) != Baulé */ |
| {"bbc", HB_TAG('B','B','C',' ')}, /* Batak Toba */ |
| {"bbc", HB_TAG('B','T','K',' ')}, /* Batak Toba -> Batak */ |
| {"bbj", HB_TAG('B','M','L',' ')}, /* Ghomálá' -> Bamileke */ |
| {"bbp", HB_TAG('B','A','D','0')}, /* West Central Banda -> Banda */ |
| {"bbr", HB_TAG_NONE }, /* Girawa != Berber */ |
| {"bbz", HB_TAG('A','R','A',' ')}, /* Babalia Creole Arabic (retired code) -> Arabic */ |
| {"bcc", HB_TAG('B','L','I',' ')}, /* Southern Balochi -> Baluchi */ |
| {"bch", HB_TAG_NONE }, /* Bariai != Bench */ |
| {"bci", HB_TAG('B','A','U',' ')}, /* Baoulé -> Baulé */ |
| {"bcl", HB_TAG('B','I','K',' ')}, /* Central Bikol -> Bikol */ |
| {"bcq", HB_TAG('B','C','H',' ')}, /* Bench */ |
| {"bcr", HB_TAG('A','T','H',' ')}, /* Babine -> Athapaskan */ |
| /*{"bdy", HB_TAG('B','D','Y',' ')},*/ /* Bandjalang */ |
| {"be", HB_TAG('B','E','L',' ')}, /* Belarusian -> Belarussian */ |
| {"bea", HB_TAG('A','T','H',' ')}, /* Beaver -> Athapaskan */ |
| {"beb", HB_TAG('B','T','I',' ')}, /* Bebele -> Beti */ |
| /*{"bem", HB_TAG('B','E','M',' ')},*/ /* Bemba (Zambia) */ |
| {"ber", HB_TAG('B','B','R',' ')}, /* Berber [family] */ |
| {"bew", HB_TAG('C','P','P',' ')}, /* Betawi -> Creoles */ |
| {"bfl", HB_TAG('B','A','D','0')}, /* Banda-Ndélé -> Banda */ |
| {"bfq", HB_TAG('B','A','D',' ')}, /* Badaga */ |
| {"bft", HB_TAG('B','L','T',' ')}, /* Balti */ |
| {"bfu", HB_TAG('L','A','H',' ')}, /* Gahri -> Lahuli */ |
| {"bfy", HB_TAG('B','A','G',' ')}, /* Bagheli -> Baghelkhandi */ |
| {"bg", HB_TAG('B','G','R',' ')}, /* Bulgarian */ |
| /*{"bgc", HB_TAG('B','G','C',' ')},*/ /* Haryanvi */ |
| {"bgn", HB_TAG('B','L','I',' ')}, /* Western Balochi -> Baluchi */ |
| {"bgp", HB_TAG('B','L','I',' ')}, /* Eastern Balochi -> Baluchi */ |
| {"bgq", HB_TAG('B','G','Q',' ')}, /* Bagri */ |
| {"bgq", HB_TAG('R','A','J',' ')}, /* Bagri -> Rajasthani */ |
| {"bgr", HB_TAG('Q','I','N',' ')}, /* Bawm Chin -> Chin */ |
| {"bhb", HB_TAG('B','H','I',' ')}, /* Bhili */ |
| /*{"bhi", HB_TAG('B','H','I',' ')},*/ /* Bhilali -> Bhili */ |
| {"bhk", HB_TAG('B','I','K',' ')}, /* Albay Bicolano (retired code) -> Bikol */ |
| /*{"bho", HB_TAG('B','H','O',' ')},*/ /* Bhojpuri */ |
| {"bhr", HB_TAG('M','L','G',' ')}, /* Bara Malagasy -> Malagasy */ |
| {"bi", HB_TAG('B','I','S',' ')}, /* Bislama */ |
| {"bi", HB_TAG('C','P','P',' ')}, /* Bislama -> Creoles */ |
| /*{"bik", HB_TAG('B','I','K',' ')},*/ /* Bikol [macrolanguage] */ |
| {"bil", HB_TAG_NONE }, /* Bile != Bilen */ |
| {"bin", HB_TAG('E','D','O',' ')}, /* Edo */ |
| {"biu", HB_TAG('Q','I','N',' ')}, /* Biete -> Chin */ |
| /*{"bjj", HB_TAG('B','J','J',' ')},*/ /* Kanauji */ |
| {"bjn", HB_TAG('M','L','Y',' ')}, /* Banjar -> Malay */ |
| {"bjo", HB_TAG('B','A','D','0')}, /* Mid-Southern Banda -> Banda */ |
| {"bjq", HB_TAG('M','L','G',' ')}, /* Southern Betsimisaraka Malagasy (retired code) -> Malagasy */ |
| {"bjs", HB_TAG('C','P','P',' ')}, /* Bajan -> Creoles */ |
| {"bjt", HB_TAG('B','L','N',' ')}, /* Balanta-Ganja -> Balante */ |
| {"bkf", HB_TAG_NONE }, /* Beeke != Blackfoot */ |
| {"bko", HB_TAG('B','M','L',' ')}, /* Kwa' -> Bamileke */ |
| {"bla", HB_TAG('B','K','F',' ')}, /* Siksika -> Blackfoot */ |
| {"ble", HB_TAG('B','L','N',' ')}, /* Balanta-Kentohe -> Balante */ |
| {"blg", HB_TAG('I','B','A',' ')}, /* Balau (retired code) -> Iban */ |
| {"bli", HB_TAG_NONE }, /* Bolia != Baluchi */ |
| {"blk", HB_TAG('B','L','K',' ')}, /* Pa’o Karen */ |
| {"blk", HB_TAG('K','R','N',' ')}, /* Pa'o Karen -> Karen */ |
| {"bln", HB_TAG('B','I','K',' ')}, /* Southern Catanduanes Bikol -> Bikol */ |
| {"blt", HB_TAG_NONE }, /* Tai Dam != Balti */ |
| {"bm", HB_TAG('B','M','B',' ')}, /* Bambara (Bamanankan) */ |
| {"bmb", HB_TAG_NONE }, /* Bembe != Bambara (Bamanankan) */ |
| {"bml", HB_TAG_NONE }, /* Bomboli != Bamileke */ |
| {"bmm", HB_TAG('M','L','G',' ')}, /* Northern Betsimisaraka Malagasy -> Malagasy */ |
| {"bn", HB_TAG('B','E','N',' ')}, /* Bengali */ |
| {"bo", HB_TAG('T','I','B',' ')}, /* Tibetan */ |
| {"bpd", HB_TAG('B','A','D','0')}, /* Banda-Banda -> Banda */ |
| {"bpl", HB_TAG('C','P','P',' ')}, /* Broome Pearling Lugger Pidgin -> Creoles */ |
| {"bpq", HB_TAG('C','P','P',' ')}, /* Banda Malay -> Creoles */ |
| /*{"bpy", HB_TAG('B','P','Y',' ')},*/ /* Bishnupriya -> Bishnupriya Manipuri */ |
| {"bqi", HB_TAG('L','R','C',' ')}, /* Bakhtiari -> Luri */ |
| {"bqk", HB_TAG('B','A','D','0')}, /* Banda-Mbrès -> Banda */ |
| {"br", HB_TAG('B','R','E',' ')}, /* Breton */ |
| {"bra", HB_TAG('B','R','I',' ')}, /* Braj -> Braj Bhasha */ |
| {"brc", HB_TAG('C','P','P',' ')}, /* Berbice Creole Dutch -> Creoles */ |
| /*{"brh", HB_TAG('B','R','H',' ')},*/ /* Brahui */ |
| {"bri", HB_TAG_NONE }, /* Mokpwe != Braj Bhasha */ |
| {"brm", HB_TAG_NONE }, /* Barambu != Burmese */ |
| /*{"brx", HB_TAG('B','R','X',' ')},*/ /* Bodo (India) */ |
| {"bs", HB_TAG('B','O','S',' ')}, /* Bosnian */ |
| {"bsh", HB_TAG_NONE }, /* Kati != Bashkir */ |
| /*{"bsk", HB_TAG('B','S','K',' ')},*/ /* Burushaski */ |
| {"btb", HB_TAG('B','T','I',' ')}, /* Beti (Cameroon) (retired code) */ |
| {"btd", HB_TAG('B','T','D',' ')}, /* Batak Dairi (Pakpak) */ |
| {"btd", HB_TAG('B','T','K',' ')}, /* Batak Dairi -> Batak */ |
| {"bti", HB_TAG_NONE }, /* Burate != Beti */ |
| {"btj", HB_TAG('M','L','Y',' ')}, /* Bacanese Malay -> Malay */ |
| /*{"btk", HB_TAG('B','T','K',' ')},*/ /* Batak [family] */ |
| {"btm", HB_TAG('B','T','M',' ')}, /* Batak Mandailing */ |
| {"btm", HB_TAG('B','T','K',' ')}, /* Batak Mandailing -> Batak */ |
| {"bto", HB_TAG('B','I','K',' ')}, /* Rinconada Bikol -> Bikol */ |
| {"bts", HB_TAG('B','T','S',' ')}, /* Batak Simalungun */ |
| {"bts", HB_TAG('B','T','K',' ')}, /* Batak Simalungun -> Batak */ |
| {"btx", HB_TAG('B','T','X',' ')}, /* Batak Karo */ |
| {"btx", HB_TAG('B','T','K',' ')}, /* Batak Karo -> Batak */ |
| {"btz", HB_TAG('B','T','Z',' ')}, /* Batak Alas-Kluet */ |
| {"btz", HB_TAG('B','T','K',' ')}, /* Batak Alas-Kluet -> Batak */ |
| /*{"bug", HB_TAG('B','U','G',' ')},*/ /* Buginese -> Bugis */ |
| {"bum", HB_TAG('B','T','I',' ')}, /* Bulu (Cameroon) -> Beti */ |
| {"bve", HB_TAG('M','L','Y',' ')}, /* Berau Malay -> Malay */ |
| {"bvu", HB_TAG('M','L','Y',' ')}, /* Bukit Malay -> Malay */ |
| {"bwe", HB_TAG('K','R','N',' ')}, /* Bwe Karen -> Karen */ |
| {"bxk", HB_TAG('L','U','H',' ')}, /* Bukusu -> Luyia */ |
| {"bxo", HB_TAG('C','P','P',' ')}, /* Barikanchi -> Creoles */ |
| {"bxp", HB_TAG('B','T','I',' ')}, /* Bebil -> Beti */ |
| {"bxr", HB_TAG('R','B','U',' ')}, /* Russia Buriat -> Russian Buriat */ |
| {"byn", HB_TAG('B','I','L',' ')}, /* Bilin -> Bilen */ |
| {"byv", HB_TAG('B','Y','V',' ')}, /* Medumba */ |
| {"byv", HB_TAG('B','M','L',' ')}, /* Medumba -> Bamileke */ |
| {"bzc", HB_TAG('M','L','G',' ')}, /* Southern Betsimisaraka Malagasy -> Malagasy */ |
| {"bzj", HB_TAG('C','P','P',' ')}, /* Belize Kriol English -> Creoles */ |
| {"bzk", HB_TAG('C','P','P',' ')}, /* Nicaragua Creole English -> Creoles */ |
| {"ca", HB_TAG('C','A','T',' ')}, /* Catalan */ |
| {"caa", HB_TAG('M','Y','N',' ')}, /* Chortí -> Mayan */ |
| {"cac", HB_TAG('M','Y','N',' ')}, /* Chuj -> Mayan */ |
| {"caf", HB_TAG('C','R','R',' ')}, /* Southern Carrier -> Carrier */ |
| {"caf", HB_TAG('A','T','H',' ')}, /* Southern Carrier -> Athapaskan */ |
| {"cak", HB_TAG('C','A','K',' ')}, /* Kaqchikel */ |
| {"cak", HB_TAG('M','Y','N',' ')}, /* Kaqchikel -> Mayan */ |
| {"cbk", HB_TAG('C','B','K',' ')}, /* Chavacano -> Zamboanga Chavacano */ |
| {"cbk", HB_TAG('C','P','P',' ')}, /* Chavacano -> Creoles */ |
| {"cbl", HB_TAG('Q','I','N',' ')}, /* Bualkhaw Chin -> Chin */ |
| {"ccl", HB_TAG('C','P','P',' ')}, /* Cutchi-Swahili -> Creoles */ |
| {"ccm", HB_TAG('C','P','P',' ')}, /* Malaccan Creole Malay -> Creoles */ |
| {"cco", HB_TAG('C','C','H','N')}, /* Comaltepec Chinantec -> Chinantec */ |
| {"ccq", HB_TAG('A','R','K',' ')}, /* Chaungtha (retired code) -> Rakhine */ |
| {"cdo", HB_TAG('Z','H','S',' ')}, /* Min Dong Chinese -> Chinese, Simplified */ |
| {"ce", HB_TAG('C','H','E',' ')}, /* Chechen */ |
| /*{"ceb", HB_TAG('C','E','B',' ')},*/ /* Cebuano */ |
| {"cek", HB_TAG('Q','I','N',' ')}, /* Eastern Khumi Chin -> Chin */ |
| {"cey", HB_TAG('Q','I','N',' ')}, /* Ekai Chin -> Chin */ |
| {"cfm", HB_TAG('H','A','L',' ')}, /* Halam (Falam Chin) */ |
| {"cfm", HB_TAG('Q','I','N',' ')}, /* Falam Chin -> Chin */ |
| /*{"cgg", HB_TAG('C','G','G',' ')},*/ /* Chiga */ |
| {"ch", HB_TAG('C','H','A',' ')}, /* Chamorro */ |
| {"chf", HB_TAG('M','Y','N',' ')}, /* Tabasco Chontal -> Mayan */ |
| {"chg", HB_TAG_NONE }, /* Chagatai != Chaha Gurage */ |
| {"chh", HB_TAG_NONE }, /* Chinook != Chattisgarhi */ |
| {"chj", HB_TAG('C','C','H','N')}, /* Ojitlán Chinantec -> Chinantec */ |
| {"chk", HB_TAG('C','H','K','0')}, /* Chuukese */ |
| {"chn", HB_TAG('C','P','P',' ')}, /* Chinook jargon -> Creoles */ |
| /*{"cho", HB_TAG('C','H','O',' ')},*/ /* Choctaw */ |
| {"chp", HB_TAG('C','H','P',' ')}, /* Chipewyan */ |
| {"chp", HB_TAG('S','A','Y',' ')}, /* Chipewyan -> Sayisi */ |
| {"chp", HB_TAG('A','T','H',' ')}, /* Chipewyan -> Athapaskan */ |
| {"chq", HB_TAG('C','C','H','N')}, /* Quiotepec Chinantec -> Chinantec */ |
| /*{"chr", HB_TAG('C','H','R',' ')},*/ /* Cherokee */ |
| /*{"chy", HB_TAG('C','H','Y',' ')},*/ /* Cheyenne */ |
| {"chz", HB_TAG('C','C','H','N')}, /* Ozumacín Chinantec -> Chinantec */ |
| {"ciw", HB_TAG('O','J','B',' ')}, /* Chippewa -> Ojibway */ |
| /*{"cja", HB_TAG('C','J','A',' ')},*/ /* Western Cham */ |
| /*{"cjm", HB_TAG('C','J','M',' ')},*/ /* Eastern Cham */ |
| {"cjy", HB_TAG('Z','H','S',' ')}, /* Jinyu Chinese -> Chinese, Simplified */ |
| {"cka", HB_TAG('Q','I','N',' ')}, /* Khumi Awa Chin (retired code) -> Chin */ |
| {"ckb", HB_TAG('K','U','R',' ')}, /* Central Kurdish -> Kurdish */ |
| {"ckn", HB_TAG('Q','I','N',' ')}, /* Kaang Chin -> Chin */ |
| {"cks", HB_TAG('C','P','P',' ')}, /* Tayo -> Creoles */ |
| {"ckt", HB_TAG('C','H','K',' ')}, /* Chukot -> Chukchi */ |
| {"ckz", HB_TAG('M','Y','N',' ')}, /* Cakchiquel-Quiché Mixed Language -> Mayan */ |
| {"clc", HB_TAG('A','T','H',' ')}, /* Chilcotin -> Athapaskan */ |
| {"cld", HB_TAG('S','Y','R',' ')}, /* Chaldean Neo-Aramaic -> Syriac */ |
| {"cle", HB_TAG('C','C','H','N')}, /* Lealao Chinantec -> Chinantec */ |
| {"clj", HB_TAG('Q','I','N',' ')}, /* Laitu Chin -> Chin */ |
| {"clt", HB_TAG('Q','I','N',' ')}, /* Lautu Chin -> Chin */ |
| {"cmn", HB_TAG('Z','H','S',' ')}, /* Mandarin Chinese -> Chinese, Simplified */ |
| {"cmr", HB_TAG('Q','I','N',' ')}, /* Mro-Khimi Chin -> Chin */ |
| {"cnb", HB_TAG('Q','I','N',' ')}, /* Chinbon Chin -> Chin */ |
| {"cnh", HB_TAG('Q','I','N',' ')}, /* Hakha Chin -> Chin */ |
| {"cnk", HB_TAG('Q','I','N',' ')}, /* Khumi Chin -> Chin */ |
| {"cnl", HB_TAG('C','C','H','N')}, /* Lalana Chinantec -> Chinantec */ |
| {"cnp", HB_TAG('Z','H','S',' ')}, /* Northern Ping Chinese -> Chinese, Simplified */ |
| {"cnr", HB_TAG('S','R','B',' ')}, /* Montenegrin -> Serbian */ |
| {"cnt", HB_TAG('C','C','H','N')}, /* Tepetotutla Chinantec -> Chinantec */ |
| {"cnu", HB_TAG('B','B','R',' ')}, /* Chenoua -> Berber */ |
| {"cnw", HB_TAG('Q','I','N',' ')}, /* Ngawn Chin -> Chin */ |
| {"co", HB_TAG('C','O','S',' ')}, /* Corsican */ |
| {"coa", HB_TAG('M','L','Y',' ')}, /* Cocos Islands Malay -> Malay */ |
| {"cob", HB_TAG('M','Y','N',' ')}, /* Chicomuceltec -> Mayan */ |
| /*{"cop", HB_TAG('C','O','P',' ')},*/ /* Coptic */ |
| {"coq", HB_TAG('A','T','H',' ')}, /* Coquille -> Athapaskan */ |
| {"cpa", HB_TAG('C','C','H','N')}, /* Palantla Chinantec -> Chinantec */ |
| {"cpe", HB_TAG('C','P','P',' ')}, /* English-based creoles and pidgins [family] -> Creoles */ |
| {"cpf", HB_TAG('C','P','P',' ')}, /* French-based creoles and pidgins [family] -> Creoles */ |
| {"cpi", HB_TAG('C','P','P',' ')}, /* Chinese Pidgin English -> Creoles */ |
| /*{"cpp", HB_TAG('C','P','P',' ')},*/ /* Portuguese-based creoles and pidgins [family] -> Creoles */ |
| {"cpx", HB_TAG('Z','H','S',' ')}, /* Pu-Xian Chinese -> Chinese, Simplified */ |
| {"cqd", HB_TAG('H','M','N',' ')}, /* Chuanqiandian Cluster Miao -> Hmong */ |
| {"cqu", HB_TAG('Q','U','H',' ')}, /* Chilean Quechua (retired code) -> Quechua (Bolivia) */ |
| {"cqu", HB_TAG('Q','U','Z',' ')}, /* Chilean Quechua (retired code) -> Quechua */ |
| {"cr", HB_TAG('C','R','E',' ')}, /* Cree [macrolanguage] */ |
| {"crh", HB_TAG('C','R','T',' ')}, /* Crimean Tatar */ |
| {"cri", HB_TAG('C','P','P',' ')}, /* Sãotomense -> Creoles */ |
| {"crj", HB_TAG('E','C','R',' ')}, /* Southern East Cree -> Eastern Cree */ |
| {"crj", HB_TAG('Y','C','R',' ')}, /* Southern East Cree -> Y-Cree */ |
| {"crj", HB_TAG('C','R','E',' ')}, /* Southern East Cree -> Cree */ |
| {"crk", HB_TAG('W','C','R',' ')}, /* Plains Cree -> West-Cree */ |
| {"crk", HB_TAG('Y','C','R',' ')}, /* Plains Cree -> Y-Cree */ |
| {"crk", HB_TAG('C','R','E',' ')}, /* Plains Cree -> Cree */ |
| {"crl", HB_TAG('E','C','R',' ')}, /* Northern East Cree -> Eastern Cree */ |
| {"crl", HB_TAG('Y','C','R',' ')}, /* Northern East Cree -> Y-Cree */ |
| {"crl", HB_TAG('C','R','E',' ')}, /* Northern East Cree -> Cree */ |
| {"crm", HB_TAG('M','C','R',' ')}, /* Moose Cree */ |
| {"crm", HB_TAG('L','C','R',' ')}, /* Moose Cree -> L-Cree */ |
| {"crm", HB_TAG('C','R','E',' ')}, /* Moose Cree -> Cree */ |
| {"crp", HB_TAG('C','P','P',' ')}, /* Creoles and pidgins [family] -> Creoles */ |
| {"crr", HB_TAG_NONE }, /* Carolina Algonquian != Carrier */ |
| {"crs", HB_TAG('C','P','P',' ')}, /* Seselwa Creole French -> Creoles */ |
| {"crt", HB_TAG_NONE }, /* Iyojwa'ja Chorote != Crimean Tatar */ |
| {"crx", HB_TAG('C','R','R',' ')}, /* Carrier */ |
| {"crx", HB_TAG('A','T','H',' ')}, /* Carrier -> Athapaskan */ |
| {"cs", HB_TAG('C','S','Y',' ')}, /* Czech */ |
| {"csa", HB_TAG('C','C','H','N')}, /* Chiltepec Chinantec -> Chinantec */ |
| /*{"csb", HB_TAG('C','S','B',' ')},*/ /* Kashubian */ |
| {"csh", HB_TAG('Q','I','N',' ')}, /* Asho Chin -> Chin */ |
| {"csj", HB_TAG('Q','I','N',' ')}, /* Songlai Chin -> Chin */ |
| {"csl", HB_TAG_NONE }, /* Chinese Sign Language != Church Slavonic */ |
| {"cso", HB_TAG('C','C','H','N')}, /* Sochiapam Chinantec -> Chinantec */ |
| {"csp", HB_TAG('Z','H','S',' ')}, /* Southern Ping Chinese -> Chinese, Simplified */ |
| {"csv", HB_TAG('Q','I','N',' ')}, /* Sumtu Chin -> Chin */ |
| {"csw", HB_TAG('N','C','R',' ')}, /* Swampy Cree -> N-Cree */ |
| {"csw", HB_TAG('N','H','C',' ')}, /* Swampy Cree -> Norway House Cree */ |
| {"csw", HB_TAG('C','R','E',' ')}, /* Swampy Cree -> Cree */ |
| {"csy", HB_TAG('Q','I','N',' ')}, /* Siyin Chin -> Chin */ |
| {"ctc", HB_TAG('A','T','H',' ')}, /* Chetco -> Athapaskan */ |
| {"ctd", HB_TAG('Q','I','N',' ')}, /* Tedim Chin -> Chin */ |
| {"cte", HB_TAG('C','C','H','N')}, /* Tepinapa Chinantec -> Chinantec */ |
| /*{"ctg", HB_TAG('C','T','G',' ')},*/ /* Chittagonian */ |
| {"cth", HB_TAG('Q','I','N',' ')}, /* Thaiphum Chin -> Chin */ |
| {"ctl", HB_TAG('C','C','H','N')}, /* Tlacoatzintepec Chinantec -> Chinantec */ |
| {"cts", HB_TAG('B','I','K',' ')}, /* Northern Catanduanes Bikol -> Bikol */ |
| /*{"ctt", HB_TAG('C','T','T',' ')},*/ /* Wayanad Chetti */ |
| {"ctu", HB_TAG('M','Y','N',' ')}, /* Chol -> Mayan */ |
| {"cu", HB_TAG('C','S','L',' ')}, /* Church Slavonic */ |
| {"cuc", HB_TAG('C','C','H','N')}, /* Usila Chinantec -> Chinantec */ |
| /*{"cuk", HB_TAG('C','U','K',' ')},*/ /* San Blas Kuna */ |
| {"cv", HB_TAG('C','H','U',' ')}, /* Chuvash */ |
| {"cvn", HB_TAG('C','C','H','N')}, /* Valle Nacional Chinantec -> Chinantec */ |
| {"cwd", HB_TAG('D','C','R',' ')}, /* Woods Cree */ |
| {"cwd", HB_TAG('T','C','R',' ')}, /* Woods Cree -> TH-Cree */ |
| {"cwd", HB_TAG('C','R','E',' ')}, /* Woods Cree -> Cree */ |
| {"cy", HB_TAG('W','E','L',' ')}, /* Welsh */ |
| {"czh", HB_TAG('Z','H','S',' ')}, /* Huizhou Chinese -> Chinese, Simplified */ |
| {"czo", HB_TAG('Z','H','S',' ')}, /* Min Zhong Chinese -> Chinese, Simplified */ |
| {"czt", HB_TAG('Q','I','N',' ')}, /* Zotung Chin -> Chin */ |
| {"da", HB_TAG('D','A','N',' ')}, /* Danish */ |
| /*{"dag", HB_TAG('D','A','G',' ')},*/ /* Dagbani */ |
| {"dao", HB_TAG('Q','I','N',' ')}, /* Daai Chin -> Chin */ |
| {"dap", HB_TAG('N','I','S',' ')}, /* Nisi (India) (retired code) */ |
| /*{"dar", HB_TAG('D','A','R',' ')},*/ /* Dargwa */ |
| /*{"dax", HB_TAG('D','A','X',' ')},*/ /* Dayi */ |
| {"dcr", HB_TAG('C','P','P',' ')}, /* Negerhollands -> Creoles */ |
| {"de", HB_TAG('D','E','U',' ')}, /* German */ |
| {"den", HB_TAG('S','L','A',' ')}, /* Slave (Athapascan) [macrolanguage] -> Slavey */ |
| {"den", HB_TAG('A','T','H',' ')}, /* Slave (Athapascan) [macrolanguage] -> Athapaskan */ |
| {"dep", HB_TAG('C','P','P',' ')}, /* Pidgin Delaware -> Creoles */ |
| {"dgo", HB_TAG('D','G','O',' ')}, /* Dogri (individual language) */ |
| {"dgo", HB_TAG('D','G','R',' ')}, /* Dogri (macrolanguage) */ |
| {"dgr", HB_TAG('A','T','H',' ')}, /* Dogrib -> Athapaskan */ |
| {"dhd", HB_TAG('M','A','W',' ')}, /* Dhundari -> Marwari */ |
| /*{"dhg", HB_TAG('D','H','G',' ')},*/ /* Dhangu */ |
| {"dhv", HB_TAG_NONE }, /* Dehu != Divehi (Dhivehi, Maldivian) (deprecated) */ |
| {"dib", HB_TAG('D','N','K',' ')}, /* South Central Dinka -> Dinka */ |
| {"dik", HB_TAG('D','N','K',' ')}, /* Southwestern Dinka -> Dinka */ |
| {"din", HB_TAG('D','N','K',' ')}, /* Dinka [macrolanguage] */ |
| {"dip", HB_TAG('D','N','K',' ')}, /* Northeastern Dinka -> Dinka */ |
| {"diq", HB_TAG('D','I','Q',' ')}, /* Dimli */ |
| {"diq", HB_TAG('Z','Z','A',' ')}, /* Dimli -> Zazaki */ |
| {"diw", HB_TAG('D','N','K',' ')}, /* Northwestern Dinka -> Dinka */ |
| {"dje", HB_TAG('D','J','R',' ')}, /* Zarma */ |
| {"djk", HB_TAG('C','P','P',' ')}, /* Eastern Maroon Creole -> Creoles */ |
| {"djr", HB_TAG('D','J','R','0')}, /* Djambarrpuyngu */ |
| {"dks", HB_TAG('D','N','K',' ')}, /* Southeastern Dinka -> Dinka */ |
| {"dng", HB_TAG('D','U','N',' ')}, /* Dungan */ |
| /*{"dnj", HB_TAG('D','N','J',' ')},*/ /* Dan */ |
| {"dnk", HB_TAG_NONE }, /* Dengka != Dinka */ |
| {"doi", HB_TAG('D','G','R',' ')}, /* Dogri (macrolanguage) [macrolanguage] */ |
| {"drh", HB_TAG('M','N','G',' ')}, /* Darkhat (retired code) -> Mongolian */ |
| {"dri", HB_TAG_NONE }, /* C'Lela != Dari */ |
| {"drw", HB_TAG('D','R','I',' ')}, /* Darwazi (retired code) -> Dari */ |
| {"drw", HB_TAG('F','A','R',' ')}, /* Darwazi (retired code) -> Persian */ |
| {"dsb", HB_TAG('L','S','B',' ')}, /* Lower Sorbian */ |
| {"dty", HB_TAG('N','E','P',' ')}, /* Dotyali -> Nepali */ |
| /*{"duj", HB_TAG('D','U','J',' ')},*/ /* Dhuwal (retired code) */ |
| {"dun", HB_TAG_NONE }, /* Dusun Deyah != Dungan */ |
| {"dup", HB_TAG('M','L','Y',' ')}, /* Duano -> Malay */ |
| {"dv", HB_TAG('D','I','V',' ')}, /* Divehi (Dhivehi, Maldivian) */ |
| {"dv", HB_TAG('D','H','V',' ')}, /* Divehi (Dhivehi, Maldivian) (deprecated) */ |
| {"dwk", HB_TAG('K','U','I',' ')}, /* Dawik Kui -> Kui */ |
| {"dwu", HB_TAG('D','U','J',' ')}, /* Dhuwal */ |
| {"dwy", HB_TAG('D','U','J',' ')}, /* Dhuwaya -> Dhuwal */ |
| {"dyu", HB_TAG('J','U','L',' ')}, /* Dyula -> Jula */ |
| {"dz", HB_TAG('D','Z','N',' ')}, /* Dzongkha */ |
| {"dzn", HB_TAG_NONE }, /* Dzando != Dzongkha */ |
| {"ecr", HB_TAG_NONE }, /* Eteocretan != Eastern Cree */ |
| {"ee", HB_TAG('E','W','E',' ')}, /* Ewe */ |
| /*{"efi", HB_TAG('E','F','I',' ')},*/ /* Efik */ |
| {"ekk", HB_TAG('E','T','I',' ')}, /* Standard Estonian -> Estonian */ |
| {"eky", HB_TAG('K','R','N',' ')}, /* Eastern Kayah -> Karen */ |
| {"el", HB_TAG('E','L','L',' ')}, /* Modern Greek (1453-) -> Greek */ |
| {"emk", HB_TAG('E','M','K',' ')}, /* Eastern Maninkakan */ |
| {"emk", HB_TAG('M','N','K',' ')}, /* Eastern Maninkakan -> Maninka */ |
| {"emy", HB_TAG('M','Y','N',' ')}, /* Epigraphic Mayan -> Mayan */ |
| {"en", HB_TAG('E','N','G',' ')}, /* English */ |
| {"enb", HB_TAG('K','A','L',' ')}, /* Markweeta -> Kalenjin */ |
| {"enf", HB_TAG('F','N','E',' ')}, /* Forest Enets */ |
| {"enh", HB_TAG('T','N','E',' ')}, /* Tundra Enets */ |
| {"eo", HB_TAG('N','T','O',' ')}, /* Esperanto */ |
| {"es", HB_TAG('E','S','P',' ')}, /* Spanish */ |
| {"esg", HB_TAG('G','O','N',' ')}, /* Aheri Gondi -> Gondi */ |
| {"esi", HB_TAG('I','P','K',' ')}, /* North Alaskan Inupiatun -> Inupiat */ |
| {"esk", HB_TAG('I','P','K',' ')}, /* Northwest Alaska Inupiatun -> Inupiat */ |
| /*{"esu", HB_TAG('E','S','U',' ')},*/ /* Central Yupik */ |
| {"et", HB_TAG('E','T','I',' ')}, /* Estonian [macrolanguage] */ |
| {"eto", HB_TAG('B','T','I',' ')}, /* Eton (Cameroon) -> Beti */ |
| {"eu", HB_TAG('E','U','Q',' ')}, /* Basque */ |
| {"euq", HB_TAG_NONE }, /* Basque [family] != Basque */ |
| {"eve", HB_TAG('E','V','N',' ')}, /* Even */ |
| {"evn", HB_TAG('E','V','K',' ')}, /* Evenki */ |
| {"ewo", HB_TAG('B','T','I',' ')}, /* Ewondo -> Beti */ |
| {"eyo", HB_TAG('K','A','L',' ')}, /* Keiyo -> Kalenjin */ |
| {"fa", HB_TAG('F','A','R',' ')}, /* Persian [macrolanguage] */ |
| {"fab", HB_TAG('C','P','P',' ')}, /* Fa d'Ambu -> Creoles */ |
| {"fan", HB_TAG('F','A','N','0')}, /* Fang (Equatorial Guinea) */ |
| {"fan", HB_TAG('B','T','I',' ')}, /* Fang (Equatorial Guinea) -> Beti */ |
| {"far", HB_TAG_NONE }, /* Fataleka != Persian */ |
| {"fat", HB_TAG('F','A','T',' ')}, /* Fanti */ |
| {"fat", HB_TAG('A','K','A',' ')}, /* Fanti -> Akan */ |
| {"fbl", HB_TAG('B','I','K',' ')}, /* West Albay Bikol -> Bikol */ |
| {"ff", HB_TAG('F','U','L',' ')}, /* Fulah [macrolanguage] */ |
| {"ffm", HB_TAG('F','U','L',' ')}, /* Maasina Fulfulde -> Fulah */ |
| {"fi", HB_TAG('F','I','N',' ')}, /* Finnish */ |
| {"fil", HB_TAG('P','I','L',' ')}, /* Filipino */ |
| {"fj", HB_TAG('F','J','I',' ')}, /* Fijian */ |
| {"flm", HB_TAG('H','A','L',' ')}, /* Halam (Falam Chin) (retired code) */ |
| {"flm", HB_TAG('Q','I','N',' ')}, /* Falam Chin (retired code) -> Chin */ |
| {"fmp", HB_TAG('F','M','P',' ')}, /* Fe’fe’ */ |
| {"fmp", HB_TAG('B','M','L',' ')}, /* Fe'fe' -> Bamileke */ |
| {"fng", HB_TAG('C','P','P',' ')}, /* Fanagalo -> Creoles */ |
| {"fo", HB_TAG('F','O','S',' ')}, /* Faroese */ |
| /*{"fon", HB_TAG('F','O','N',' ')},*/ /* Fon */ |
| {"fos", HB_TAG_NONE }, /* Siraya != Faroese */ |
| {"fpe", HB_TAG('C','P','P',' ')}, /* Fernando Po Creole English -> Creoles */ |
| {"fr", HB_TAG('F','R','A',' ')}, /* French */ |
| /*{"frc", HB_TAG('F','R','C',' ')},*/ /* Cajun French */ |
| /*{"frp", HB_TAG('F','R','P',' ')},*/ /* Arpitan */ |
| {"fub", HB_TAG('F','U','L',' ')}, /* Adamawa Fulfulde -> Fulah */ |
| {"fuc", HB_TAG('F','U','L',' ')}, /* Pulaar -> Fulah */ |
| {"fue", HB_TAG('F','U','L',' ')}, /* Borgu Fulfulde -> Fulah */ |
| {"fuf", HB_TAG('F','T','A',' ')}, /* Pular -> Futa */ |
| {"fuf", HB_TAG('F','U','L',' ')}, /* Pular -> Fulah */ |
| {"fuh", HB_TAG('F','U','L',' ')}, /* Western Niger Fulfulde -> Fulah */ |
| {"fui", HB_TAG('F','U','L',' ')}, /* Bagirmi Fulfulde -> Fulah */ |
| {"fuq", HB_TAG('F','U','L',' ')}, /* Central-Eastern Niger Fulfulde -> Fulah */ |
| {"fur", HB_TAG('F','R','L',' ')}, /* Friulian */ |
| {"fuv", HB_TAG('F','U','V',' ')}, /* Nigerian Fulfulde */ |
| {"fuv", HB_TAG('F','U','L',' ')}, /* Nigerian Fulfulde -> Fulah */ |
| {"fy", HB_TAG('F','R','I',' ')}, /* Western Frisian -> Frisian */ |
| {"ga", HB_TAG('I','R','I',' ')}, /* Irish */ |
| {"gaa", HB_TAG('G','A','D',' ')}, /* Ga */ |
| {"gac", HB_TAG('C','P','P',' ')}, /* Mixed Great Andamanese -> Creoles */ |
| {"gad", HB_TAG_NONE }, /* Gaddang != Ga */ |
| {"gae", HB_TAG_NONE }, /* Guarequena != Scottish Gaelic (Gaelic) */ |
| /*{"gag", HB_TAG('G','A','G',' ')},*/ /* Gagauz */ |
| {"gal", HB_TAG_NONE }, /* Galolen != Galician */ |
| {"gan", HB_TAG('Z','H','S',' ')}, /* Gan Chinese -> Chinese, Simplified */ |
| {"gar", HB_TAG_NONE }, /* Galeya != Garshuni */ |
| {"gaw", HB_TAG_NONE }, /* Nobonob != Garhwali */ |
| {"gax", HB_TAG('O','R','O',' ')}, /* Borana-Arsi-Guji Oromo -> Oromo */ |
| {"gaz", HB_TAG('O','R','O',' ')}, /* West Central Oromo -> Oromo */ |
| {"gbm", HB_TAG('G','A','W',' ')}, /* Garhwali */ |
| {"gce", HB_TAG('A','T','H',' ')}, /* Galice -> Athapaskan */ |
| {"gcf", HB_TAG('C','P','P',' ')}, /* Guadeloupean Creole French -> Creoles */ |
| {"gcl", HB_TAG('C','P','P',' ')}, /* Grenadian Creole English -> Creoles */ |
| {"gcr", HB_TAG('C','P','P',' ')}, /* Guianese Creole French -> Creoles */ |
| {"gd", HB_TAG('G','A','E',' ')}, /* Scottish Gaelic (Gaelic) */ |
| {"gda", HB_TAG('R','A','J',' ')}, /* Gade Lohar -> Rajasthani */ |
| /*{"gez", HB_TAG('G','E','Z',' ')},*/ /* Geez */ |
| {"ggo", HB_TAG('G','O','N',' ')}, /* Southern Gondi (retired code) -> Gondi */ |
| {"gha", HB_TAG('B','B','R',' ')}, /* Ghadamès -> Berber */ |
| {"ghk", HB_TAG('K','R','N',' ')}, /* Geko Karen -> Karen */ |
| {"gho", HB_TAG('B','B','R',' ')}, /* Ghomara -> Berber */ |
| {"gib", HB_TAG('C','P','P',' ')}, /* Gibanawa -> Creoles */ |
| /*{"gih", HB_TAG('G','I','H',' ')},*/ /* Githabul */ |
| {"gil", HB_TAG('G','I','L','0')}, /* Kiribati (Gilbertese) */ |
| {"gju", HB_TAG('R','A','J',' ')}, /* Gujari -> Rajasthani */ |
| {"gkp", HB_TAG('G','K','P',' ')}, /* Guinea Kpelle -> Kpelle (Guinea) */ |
| {"gkp", HB_TAG('K','P','L',' ')}, /* Guinea Kpelle -> Kpelle */ |
| {"gl", HB_TAG('G','A','L',' ')}, /* Galician */ |
| {"gld", HB_TAG('N','A','N',' ')}, /* Nanai */ |
| /*{"glk", HB_TAG('G','L','K',' ')},*/ /* Gilaki */ |
| {"gmz", HB_TAG_NONE }, /* Mgbolizhia != Gumuz */ |
| {"gn", HB_TAG('G','U','A',' ')}, /* Guarani [macrolanguage] */ |
| {"gnb", HB_TAG('Q','I','N',' ')}, /* Gangte -> Chin */ |
| /*{"gnn", HB_TAG('G','N','N',' ')},*/ /* Gumatj */ |
| {"gno", HB_TAG('G','O','N',' ')}, /* Northern Gondi -> Gondi */ |
| {"gnw", HB_TAG('G','U','A',' ')}, /* Western Bolivian Guaraní -> Guarani */ |
| /*{"gog", HB_TAG('G','O','G',' ')},*/ /* Gogo */ |
| {"gom", HB_TAG('K','O','K',' ')}, /* Goan Konkani -> Konkani */ |
| /*{"gon", HB_TAG('G','O','N',' ')},*/ /* Gondi [macrolanguage] */ |
| {"goq", HB_TAG('C','P','P',' ')}, /* Gorap -> Creoles */ |
| {"gox", HB_TAG('B','A','D','0')}, /* Gobu -> Banda */ |
| {"gpe", HB_TAG('C','P','P',' ')}, /* Ghanaian Pidgin English -> Creoles */ |
| {"gro", HB_TAG_NONE }, /* Groma != Garo */ |
| {"grr", HB_TAG('B','B','R',' ')}, /* Taznatit -> Berber */ |
| {"grt", HB_TAG('G','R','O',' ')}, /* Garo */ |
| {"gru", HB_TAG('S','O','G',' ')}, /* Kistane -> Sodo Gurage */ |
| {"gsw", HB_TAG('A','L','S',' ')}, /* Alsatian */ |
| {"gu", HB_TAG('G','U','J',' ')}, /* Gujarati */ |
| {"gua", HB_TAG_NONE }, /* Shiki != Guarani */ |
| /*{"guc", HB_TAG('G','U','C',' ')},*/ /* Wayuu */ |
| /*{"guf", HB_TAG('G','U','F',' ')},*/ /* Gupapuyngu */ |
| {"gug", HB_TAG('G','U','A',' ')}, /* Paraguayan Guaraní -> Guarani */ |
| {"gui", HB_TAG('G','U','A',' ')}, /* Eastern Bolivian Guaraní -> Guarani */ |
| {"guk", HB_TAG('G','M','Z',' ')}, /* Gumuz */ |
| {"gul", HB_TAG('C','P','P',' ')}, /* Sea Island Creole English -> Creoles */ |
| {"gun", HB_TAG('G','U','A',' ')}, /* Mbyá Guaraní -> Guarani */ |
| /*{"guz", HB_TAG('G','U','Z',' ')},*/ /* Gusii */ |
| {"gv", HB_TAG('M','N','X',' ')}, /* Manx */ |
| {"gwi", HB_TAG('A','T','H',' ')}, /* Gwichʼin -> Athapaskan */ |
| {"gyn", HB_TAG('C','P','P',' ')}, /* Guyanese Creole English -> Creoles */ |
| {"ha", HB_TAG('H','A','U',' ')}, /* Hausa */ |
| {"haa", HB_TAG('A','T','H',' ')}, /* Han -> Athapaskan */ |
| {"hae", HB_TAG('O','R','O',' ')}, /* Eastern Oromo -> Oromo */ |
| {"hai", HB_TAG('H','A','I','0')}, /* Haida [macrolanguage] */ |
| {"hak", HB_TAG('Z','H','S',' ')}, /* Hakka Chinese -> Chinese, Simplified */ |
| {"hal", HB_TAG_NONE }, /* Halang != Halam (Falam Chin) */ |
| {"har", HB_TAG('H','R','I',' ')}, /* Harari */ |
| /*{"haw", HB_TAG('H','A','W',' ')},*/ /* Hawaiian */ |
| {"hax", HB_TAG('H','A','I','0')}, /* Southern Haida -> Haida */ |
| /*{"hay", HB_TAG('H','A','Y',' ')},*/ /* Haya */ |
| /*{"haz", HB_TAG('H','A','Z',' ')},*/ /* Hazaragi */ |
| {"hbn", HB_TAG_NONE }, /* Heiban != Hammer-Banna */ |
| {"hca", HB_TAG('C','P','P',' ')}, /* Andaman Creole Hindi -> Creoles */ |
| {"hdn", HB_TAG('H','A','I','0')}, /* Northern Haida -> Haida */ |
| {"he", HB_TAG('I','W','R',' ')}, /* Hebrew */ |
| {"hea", HB_TAG('H','M','N',' ')}, /* Northern Qiandong Miao -> Hmong */ |
| /*{"hei", HB_TAG('H','E','I',' ')},*/ /* Heiltsuk */ |
| {"hi", HB_TAG('H','I','N',' ')}, /* Hindi */ |
| /*{"hil", HB_TAG('H','I','L',' ')},*/ /* Hiligaynon */ |
| {"hji", HB_TAG('M','L','Y',' ')}, /* Haji -> Malay */ |
| {"hlt", HB_TAG('Q','I','N',' ')}, /* Matu Chin -> Chin */ |
| {"hma", HB_TAG('H','M','N',' ')}, /* Southern Mashan Hmong -> Hmong */ |
| {"hmc", HB_TAG('H','M','N',' ')}, /* Central Huishui Hmong -> Hmong */ |
| {"hmd", HB_TAG('H','M','D',' ')}, /* Large Flowery Miao -> A-Hmao */ |
| {"hmd", HB_TAG('H','M','N',' ')}, /* Large Flowery Miao -> Hmong */ |
| {"hme", HB_TAG('H','M','N',' ')}, /* Eastern Huishui Hmong -> Hmong */ |
| {"hmg", HB_TAG('H','M','N',' ')}, /* Southwestern Guiyang Hmong -> Hmong */ |
| {"hmh", HB_TAG('H','M','N',' ')}, /* Southwestern Huishui Hmong -> Hmong */ |
| {"hmi", HB_TAG('H','M','N',' ')}, /* Northern Huishui Hmong -> Hmong */ |
| {"hmj", HB_TAG('H','M','N',' ')}, /* Ge -> Hmong */ |
| {"hml", HB_TAG('H','M','N',' ')}, /* Luopohe Hmong -> Hmong */ |
| {"hmm", HB_TAG('H','M','N',' ')}, /* Central Mashan Hmong -> Hmong */ |
| /*{"hmn", HB_TAG('H','M','N',' ')},*/ /* Hmong [macrolanguage] */ |
| {"hmp", HB_TAG('H','M','N',' ')}, /* Northern Mashan Hmong -> Hmong */ |
| {"hmq", HB_TAG('H','M','N',' ')}, /* Eastern Qiandong Miao -> Hmong */ |
| {"hmr", HB_TAG('Q','I','N',' ')}, /* Hmar -> Chin */ |
| {"hms", HB_TAG('H','M','N',' ')}, /* Southern Qiandong Miao -> Hmong */ |
| {"hmw", HB_TAG('H','M','N',' ')}, /* Western Mashan Hmong -> Hmong */ |
| {"hmy", HB_TAG('H','M','N',' ')}, /* Southern Guiyang Hmong -> Hmong */ |
| {"hmz", HB_TAG('H','M','Z',' ')}, /* Hmong Shua -> Hmong Shuat */ |
| {"hmz", HB_TAG('H','M','N',' ')}, /* Hmong Shua -> Hmong */ |
| /*{"hnd", HB_TAG('H','N','D',' ')},*/ /* Southern Hindko -> Hindko */ |
| {"hne", HB_TAG('C','H','H',' ')}, /* Chhattisgarhi -> Chattisgarhi */ |
| {"hnj", HB_TAG('H','M','N',' ')}, /* Hmong Njua -> Hmong */ |
| {"hno", HB_TAG('H','N','D',' ')}, /* Northern Hindko -> Hindko */ |
| {"ho", HB_TAG('H','M','O',' ')}, /* Hiri Motu */ |
| {"ho", HB_TAG('C','P','P',' ')}, /* Hiri Motu -> Creoles */ |
| {"hoc", HB_TAG('H','O',' ',' ')}, /* Ho */ |
| {"hoi", HB_TAG('A','T','H',' ')}, /* Holikachuk -> Athapaskan */ |
| {"hoj", HB_TAG('H','A','R',' ')}, /* Hadothi -> Harauti */ |
| {"hoj", HB_TAG('R','A','J',' ')}, /* Hadothi -> Rajasthani */ |
| {"hr", HB_TAG('H','R','V',' ')}, /* Croatian */ |
| {"hra", HB_TAG('Q','I','N',' ')}, /* Hrangkhol -> Chin */ |
| {"hrm", HB_TAG('H','M','N',' ')}, /* Horned Miao -> Hmong */ |
| {"hsb", HB_TAG('U','S','B',' ')}, /* Upper Sorbian */ |
| {"hsn", HB_TAG('Z','H','S',' ')}, /* Xiang Chinese -> Chinese, Simplified */ |
| {"ht", HB_TAG('H','A','I',' ')}, /* Haitian (Haitian Creole) */ |
| {"ht", HB_TAG('C','P','P',' ')}, /* Haitian -> Creoles */ |
| {"hu", HB_TAG('H','U','N',' ')}, /* Hungarian */ |
| {"huj", HB_TAG('H','M','N',' ')}, /* Northern Guiyang Hmong -> Hmong */ |
| {"hup", HB_TAG('A','T','H',' ')}, /* Hupa -> Athapaskan */ |
| {"hus", HB_TAG('M','Y','N',' ')}, /* Huastec -> Mayan */ |
| {"hwc", HB_TAG('C','P','P',' ')}, /* Hawai'i Creole English -> Creoles */ |
| {"hy", HB_TAG('H','Y','E','0')}, /* Armenian -> Armenian East */ |
| {"hy", HB_TAG('H','Y','E',' ')}, /* Armenian */ |
| {"hyw", HB_TAG('H','Y','E',' ')}, /* Western Armenian -> Armenian */ |
| {"hz", HB_TAG('H','E','R',' ')}, /* Herero */ |
| {"ia", HB_TAG('I','N','A',' ')}, /* Interlingua (International Auxiliary Language Association) */ |
| /*{"iba", HB_TAG('I','B','A',' ')},*/ /* Iban */ |
| /*{"ibb", HB_TAG('I','B','B',' ')},*/ /* Ibibio */ |
| {"iby", HB_TAG('I','J','O',' ')}, /* Ibani -> Ijo */ |
| {"icr", HB_TAG('C','P','P',' ')}, /* Islander Creole English -> Creoles */ |
| {"id", HB_TAG('I','N','D',' ')}, /* Indonesian */ |
| {"id", HB_TAG('M','L','Y',' ')}, /* Indonesian -> Malay */ |
| {"ida", HB_TAG('L','U','H',' ')}, /* Idakho-Isukha-Tiriki -> Luyia */ |
| {"idb", HB_TAG('C','P','P',' ')}, /* Indo-Portuguese -> Creoles */ |
| {"ie", HB_TAG('I','L','E',' ')}, /* Interlingue */ |
| {"ig", HB_TAG('I','B','O',' ')}, /* Igbo */ |
| {"igb", HB_TAG('E','B','I',' ')}, /* Ebira */ |
| {"ihb", HB_TAG('C','P','P',' ')}, /* Iha Based Pidgin -> Creoles */ |
| {"ii", HB_TAG('Y','I','M',' ')}, /* Sichuan Yi -> Yi Modern */ |
| {"ijc", HB_TAG('I','J','O',' ')}, /* Izon -> Ijo */ |
| {"ije", HB_TAG('I','J','O',' ')}, /* Biseni -> Ijo */ |
| {"ijn", HB_TAG('I','J','O',' ')}, /* Kalabari -> Ijo */ |
| /*{"ijo", HB_TAG('I','J','O',' ')},*/ /* Ijo [family] */ |
| {"ijs", HB_TAG('I','J','O',' ')}, /* Southeast Ijo -> Ijo */ |
| {"ik", HB_TAG('I','P','K',' ')}, /* Inupiaq [macrolanguage] -> Inupiat */ |
| {"ike", HB_TAG('I','N','U',' ')}, /* Eastern Canadian Inuktitut -> Inuktitut */ |
| {"ikt", HB_TAG('I','N','U',' ')}, /* Inuinnaqtun -> Inuktitut */ |
| /*{"ilo", HB_TAG('I','L','O',' ')},*/ /* Iloko -> Ilokano */ |
| {"in", HB_TAG('I','N','D',' ')}, /* Indonesian (retired code) */ |
| {"in", HB_TAG('M','L','Y',' ')}, /* Indonesian (retired code) -> Malay */ |
| {"ing", HB_TAG('A','T','H',' ')}, /* Degexit'an -> Athapaskan */ |
| {"inh", HB_TAG('I','N','G',' ')}, /* Ingush */ |
| {"io", HB_TAG('I','D','O',' ')}, /* Ido */ |
| {"iri", HB_TAG_NONE }, /* Rigwe != Irish */ |
| /*{"iru", HB_TAG('I','R','U',' ')},*/ /* Irula */ |
| {"is", HB_TAG('I','S','L',' ')}, /* Icelandic */ |
| {"ism", HB_TAG_NONE }, /* Masimasi != Inari Sami */ |
| {"it", HB_TAG('I','T','A',' ')}, /* Italian */ |
| {"itz", HB_TAG('M','Y','N',' ')}, /* Itzá -> Mayan */ |
| {"iu", HB_TAG('I','N','U',' ')}, /* Inuktitut [macrolanguage] */ |
| {"iw", HB_TAG('I','W','R',' ')}, /* Hebrew (retired code) */ |
| {"ixl", HB_TAG('M','Y','N',' ')}, /* Ixil -> Mayan */ |
| {"ja", HB_TAG('J','A','N',' ')}, /* Japanese */ |
| {"jac", HB_TAG('M','Y','N',' ')}, /* Popti' -> Mayan */ |
| {"jak", HB_TAG('M','L','Y',' ')}, /* Jakun -> Malay */ |
| {"jam", HB_TAG('J','A','M',' ')}, /* Jamaican Creole English -> Jamaican Creole */ |
| {"jam", HB_TAG('C','P','P',' ')}, /* Jamaican Creole English -> Creoles */ |
| {"jan", HB_TAG_NONE }, /* Jandai != Japanese */ |
| {"jax", HB_TAG('M','L','Y',' ')}, /* Jambi Malay -> Malay */ |
| {"jbe", HB_TAG('B','B','R',' ')}, /* Judeo-Berber -> Berber */ |
| {"jbn", HB_TAG('B','B','R',' ')}, /* Nafusi -> Berber */ |
| /*{"jbo", HB_TAG('J','B','O',' ')},*/ /* Lojban */ |
| /*{"jct", HB_TAG('J','C','T',' ')},*/ /* Krymchak */ |
| {"jgo", HB_TAG('B','M','L',' ')}, /* Ngomba -> Bamileke */ |
| {"ji", HB_TAG('J','I','I',' ')}, /* Yiddish (retired code) */ |
| {"jii", HB_TAG_NONE }, /* Jiiddu != Yiddish */ |
| {"jkm", HB_TAG('K','R','N',' ')}, /* Mobwa Karen -> Karen */ |
| {"jkp", HB_TAG('K','R','N',' ')}, /* Paku Karen -> Karen */ |
| {"jud", HB_TAG_NONE }, /* Worodougou != Ladino */ |
| {"jul", HB_TAG_NONE }, /* Jirel != Jula */ |
| {"jv", HB_TAG('J','A','V',' ')}, /* Javanese */ |
| {"jvd", HB_TAG('C','P','P',' ')}, /* Javindo -> Creoles */ |
| {"jw", HB_TAG('J','A','V',' ')}, /* Javanese (retired code) */ |
| {"ka", HB_TAG('K','A','T',' ')}, /* Georgian */ |
| {"kaa", HB_TAG('K','R','K',' ')}, /* Karakalpak */ |
| {"kab", HB_TAG('K','A','B','0')}, /* Kabyle */ |
| {"kab", HB_TAG('B','B','R',' ')}, /* Kabyle -> Berber */ |
| {"kac", HB_TAG_NONE }, /* Kachin != Kachchi */ |
| {"kam", HB_TAG('K','M','B',' ')}, /* Kamba (Kenya) */ |
| {"kar", HB_TAG('K','R','N',' ')}, /* Karen [family] */ |
| /*{"kaw", HB_TAG('K','A','W',' ')},*/ /* Kawi (Old Javanese) */ |
| {"kbd", HB_TAG('K','A','B',' ')}, /* Kabardian */ |
| {"kby", HB_TAG('K','N','R',' ')}, /* Manga Kanuri -> Kanuri */ |
| {"kca", HB_TAG('K','H','K',' ')}, /* Khanty -> Khanty-Kazim */ |
| {"kca", HB_TAG('K','H','S',' ')}, /* Khanty -> Khanty-Shurishkar */ |
| {"kca", HB_TAG('K','H','V',' ')}, /* Khanty -> Khanty-Vakhi */ |
| {"kcn", HB_TAG('C','P','P',' ')}, /* Nubi -> Creoles */ |
| /*{"kde", HB_TAG('K','D','E',' ')},*/ /* Makonde */ |
| {"kdr", HB_TAG('K','R','M',' ')}, /* Karaim */ |
| {"kdt", HB_TAG('K','U','Y',' ')}, /* Kuy */ |
| {"kea", HB_TAG('K','E','A',' ')}, /* Kabuverdianu (Crioulo) */ |
| {"kea", HB_TAG('C','P','P',' ')}, /* Kabuverdianu -> Creoles */ |
| {"keb", HB_TAG_NONE }, /* Kélé != Kebena */ |
| {"kek", HB_TAG('K','E','K',' ')}, /* Kekchi */ |
| {"kek", HB_TAG('M','Y','N',' ')}, /* Kekchí -> Mayan */ |
| {"kex", HB_TAG('K','K','N',' ')}, /* Kukna -> Kokni */ |
| {"kfa", HB_TAG('K','O','D',' ')}, /* Kodava -> Kodagu */ |
| {"kfr", HB_TAG('K','A','C',' ')}, /* Kachhi -> Kachchi */ |
| {"kfx", HB_TAG('K','U','L',' ')}, /* Kullu Pahari -> Kulvi */ |
| {"kfy", HB_TAG('K','M','N',' ')}, /* Kumaoni */ |
| {"kg", HB_TAG('K','O','N','0')}, /* Kongo [macrolanguage] */ |
| {"kge", HB_TAG_NONE }, /* Komering != Khutsuri Georgian */ |
| {"kha", HB_TAG('K','S','I',' ')}, /* Khasi */ |
| {"khb", HB_TAG('X','B','D',' ')}, /* Lü */ |
| {"khk", HB_TAG('M','N','G',' ')}, /* Halh Mongolian -> Mongolian */ |
| {"khn", HB_TAG_NONE }, /* Khandesi != Khamti Shan (Microsoft fonts) */ |
| {"khs", HB_TAG_NONE }, /* Kasua != Khanty-Shurishkar */ |
| {"kht", HB_TAG('K','H','T',' ')}, /* Khamti -> Khamti Shan */ |
| {"kht", HB_TAG('K','H','N',' ')}, /* Khamti -> Khamti Shan (Microsoft fonts) */ |
| {"khv", HB_TAG_NONE }, /* Khvarshi != Khanty-Vakhi */ |
| /*{"khw", HB_TAG('K','H','W',' ')},*/ /* Khowar */ |
| {"ki", HB_TAG('K','I','K',' ')}, /* Kikuyu (Gikuyu) */ |
| {"kis", HB_TAG_NONE }, /* Kis != Kisii */ |
| {"kiu", HB_TAG('K','I','U',' ')}, /* Kirmanjki */ |
| {"kiu", HB_TAG('Z','Z','A',' ')}, /* Kirmanjki -> Zazaki */ |
| {"kj", HB_TAG('K','U','A',' ')}, /* Kuanyama */ |
| {"kjb", HB_TAG('M','Y','N',' ')}, /* Q'anjob'al -> Mayan */ |
| /*{"kjd", HB_TAG('K','J','D',' ')},*/ /* Southern Kiwai */ |
| {"kjh", HB_TAG('K','H','A',' ')}, /* Khakas -> Khakass */ |
| {"kjp", HB_TAG('K','J','P',' ')}, /* Pwo Eastern Karen -> Eastern Pwo Karen */ |
| {"kjp", HB_TAG('K','R','N',' ')}, /* Pwo Eastern Karen -> Karen */ |
| {"kjt", HB_TAG('K','R','N',' ')}, /* Phrae Pwo Karen -> Karen */ |
| /*{"kjz", HB_TAG('K','J','Z',' ')},*/ /* Bumthangkha */ |
| {"kk", HB_TAG('K','A','Z',' ')}, /* Kazakh */ |
| {"kkn", HB_TAG_NONE }, /* Kon Keu != Kokni */ |
| {"kkz", HB_TAG('A','T','H',' ')}, /* Kaska -> Athapaskan */ |
| {"kl", HB_TAG('G','R','N',' ')}, /* Greenlandic */ |
| {"klm", HB_TAG_NONE }, /* Migum != Kalmyk */ |
| {"kln", HB_TAG('K','A','L',' ')}, /* Kalenjin [macrolanguage] */ |
| {"km", HB_TAG('K','H','M',' ')}, /* Khmer */ |
| {"kmb", HB_TAG('M','B','N',' ')}, /* Kimbundu -> Mbundu */ |
| {"kmn", HB_TAG_NONE }, /* Awtuw != Kumaoni */ |
| {"kmo", HB_TAG_NONE }, /* Kwoma != Komo */ |
| {"kmr", HB_TAG('K','U','R',' ')}, /* Northern Kurdish -> Kurdish */ |
| {"kms", HB_TAG_NONE }, /* Kamasau != Komso */ |
| {"kmv", HB_TAG('C','P','P',' ')}, /* Karipúna Creole French -> Creoles */ |
| {"kmw", HB_TAG('K','M','O',' ')}, /* Komo (Democratic Republic of Congo) */ |
| /*{"kmz", HB_TAG('K','M','Z',' ')},*/ /* Khorasani Turkish -> Khorasani Turkic */ |
| {"kn", HB_TAG('K','A','N',' ')}, /* Kannada */ |
| {"knc", HB_TAG('K','N','R',' ')}, /* Central Kanuri -> Kanuri */ |
| {"kng", HB_TAG('K','O','N','0')}, /* Koongo -> Kongo */ |
| {"knj", HB_TAG('M','Y','N',' ')}, /* Western Kanjobal -> Mayan */ |
| {"knn", HB_TAG('K','O','K',' ')}, /* Konkani */ |
| {"knr", HB_TAG_NONE }, /* Kaningra != Kanuri */ |
| {"ko", HB_TAG('K','O','R',' ')}, /* Korean */ |
| {"ko", HB_TAG('K','O','H',' ')}, /* Korean -> Korean Old Hangul */ |
| {"kod", HB_TAG_NONE }, /* Kodi != Kodagu */ |
| {"koh", HB_TAG_NONE }, /* Koyo != Korean Old Hangul */ |
| {"koi", HB_TAG('K','O','P',' ')}, /* Komi-Permyak */ |
| {"koi", HB_TAG('K','O','M',' ')}, /* Komi-Permyak -> Komi */ |
| /*{"kok", HB_TAG('K','O','K',' ')},*/ /* Konkani [macrolanguage] */ |
| {"kop", HB_TAG_NONE }, /* Waube != Komi-Permyak */ |
| /*{"kos", HB_TAG('K','O','S',' ')},*/ /* Kosraean */ |
| {"koy", HB_TAG('A','T','H',' ')}, /* Koyukon -> Athapaskan */ |
| {"koz", HB_TAG_NONE }, /* Korak != Komi-Zyrian */ |
| {"kpe", HB_TAG('K','P','L',' ')}, /* Kpelle [macrolanguage] */ |
| {"kpl", HB_TAG_NONE }, /* Kpala != Kpelle */ |
| {"kpp", HB_TAG('K','R','N',' ')}, /* Paku Karen (retired code) -> Karen */ |
| {"kpv", HB_TAG('K','O','Z',' ')}, /* Komi-Zyrian */ |
| {"kpv", HB_TAG('K','O','M',' ')}, /* Komi-Zyrian -> Komi */ |
| {"kpy", HB_TAG('K','Y','K',' ')}, /* Koryak */ |
| {"kqs", HB_TAG('K','I','S',' ')}, /* Northern Kissi -> Kisii */ |
| {"kqy", HB_TAG('K','R','T',' ')}, /* Koorete */ |
| {"kr", HB_TAG('K','N','R',' ')}, /* Kanuri [macrolanguage] */ |
| {"krc", HB_TAG('K','A','R',' ')}, /* Karachay-Balkar -> Karachay */ |
| {"krc", HB_TAG('B','A','L',' ')}, /* Karachay-Balkar -> Balkar */ |
| {"kri", HB_TAG('K','R','I',' ')}, /* Krio */ |
| {"kri", HB_TAG('C','P','P',' ')}, /* Krio -> Creoles */ |
| {"krk", HB_TAG_NONE }, /* Kerek != Karakalpak */ |
| /*{"krl", HB_TAG('K','R','L',' ')},*/ /* Karelian */ |
| {"krm", HB_TAG_NONE }, /* Krim (retired code) != Karaim */ |
| {"krn", HB_TAG_NONE }, /* Sapo != Karen */ |
| {"krt", HB_TAG('K','N','R',' ')}, /* Tumari Kanuri -> Kanuri */ |
| {"kru", HB_TAG('K','U','U',' ')}, /* Kurukh */ |
| {"ks", HB_TAG('K','S','H',' ')}, /* Kashmiri */ |
| {"ksh", HB_TAG('K','S','H','0')}, /* Kölsch -> Ripuarian */ |
| {"ksi", HB_TAG_NONE }, /* Krisa != Khasi */ |
| {"ksm", HB_TAG_NONE }, /* Kumba != Kildin Sami */ |
| {"kss", HB_TAG('K','I','S',' ')}, /* Southern Kisi -> Kisii */ |
| {"ksw", HB_TAG('K','S','W',' ')}, /* S’gaw Karen */ |
| {"ksw", HB_TAG('K','R','N',' ')}, /* S'gaw Karen -> Karen */ |
| {"ktb", HB_TAG('K','E','B',' ')}, /* Kambaata -> Kebena */ |
| {"ktu", HB_TAG('K','O','N',' ')}, /* Kituba (Democratic Republic of Congo) -> Kikongo */ |
| {"ktw", HB_TAG('A','T','H',' ')}, /* Kato -> Athapaskan */ |
| {"ku", HB_TAG('K','U','R',' ')}, /* Kurdish [macrolanguage] */ |
| {"kui", HB_TAG_NONE }, /* Kuikúro-Kalapálo != Kui */ |
| {"kul", HB_TAG_NONE }, /* Kulere != Kulvi */ |
| /*{"kum", HB_TAG('K','U','M',' ')},*/ /* Kumyk */ |
| {"kuu", HB_TAG('A','T','H',' ')}, /* Upper Kuskokwim -> Athapaskan */ |
| {"kuw", HB_TAG('B','A','D','0')}, /* Kpagua -> Banda */ |
| {"kuy", HB_TAG_NONE }, /* Kuuku-Ya'u != Kuy */ |
| {"kv", HB_TAG('K','O','M',' ')}, /* Komi [macrolanguage] */ |
| {"kvb", HB_TAG('M','L','Y',' ')}, /* Kubu -> Malay */ |
| {"kvl", HB_TAG('K','R','N',' ')}, /* Kayaw -> Karen */ |
| {"kvq", HB_TAG('K','R','N',' ')}, /* Geba Karen -> Karen */ |
| {"kvr", HB_TAG('M','L','Y',' ')}, /* Kerinci -> Malay */ |
| {"kvt", HB_TAG('K','R','N',' ')}, /* Lahta Karen -> Karen */ |
| {"kvu", HB_TAG('K','R','N',' ')}, /* Yinbaw Karen -> Karen */ |
| {"kvy", HB_TAG('K','R','N',' ')}, /* Yintale Karen -> Karen */ |
| {"kw", HB_TAG('C','O','R',' ')}, /* Cornish */ |
| /*{"kwk", HB_TAG('K','W','K',' ')},*/ /* Kwakiutl -> Kwakʼwala */ |
| {"kww", HB_TAG('C','P','P',' ')}, /* Kwinti -> Creoles */ |
| {"kwy", HB_TAG('K','O','N','0')}, /* San Salvador Kongo -> Kongo */ |
| {"kxc", HB_TAG('K','M','S',' ')}, /* Konso -> Komso */ |
| {"kxd", HB_TAG('M','L','Y',' ')}, /* Brunei -> Malay */ |
| {"kxf", HB_TAG('K','R','N',' ')}, /* Manumanaw Karen -> Karen */ |
| {"kxk", HB_TAG('K','R','N',' ')}, /* Zayein Karen -> Karen */ |
| {"kxl", HB_TAG('K','U','U',' ')}, /* Nepali Kurux (retired code) -> Kurukh */ |
| {"kxu", HB_TAG('K','U','I',' ')}, /* Kui (India) (retired code) */ |
| {"ky", HB_TAG('K','I','R',' ')}, /* Kirghiz (Kyrgyz) */ |
| {"kyk", HB_TAG_NONE }, /* Kamayo != Koryak */ |
| {"kyu", HB_TAG('K','Y','U',' ')}, /* Western Kayah */ |
| {"kyu", HB_TAG('K','R','N',' ')}, /* Western Kayah -> Karen */ |
| {"la", HB_TAG('L','A','T',' ')}, /* Latin */ |
| {"lac", HB_TAG('M','Y','N',' ')}, /* Lacandon -> Mayan */ |
| {"lad", HB_TAG('J','U','D',' ')}, /* Ladino */ |
| {"lah", HB_TAG_NONE }, /* Lahnda [macrolanguage] != Lahuli */ |
| {"lak", HB_TAG_NONE }, /* Laka (Nigeria) != Lak */ |
| {"lam", HB_TAG_NONE }, /* Lamba != Lambani */ |
| {"laz", HB_TAG_NONE }, /* Aribwatsa != Laz */ |
| {"lb", HB_TAG('L','T','Z',' ')}, /* Luxembourgish */ |
| {"lbe", HB_TAG('L','A','K',' ')}, /* Lak */ |
| {"lbj", HB_TAG('L','D','K',' ')}, /* Ladakhi */ |
| {"lbl", HB_TAG('B','I','K',' ')}, /* Libon Bikol -> Bikol */ |
| {"lce", HB_TAG('M','L','Y',' ')}, /* Loncong -> Malay */ |
| {"lcf", HB_TAG('M','L','Y',' ')}, /* Lubu -> Malay */ |
| {"ldi", HB_TAG('K','O','N','0')}, /* Laari -> Kongo */ |
| {"ldk", HB_TAG_NONE }, /* Leelau != Ladakhi */ |
| /*{"lef", HB_TAG('L','E','F',' ')},*/ /* Lelemi */ |
| /*{"lez", HB_TAG('L','E','Z',' ')},*/ /* Lezghian -> Lezgi */ |
| {"lg", HB_TAG('L','U','G',' ')}, /* Ganda */ |
| {"li", HB_TAG('L','I','M',' ')}, /* Limburgish */ |
| {"lif", HB_TAG('L','M','B',' ')}, /* Limbu */ |
| /*{"lij", HB_TAG('L','I','J',' ')},*/ /* Ligurian */ |
| {"lir", HB_TAG('C','P','P',' ')}, /* Liberian English -> Creoles */ |
| /*{"lis", HB_TAG('L','I','S',' ')},*/ /* Lisu */ |
| {"liw", HB_TAG('M','L','Y',' ')}, /* Col -> Malay */ |
| {"liy", HB_TAG('B','A','D','0')}, /* Banda-Bambari -> Banda */ |
| /*{"ljp", HB_TAG('L','J','P',' ')},*/ /* Lampung Api -> Lampung */ |
| {"lkb", HB_TAG('L','U','H',' ')}, /* Kabras -> Luyia */ |
| /*{"lki", HB_TAG('L','K','I',' ')},*/ /* Laki */ |
| {"lko", HB_TAG('L','U','H',' ')}, /* Khayo -> Luyia */ |
| {"lks", HB_TAG('L','U','H',' ')}, /* Kisa -> Luyia */ |
| {"lld", HB_TAG('L','A','D',' ')}, /* Ladin */ |
| {"lma", HB_TAG_NONE }, /* East Limba != Low Mari */ |
| {"lmb", HB_TAG_NONE }, /* Merei != Limbu */ |
| {"lmn", HB_TAG('L','A','M',' ')}, /* Lambadi -> Lambani */ |
| /*{"lmo", HB_TAG('L','M','O',' ')},*/ /* Lombard */ |
| {"lmw", HB_TAG_NONE }, /* Lake Miwok != Lomwe */ |
| {"ln", HB_TAG('L','I','N',' ')}, /* Lingala */ |
| {"lna", HB_TAG('B','A','D','0')}, /* Langbashe -> Banda */ |
| {"lnl", HB_TAG('B','A','D','0')}, /* South Central Banda -> Banda */ |
| {"lo", HB_TAG('L','A','O',' ')}, /* Lao */ |
| /*{"lom", HB_TAG('L','O','M',' ')},*/ /* Loma (Liberia) */ |
| {"lou", HB_TAG('C','P','P',' ')}, /* Louisiana Creole -> Creoles */ |
| /*{"lpo", HB_TAG('L','P','O',' ')},*/ /* Lipo */ |
| /*{"lrc", HB_TAG('L','R','C',' ')},*/ /* Northern Luri -> Luri */ |
| {"lri", HB_TAG('L','U','H',' ')}, /* Marachi -> Luyia */ |
| {"lrm", HB_TAG('L','U','H',' ')}, /* Marama -> Luyia */ |
| {"lrt", HB_TAG('C','P','P',' ')}, /* Larantuka Malay -> Creoles */ |
| {"lsb", HB_TAG_NONE }, /* Burundian Sign Language != Lower Sorbian */ |
| {"lsm", HB_TAG('L','U','H',' ')}, /* Saamia -> Luyia */ |
| {"lt", HB_TAG('L','T','H',' ')}, /* Lithuanian */ |
| {"ltg", HB_TAG('L','V','I',' ')}, /* Latgalian -> Latvian */ |
| {"lth", HB_TAG_NONE }, /* Thur != Lithuanian */ |
| {"lto", HB_TAG('L','U','H',' ')}, /* Tsotso -> Luyia */ |
| {"lts", HB_TAG('L','U','H',' ')}, /* Tachoni -> Luyia */ |
| {"lu", HB_TAG('L','U','B',' ')}, /* Luba-Katanga */ |
| /*{"lua", HB_TAG('L','U','A',' ')},*/ /* Luba-Lulua */ |
| /*{"luo", HB_TAG('L','U','O',' ')},*/ /* Luo (Kenya and Tanzania) */ |
| {"lus", HB_TAG('M','I','Z',' ')}, /* Lushai -> Mizo */ |
| {"lus", HB_TAG('Q','I','N',' ')}, /* Lushai -> Chin */ |
| {"luy", HB_TAG('L','U','H',' ')}, /* Luyia [macrolanguage] */ |
| {"luz", HB_TAG('L','R','C',' ')}, /* Southern Luri -> Luri */ |
| {"lv", HB_TAG('L','V','I',' ')}, /* Latvian [macrolanguage] */ |
| {"lvi", HB_TAG_NONE }, /* Lavi != Latvian */ |
| {"lvs", HB_TAG('L','V','I',' ')}, /* Standard Latvian -> Latvian */ |
| {"lwg", HB_TAG('L','U','H',' ')}, /* Wanga -> Luyia */ |
| {"lzh", HB_TAG('Z','H','T',' ')}, /* Literary Chinese -> Chinese, Traditional */ |
| {"lzz", HB_TAG('L','A','Z',' ')}, /* Laz */ |
| /*{"mad", HB_TAG('M','A','D',' ')},*/ /* Madurese -> Madura */ |
| /*{"mag", HB_TAG('M','A','G',' ')},*/ /* Magahi */ |
| {"mai", HB_TAG('M','T','H',' ')}, /* Maithili */ |
| {"maj", HB_TAG_NONE }, /* Jalapa De Díaz Mazatec != Majang */ |
| {"mak", HB_TAG('M','K','R',' ')}, /* Makasar */ |
| {"mam", HB_TAG('M','A','M',' ')}, /* Mam */ |
| {"mam", HB_TAG('M','Y','N',' ')}, /* Mam -> Mayan */ |
| {"man", HB_TAG('M','N','K',' ')}, /* Mandingo [macrolanguage] -> Maninka */ |
| {"map", HB_TAG_NONE }, /* Austronesian [family] != Mapudungun */ |
| {"maw", HB_TAG_NONE }, /* Mampruli != Marwari */ |
| {"max", HB_TAG('M','L','Y',' ')}, /* North Moluccan Malay -> Malay */ |
| {"max", HB_TAG('C','P','P',' ')}, /* North Moluccan Malay -> Creoles */ |
| {"mbf", HB_TAG('C','P','P',' ')}, /* Baba Malay -> Creoles */ |
| {"mbn", HB_TAG_NONE }, /* Macaguán != Mbundu */ |
| /*{"mbo", HB_TAG('M','B','O',' ')},*/ /* Mbo (Cameroon) */ |
| {"mch", HB_TAG_NONE }, /* Maquiritari != Manchu */ |
| {"mcm", HB_TAG('C','P','P',' ')}, /* Malaccan Creole Portuguese -> Creoles */ |
| {"mcr", HB_TAG_NONE }, /* Menya != Moose Cree */ |
| {"mct", HB_TAG('B','T','I',' ')}, /* Mengisa -> Beti */ |
| {"mde", HB_TAG_NONE }, /* Maba (Chad) != Mende */ |
| {"mdf", HB_TAG('M','O','K',' ')}, /* Moksha */ |
| /*{"mdr", HB_TAG('M','D','R',' ')},*/ /* Mandar */ |
| {"mdy", HB_TAG('M','L','E',' ')}, /* Male (Ethiopia) */ |
| {"men", HB_TAG('M','D','E',' ')}, /* Mende (Sierra Leone) */ |
| {"meo", HB_TAG('M','L','Y',' ')}, /* Kedah Malay -> Malay */ |
| /*{"mer", HB_TAG('M','E','R',' ')},*/ /* Meru */ |
| {"mfa", HB_TAG('M','F','A',' ')}, /* Pattani Malay */ |
| {"mfa", HB_TAG('M','L','Y',' ')}, /* Pattani Malay -> Malay */ |
| {"mfb", HB_TAG('M','L','Y',' ')}, /* Bangka -> Malay */ |
| {"mfe", HB_TAG('M','F','E',' ')}, /* Morisyen */ |
| {"mfe", HB_TAG('C','P','P',' ')}, /* Morisyen -> Creoles */ |
| {"mfp", HB_TAG('C','P','P',' ')}, /* Makassar Malay -> Creoles */ |
| {"mg", HB_TAG('M','L','G',' ')}, /* Malagasy [macrolanguage] */ |
| {"mh", HB_TAG('M','A','H',' ')}, /* Marshallese */ |
| {"mhc", HB_TAG('M','Y','N',' ')}, /* Mocho -> Mayan */ |
| {"mhr", HB_TAG('L','M','A',' ')}, /* Eastern Mari -> Low Mari */ |
| {"mhv", HB_TAG('A','R','K',' ')}, /* Arakanese (retired code) -> Rakhine */ |
| {"mi", HB_TAG('M','R','I',' ')}, /* Maori */ |
| {"min", HB_TAG('M','I','N',' ')}, /* Minangkabau */ |
| {"min", HB_TAG('M','L','Y',' ')}, /* Minangkabau -> Malay */ |
| {"miz", HB_TAG_NONE }, /* Coatzospan Mixtec != Mizo */ |
| {"mk", HB_TAG('M','K','D',' ')}, /* Macedonian */ |
| {"mkn", HB_TAG('C','P','P',' ')}, /* Kupang Malay -> Creoles */ |
| {"mkr", HB_TAG_NONE }, /* Malas != Makasar */ |
| {"mku", HB_TAG('M','N','K',' ')}, /* Konyanka Maninka -> Maninka */ |
| /*{"mkw", HB_TAG('M','K','W',' ')},*/ /* Kituba (Congo) */ |
| {"ml", HB_TAG('M','A','L',' ')}, /* Malayalam -> Malayalam Traditional */ |
| {"ml", HB_TAG('M','L','R',' ')}, /* Malayalam -> Malayalam Reformed */ |
| {"mle", HB_TAG_NONE }, /* Manambu != Male */ |
| {"mln", HB_TAG_NONE }, /* Malango != Malinke */ |
| {"mlq", HB_TAG('M','L','N',' ')}, /* Western Maninkakan -> Malinke */ |
| {"mlq", HB_TAG('M','N','K',' ')}, /* Western Maninkakan -> Maninka */ |
| {"mlr", HB_TAG_NONE }, /* Vame != Malayalam Reformed */ |
| {"mmr", HB_TAG('H','M','N',' ')}, /* Western Xiangxi Miao -> Hmong */ |
| {"mn", HB_TAG('M','N','G',' ')}, /* Mongolian [macrolanguage] */ |
| {"mnc", HB_TAG('M','C','H',' ')}, /* Manchu */ |
| {"mnd", HB_TAG_NONE }, /* Mondé != Mandinka */ |
| {"mng", HB_TAG_NONE }, /* Eastern Mnong != Mongolian */ |
| {"mnh", HB_TAG('B','A','D','0')}, /* Mono (Democratic Republic of Congo) -> Banda */ |
| /*{"mni", HB_TAG('M','N','I',' ')},*/ /* Manipuri */ |
| {"mnk", HB_TAG('M','N','D',' ')}, /* Mandinka */ |
| {"mnk", HB_TAG('M','N','K',' ')}, /* Mandinka -> Maninka */ |
| {"mnp", HB_TAG('Z','H','S',' ')}, /* Min Bei Chinese -> Chinese, Simplified */ |
| {"mns", HB_TAG('M','A','N',' ')}, /* Mansi */ |
| {"mnw", HB_TAG('M','O','N',' ')}, /* Mon */ |
| {"mnx", HB_TAG_NONE }, /* Manikion != Manx */ |
| {"mo", HB_TAG('M','O','L',' ')}, /* Moldavian (retired code) */ |
| {"mod", HB_TAG('C','P','P',' ')}, /* Mobilian -> Creoles */ |
| /*{"moh", HB_TAG('M','O','H',' ')},*/ /* Mohawk */ |
| {"mok", HB_TAG_NONE }, /* Morori != Moksha */ |
| {"mop", HB_TAG('M','Y','N',' ')}, /* Mopán Maya -> Mayan */ |
| {"mor", HB_TAG_NONE }, /* Moro != Moroccan */ |
| /*{"mos", HB_TAG('M','O','S',' ')},*/ /* Mossi */ |
| {"mpe", HB_TAG('M','A','J',' ')}, /* Majang */ |
| {"mqg", HB_TAG('M','L','Y',' ')}, /* Kota Bangun Kutai Malay -> Malay */ |
| {"mr", HB_TAG('M','A','R',' ')}, /* Marathi */ |
| {"mrh", HB_TAG('Q','I','N',' ')}, /* Mara Chin -> Chin */ |
| {"mrj", HB_TAG('H','M','A',' ')}, /* Western Mari -> High Mari */ |
| {"ms", HB_TAG('M','L','Y',' ')}, /* Malay [macrolanguage] */ |
| {"msc", HB_TAG('M','N','K',' ')}, /* Sankaran Maninka -> Maninka */ |
| {"msh", HB_TAG('M','L','G',' ')}, /* Masikoro Malagasy -> Malagasy */ |
| {"msi", HB_TAG('M','L','Y',' ')}, /* Sabah Malay -> Malay */ |
| {"msi", HB_TAG('C','P','P',' ')}, /* Sabah Malay -> Creoles */ |
| {"mt", HB_TAG('M','T','S',' ')}, /* Maltese */ |
| {"mth", HB_TAG_NONE }, /* Munggui != Maithili */ |
| {"mtr", HB_TAG('M','A','W',' ')}, /* Mewari -> Marwari */ |
| {"mts", HB_TAG_NONE }, /* Yora != Maltese */ |
| {"mud", HB_TAG('C','P','P',' ')}, /* Mednyj Aleut -> Creoles */ |
| {"mui", HB_TAG('M','L','Y',' ')}, /* Musi -> Malay */ |
| {"mun", HB_TAG_NONE }, /* Munda [family] != Mundari */ |
| {"mup", HB_TAG('R','A','J',' ')}, /* Malvi -> Rajasthani */ |
| {"muq", HB_TAG('H','M','N',' ')}, /* Eastern Xiangxi Miao -> Hmong */ |
| /*{"mus", HB_TAG('M','U','S',' ')},*/ /* Creek -> Muscogee */ |
| {"mvb", HB_TAG('A','T','H',' ')}, /* Mattole -> Athapaskan */ |
| {"mve", HB_TAG('M','A','W',' ')}, /* Marwari (Pakistan) */ |
| {"mvf", HB_TAG('M','N','G',' ')}, /* Peripheral Mongolian -> Mongolian */ |
| {"mwk", HB_TAG('M','N','K',' ')}, /* Kita Maninkakan -> Maninka */ |
| /*{"mwl", HB_TAG('M','W','L',' ')},*/ /* Mirandese */ |
| {"mwq", HB_TAG('Q','I','N',' ')}, /* Mün Chin -> Chin */ |
| {"mwr", HB_TAG('M','A','W',' ')}, /* Marwari [macrolanguage] */ |
| {"mww", HB_TAG('M','W','W',' ')}, /* Hmong Daw */ |
| {"mww", HB_TAG('H','M','N',' ')}, /* Hmong Daw -> Hmong */ |
| {"my", HB_TAG('B','R','M',' ')}, /* Burmese */ |
| {"mym", HB_TAG('M','E','N',' ')}, /* Me’en */ |
| /*{"myn", HB_TAG('M','Y','N',' ')},*/ /* Mayan [family] */ |
| {"myq", HB_TAG('M','N','K',' ')}, /* Forest Maninka (retired code) -> Maninka */ |
| {"myv", HB_TAG('E','R','Z',' ')}, /* Erzya */ |
| {"mzb", HB_TAG('B','B','R',' ')}, /* Tumzabt -> Berber */ |
| /*{"mzn", HB_TAG('M','Z','N',' ')},*/ /* Mazanderani */ |
| {"mzs", HB_TAG('C','P','P',' ')}, /* Macanese -> Creoles */ |
| {"na", HB_TAG('N','A','U',' ')}, /* Nauru -> Nauruan */ |
| {"nag", HB_TAG('N','A','G',' ')}, /* Naga Pidgin -> Naga-Assamese */ |
| {"nag", HB_TAG('C','P','P',' ')}, /* Naga Pidgin -> Creoles */ |
| /*{"nah", HB_TAG('N','A','H',' ')},*/ /* Nahuatl [family] */ |
| {"nan", HB_TAG('Z','H','S',' ')}, /* Min Nan Chinese -> Chinese, Simplified */ |
| /*{"nap", HB_TAG('N','A','P',' ')},*/ /* Neapolitan */ |
| {"nas", HB_TAG_NONE }, /* Naasioi != Naskapi */ |
| {"naz", HB_TAG('N','A','H',' ')}, /* Coatepec Nahuatl -> Nahuatl */ |
| {"nb", HB_TAG('N','O','R',' ')}, /* Norwegian Bokmål -> Norwegian */ |
| {"nch", HB_TAG('N','A','H',' ')}, /* Central Huasteca Nahuatl -> Nahuatl */ |
| {"nci", HB_TAG('N','A','H',' ')}, /* Classical Nahuatl -> Nahuatl */ |
| {"ncj", HB_TAG('N','A','H',' ')}, /* Northern Puebla Nahuatl -> Nahuatl */ |
| {"ncl", HB_TAG('N','A','H',' ')}, /* Michoacán Nahuatl -> Nahuatl */ |
| {"ncr", HB_TAG_NONE }, /* Ncane != N-Cree */ |
| {"ncx", HB_TAG('N','A','H',' ')}, /* Central Puebla Nahuatl -> Nahuatl */ |
| {"nd", HB_TAG('N','D','B',' ')}, /* North Ndebele -> Ndebele */ |
| {"ndb", HB_TAG_NONE }, /* Kenswei Nsei != Ndebele */ |
| /*{"ndc", HB_TAG('N','D','C',' ')},*/ /* Ndau */ |
| {"ndg", HB_TAG_NONE }, /* Ndengereko != Ndonga */ |
| /*{"nds", HB_TAG('N','D','S',' ')},*/ /* Low Saxon */ |
| {"ne", HB_TAG('N','E','P',' ')}, /* Nepali [macrolanguage] */ |
| {"nef", HB_TAG('C','P','P',' ')}, /* Nefamese -> Creoles */ |
| /*{"new", HB_TAG('N','E','W',' ')},*/ /* Newari */ |
| {"ng", HB_TAG('N','D','G',' ')}, /* Ndonga */ |
| /*{"nga", HB_TAG('N','G','A',' ')},*/ /* Ngbaka */ |
| {"ngl", HB_TAG('L','M','W',' ')}, /* Lomwe */ |
| {"ngm", HB_TAG('C','P','P',' ')}, /* Ngatik Men's Creole -> Creoles */ |
| {"ngo", HB_TAG('S','X','T',' ')}, /* Ngoni (retired code) -> Sutu */ |
| {"ngr", HB_TAG_NONE }, /* Engdewu != Nagari */ |
| {"ngu", HB_TAG('N','A','H',' ')}, /* Guerrero Nahuatl -> Nahuatl */ |
| {"nhc", HB_TAG('N','A','H',' ')}, /* Tabasco Nahuatl -> Nahuatl */ |
| {"nhd", HB_TAG('G','U','A',' ')}, /* Chiripá -> Guarani */ |
| {"nhe", HB_TAG('N','A','H',' ')}, /* Eastern Huasteca Nahuatl -> Nahuatl */ |
| {"nhg", HB_TAG('N','A','H',' ')}, /* Tetelcingo Nahuatl -> Nahuatl */ |
| {"nhi", HB_TAG('N','A','H',' ')}, /* Zacatlán-Ahuacatlán-Tepetzintla Nahuatl -> Nahuatl */ |
| {"nhk", HB_TAG('N','A','H',' ')}, /* Isthmus-Cosoleacaque Nahuatl -> Nahuatl */ |
| {"nhm", HB_TAG('N','A','H',' ')}, /* Morelos Nahuatl -> Nahuatl */ |
| {"nhn", HB_TAG('N','A','H',' ')}, /* Central Nahuatl -> Nahuatl */ |
| {"nhp", HB_TAG('N','A','H',' ')}, /* Isthmus-Pajapan Nahuatl -> Nahuatl */ |
| {"nhq", HB_TAG('N','A','H',' ')}, /* Huaxcaleca Nahuatl -> Nahuatl */ |
| {"nht", HB_TAG('N','A','H',' ')}, /* Ometepec Nahuatl -> Nahuatl */ |
| {"nhv", HB_TAG('N','A','H',' ')}, /* Temascaltepec Nahuatl -> Nahuatl */ |
| {"nhw", HB_TAG('N','A','H',' ')}, /* Western Huasteca Nahuatl -> Nahuatl */ |
| {"nhx", HB_TAG('N','A','H',' ')}, /* Isthmus-Mecayapan Nahuatl -> Nahuatl */ |
| {"nhy", HB_TAG('N','A','H',' ')}, /* Northern Oaxaca Nahuatl -> Nahuatl */ |
| {"nhz", HB_TAG('N','A','H',' ')}, /* Santa María La Alta Nahuatl -> Nahuatl */ |
| {"niq", HB_TAG('K','A','L',' ')}, /* Nandi -> Kalenjin */ |
| {"nis", HB_TAG_NONE }, /* Nimi != Nisi */ |
| /*{"niu", HB_TAG('N','I','U',' ')},*/ /* Niuean */ |
| {"niv", HB_TAG('G','I','L',' ')}, /* Gilyak */ |
| {"njt", HB_TAG('C','P','P',' ')}, /* Ndyuka-Trio Pidgin -> Creoles */ |
| {"njz", HB_TAG('N','I','S',' ')}, /* Nyishi -> Nisi */ |
| {"nko", HB_TAG_NONE }, /* Nkonya != N’Ko */ |
| {"nkx", HB_TAG('I','J','O',' ')}, /* Nkoroo -> Ijo */ |
| {"nl", HB_TAG('N','L','D',' ')}, /* Dutch */ |
| {"nla", HB_TAG('B','M','L',' ')}, /* Ngombale -> Bamileke */ |
| {"nle", HB_TAG('L','U','H',' ')}, /* East Nyala -> Luyia */ |
| {"nln", HB_TAG('N','A','H',' ')}, /* Durango Nahuatl (retired code) -> Nahuatl */ |
| {"nlv", HB_TAG('N','A','H',' ')}, /* Orizaba Nahuatl -> Nahuatl */ |
| {"nn", HB_TAG('N','Y','N',' ')}, /* Norwegian Nynorsk (Nynorsk, Norwegian) */ |
| {"nn", HB_TAG('N','O','R',' ')}, /* Norwegian Nynorsk -> Norwegian */ |
| {"nnh", HB_TAG('B','M','L',' ')}, /* Ngiemboon -> Bamileke */ |
| {"nnz", HB_TAG('B','M','L',' ')}, /* Nda'nda' -> Bamileke */ |
| {"no", HB_TAG('N','O','R',' ')}, /* Norwegian [macrolanguage] */ |
| {"nod", HB_TAG('N','T','A',' ')}, /* Northern Thai -> Northern Tai */ |
| /*{"noe", HB_TAG('N','O','E',' ')},*/ /* Nimadi */ |
| /*{"nog", HB_TAG('N','O','G',' ')},*/ /* Nogai */ |
| /*{"nov", HB_TAG('N','O','V',' ')},*/ /* Novial */ |
| {"npi", HB_TAG('N','E','P',' ')}, /* Nepali */ |
| {"npl", HB_TAG('N','A','H',' ')}, /* Southeastern Puebla Nahuatl -> Nahuatl */ |
| {"nqo", HB_TAG('N','K','O',' ')}, /* N’Ko */ |
| {"nr", HB_TAG('N','D','B',' ')}, /* South Ndebele -> Ndebele */ |
| {"nsk", HB_TAG('N','A','S',' ')}, /* Naskapi */ |
| {"nsm", HB_TAG_NONE }, /* Sumi Naga != Northern Sami */ |
| /*{"nso", HB_TAG('N','S','O',' ')},*/ /* Northern Sotho */ |
| {"nsu", HB_TAG('N','A','H',' ')}, /* Sierra Negra Nahuatl -> Nahuatl */ |
| {"nto", HB_TAG_NONE }, /* Ntomba != Esperanto */ |
| {"nue", HB_TAG('B','A','D','0')}, /* Ngundu -> Banda */ |
| {"nuu", HB_TAG('B','A','D','0')}, /* Ngbundu -> Banda */ |
| {"nuz", HB_TAG('N','A','H',' ')}, /* Tlamacazapa Nahuatl -> Nahuatl */ |
| {"nv", HB_TAG('N','A','V',' ')}, /* Navajo */ |
| {"nv", HB_TAG('A','T','H',' ')}, /* Navajo -> Athapaskan */ |
| {"nwe", HB_TAG('B','M','L',' ')}, /* Ngwe -> Bamileke */ |
| {"ny", HB_TAG('C','H','I',' ')}, /* Chichewa (Chewa, Nyanja) */ |
| {"nyd", HB_TAG('L','U','H',' ')}, /* Nyore -> Luyia */ |
| /*{"nym", HB_TAG('N','Y','M',' ')},*/ /* Nyamwezi */ |
| {"nyn", HB_TAG('N','K','L',' ')}, /* Nyankole */ |
| /*{"nza", HB_TAG('N','Z','A',' ')},*/ /* Tigon Mbembe -> Mbembe Tigon */ |
| {"oc", HB_TAG('O','C','I',' ')}, /* Occitan (post 1500) */ |
| {"oj", HB_TAG('O','J','B',' ')}, /* Ojibwa [macrolanguage] -> Ojibway */ |
| /*{"ojb", HB_TAG('O','J','B',' ')},*/ /* Northwestern Ojibwa -> Ojibway */ |
| {"ojc", HB_TAG('O','J','B',' ')}, /* Central Ojibwa -> Ojibway */ |
| {"ojg", HB_TAG('O','J','B',' ')}, /* Eastern Ojibwa -> Ojibway */ |
| {"ojs", HB_TAG('O','C','R',' ')}, /* Severn Ojibwa -> Oji-Cree */ |
| {"ojs", HB_TAG('O','J','B',' ')}, /* Severn Ojibwa -> Ojibway */ |
| {"ojw", HB_TAG('O','J','B',' ')}, /* Western Ojibwa -> Ojibway */ |
| {"okd", HB_TAG('I','J','O',' ')}, /* Okodia -> Ijo */ |
| {"oki", HB_TAG('K','A','L',' ')}, /* Okiek -> Kalenjin */ |
| {"okm", HB_TAG('K','O','H',' ')}, /* Middle Korean (10th-16th cent.) -> Korean Old Hangul */ |
| {"okr", HB_TAG('I','J','O',' ')}, /* Kirike -> Ijo */ |
| {"om", HB_TAG('O','R','O',' ')}, /* Oromo [macrolanguage] */ |
| {"onx", HB_TAG('C','P','P',' ')}, /* Onin Based Pidgin -> Creoles */ |
| {"oor", HB_TAG('C','P','P',' ')}, /* Oorlams -> Creoles */ |
| {"or", HB_TAG('O','R','I',' ')}, /* Odia (formerly Oriya) [macrolanguage] */ |
| {"orc", HB_TAG('O','R','O',' ')}, /* Orma -> Oromo */ |
| {"orn", HB_TAG('M','L','Y',' ')}, /* Orang Kanaq -> Malay */ |
| {"oro", HB_TAG_NONE }, /* Orokolo != Oromo */ |
| {"orr", HB_TAG('I','J','O',' ')}, /* Oruma -> Ijo */ |
| {"ors", HB_TAG('M','L','Y',' ')}, /* Orang Seletar -> Malay */ |
| {"ory", HB_TAG('O','R','I',' ')}, /* Odia (formerly Oriya) */ |
| {"os", HB_TAG('O','S','S',' ')}, /* Ossetian */ |
| {"otw", HB_TAG('O','J','B',' ')}, /* Ottawa -> Ojibway */ |
| {"oua", HB_TAG('B','B','R',' ')}, /* Tagargrent -> Berber */ |
| {"pa", HB_TAG('P','A','N',' ')}, /* Punjabi */ |
| {"paa", HB_TAG_NONE }, /* Papuan [family] != Palestinian Aramaic */ |
| /*{"pag", HB_TAG('P','A','G',' ')},*/ /* Pangasinan */ |
| {"pal", HB_TAG_NONE }, /* Pahlavi != Pali */ |
| /*{"pam", HB_TAG('P','A','M',' ')},*/ /* Pampanga -> Pampangan */ |
| {"pap", HB_TAG('P','A','P','0')}, /* Papiamento -> Papiamentu */ |
| {"pap", HB_TAG('C','P','P',' ')}, /* Papiamento -> Creoles */ |
| {"pas", HB_TAG_NONE }, /* Papasena != Pashto */ |
| /*{"pau", HB_TAG('P','A','U',' ')},*/ /* Palauan */ |
| {"pbt", HB_TAG('P','A','S',' ')}, /* Southern Pashto -> Pashto */ |
| {"pbu", HB_TAG('P','A','S',' ')}, /* Northern Pashto -> Pashto */ |
| /*{"pcc", HB_TAG('P','C','C',' ')},*/ /* Bouyei */ |
| /*{"pcd", HB_TAG('P','C','D',' ')},*/ /* Picard */ |
| {"pce", HB_TAG('P','L','G',' ')}, /* Ruching Palaung -> Palaung */ |
| {"pck", HB_TAG('Q','I','N',' ')}, /* Paite Chin -> Chin */ |
| {"pcm", HB_TAG('C','P','P',' ')}, /* Nigerian Pidgin -> Creoles */ |
| /*{"pdc", HB_TAG('P','D','C',' ')},*/ /* Pennsylvania German */ |
| {"pdu", HB_TAG('K','R','N',' ')}, /* Kayan -> Karen */ |
| {"pea", HB_TAG('C','P','P',' ')}, /* Peranakan Indonesian -> Creoles */ |
| {"pel", HB_TAG('M','L','Y',' ')}, /* Pekal -> Malay */ |
| {"pes", HB_TAG('F','A','R',' ')}, /* Iranian Persian -> Persian */ |
| {"pey", HB_TAG('C','P','P',' ')}, /* Petjo -> Creoles */ |
| {"pga", HB_TAG('A','R','A',' ')}, /* Sudanese Creole Arabic -> Arabic */ |
| {"pga", HB_TAG('C','P','P',' ')}, /* Sudanese Creole Arabic -> Creoles */ |
| /*{"phk", HB_TAG('P','H','K',' ')},*/ /* Phake */ |
| {"pi", HB_TAG('P','A','L',' ')}, /* Pali */ |
| {"pih", HB_TAG('P','I','H',' ')}, /* Pitcairn-Norfolk -> Norfolk */ |
| {"pih", HB_TAG('C','P','P',' ')}, /* Pitcairn-Norfolk -> Creoles */ |
| {"pil", HB_TAG_NONE }, /* Yom != Filipino */ |
| {"pis", HB_TAG('C','P','P',' ')}, /* Pijin -> Creoles */ |
| {"pkh", HB_TAG('Q','I','N',' ')}, /* Pankhu -> Chin */ |
| {"pko", HB_TAG('K','A','L',' ')}, /* Pökoot -> Kalenjin */ |
| {"pl", HB_TAG('P','L','K',' ')}, /* Polish */ |
| {"plg", HB_TAG_NONE }, /* Pilagá != Palaung */ |
| {"plk", HB_TAG_NONE }, /* Kohistani Shina != Polish */ |
| {"pll", HB_TAG('P','L','G',' ')}, /* Shwe Palaung -> Palaung */ |
| {"pln", HB_TAG('C','P','P',' ')}, /* Palenquero -> Creoles */ |
| {"plp", HB_TAG('P','A','P',' ')}, /* Palpa (retired code) */ |
| {"plt", HB_TAG('M','L','G',' ')}, /* Plateau Malagasy -> Malagasy */ |
| {"pml", HB_TAG('C','P','P',' ')}, /* Lingua Franca -> Creoles */ |
| /*{"pms", HB_TAG('P','M','S',' ')},*/ /* Piemontese */ |
| {"pmy", HB_TAG('C','P','P',' ')}, /* Papuan Malay -> Creoles */ |
| /*{"pnb", HB_TAG('P','N','B',' ')},*/ /* Western Panjabi */ |
| {"poc", HB_TAG('M','Y','N',' ')}, /* Poqomam -> Mayan */ |
| {"poh", HB_TAG('P','O','H',' ')}, /* Poqomchi' -> Pocomchi */ |
| {"poh", HB_TAG('M','Y','N',' ')}, /* Poqomchi' -> Mayan */ |
| /*{"pon", HB_TAG('P','O','N',' ')},*/ /* Pohnpeian */ |
| {"pov", HB_TAG('C','P','P',' ')}, /* Upper Guinea Crioulo -> Creoles */ |
| {"ppa", HB_TAG('B','A','G',' ')}, /* Pao (retired code) -> Baghelkhandi */ |
| {"pre", HB_TAG('C','P','P',' ')}, /* Principense -> Creoles */ |
| /*{"pro", HB_TAG('P','R','O',' ')},*/ /* Old Provençal (to 1500) -> Provençal / Old Provençal */ |
| {"prs", HB_TAG('D','R','I',' ')}, /* Dari */ |
| {"prs", HB_TAG('F','A','R',' ')}, /* Dari -> Persian */ |
| {"ps", HB_TAG('P','A','S',' ')}, /* Pashto [macrolanguage] */ |
| {"pse", HB_TAG('M','L','Y',' ')}, /* Central Malay -> Malay */ |
| {"pst", HB_TAG('P','A','S',' ')}, /* Central Pashto -> Pashto */ |
| {"pt", HB_TAG('P','T','G',' ')}, /* Portuguese */ |
| {"pub", HB_TAG('Q','I','N',' ')}, /* Purum -> Chin */ |
| {"puz", HB_TAG('Q','I','N',' ')}, /* Purum Naga (retired code) -> Chin */ |
| {"pwo", HB_TAG('P','W','O',' ')}, /* Pwo Western Karen -> Western Pwo Karen */ |
| {"pwo", HB_TAG('K','R','N',' ')}, /* Pwo Western Karen -> Karen */ |
| {"pww", HB_TAG('K','R','N',' ')}, /* Pwo Northern Karen -> Karen */ |
| {"qu", HB_TAG('Q','U','Z',' ')}, /* Quechua [macrolanguage] */ |
| {"qub", HB_TAG('Q','W','H',' ')}, /* Huallaga Huánuco Quechua -> Quechua (Peru) */ |
| {"qub", HB_TAG('Q','U','Z',' ')}, /* Huallaga Huánuco Quechua -> Quechua */ |
| {"quc", HB_TAG('Q','U','C',' ')}, /* K’iche’ */ |
| {"quc", HB_TAG('M','Y','N',' ')}, /* K'iche' -> Mayan */ |
| {"qud", HB_TAG('Q','V','I',' ')}, /* Calderón Highland Quichua -> Quechua (Ecuador) */ |
| {"qud", HB_TAG('Q','U','Z',' ')}, /* Calderón Highland Quichua -> Quechua */ |
| {"quf", HB_TAG('Q','U','Z',' ')}, /* Lambayeque Quechua -> Quechua */ |
| {"qug", HB_TAG('Q','V','I',' ')}, /* Chimborazo Highland Quichua -> Quechua (Ecuador) */ |
| {"qug", HB_TAG('Q','U','Z',' ')}, /* Chimborazo Highland Quichua -> Quechua */ |
| {"quh", HB_TAG('Q','U','H',' ')}, /* South Bolivian Quechua -> Quechua (Bolivia) */ |
| {"quh", HB_TAG('Q','U','Z',' ')}, /* South Bolivian Quechua -> Quechua */ |
| {"quk", HB_TAG('Q','U','Z',' ')}, /* Chachapoyas Quechua -> Quechua */ |
| {"qul", HB_TAG('Q','U','H',' ')}, /* North Bolivian Quechua -> Quechua (Bolivia) */ |
| {"qul", HB_TAG('Q','U','Z',' ')}, /* North Bolivian Quechua -> Quechua */ |
| {"qum", HB_TAG('M','Y','N',' ')}, /* Sipacapense -> Mayan */ |
| {"qup", HB_TAG('Q','V','I',' ')}, /* Southern Pastaza Quechua -> Quechua (Ecuador) */ |
| {"qup", HB_TAG('Q','U','Z',' ')}, /* Southern Pastaza Quechua -> Quechua */ |
| {"qur", HB_TAG('Q','W','H',' ')}, /* Yanahuanca Pasco Quechua -> Quechua (Peru) */ |
| {"qur", HB_TAG('Q','U','Z',' ')}, /* Yanahuanca Pasco Quechua -> Quechua */ |
| {"qus", HB_TAG('Q','U','H',' ')}, /* Santiago del Estero Quichua -> Quechua (Bolivia) */ |
| {"qus", HB_TAG('Q','U','Z',' ')}, /* Santiago del Estero Quichua -> Quechua */ |
| {"quv", HB_TAG('M','Y','N',' ')}, /* Sacapulteco -> Mayan */ |
| {"quw", HB_TAG('Q','V','I',' ')}, /* Tena Lowland Quichua -> Quechua (Ecuador) */ |
| {"quw", HB_TAG('Q','U','Z',' ')}, /* Tena Lowland Quichua -> Quechua */ |
| {"qux", HB_TAG('Q','W','H',' ')}, /* Yauyos Quechua -> Quechua (Peru) */ |
| {"qux", HB_TAG('Q','U','Z',' ')}, /* Yauyos Quechua -> Quechua */ |
| {"quy", HB_TAG('Q','U','Z',' ')}, /* Ayacucho Quechua -> Quechua */ |
| /*{"quz", HB_TAG('Q','U','Z',' ')},*/ /* Cusco Quechua -> Quechua */ |
| {"qva", HB_TAG('Q','W','H',' ')}, /* Ambo-Pasco Quechua -> Quechua (Peru) */ |
| {"qva", HB_TAG('Q','U','Z',' ')}, /* Ambo-Pasco Quechua -> Quechua */ |
| {"qvc", HB_TAG('Q','U','Z',' ')}, /* Cajamarca Quechua -> Quechua */ |
| {"qve", HB_TAG('Q','U','Z',' ')}, /* Eastern Apurímac Quechua -> Quechua */ |
| {"qvh", HB_TAG('Q','W','H',' ')}, /* Huamalíes-Dos de Mayo Huánuco Quechua -> Quechua (Peru) */ |
| {"qvh", HB_TAG('Q','U','Z',' ')}, /* Huamalíes-Dos de Mayo Huánuco Quechua -> Quechua */ |
| {"qvi", HB_TAG('Q','V','I',' ')}, /* Imbabura Highland Quichua -> Quechua (Ecuador) */ |
| {"qvi", HB_TAG('Q','U','Z',' ')}, /* Imbabura Highland Quichua -> Quechua */ |
| {"qvj", HB_TAG('Q','V','I',' ')}, /* Loja Highland Quichua -> Quechua (Ecuador) */ |
| {"qvj", HB_TAG('Q','U','Z',' ')}, /* Loja Highland Quichua -> Quechua */ |
| {"qvl", HB_TAG('Q','W','H',' ')}, /* Cajatambo North Lima Quechua -> Quechua (Peru) */ |
| {"qvl", HB_TAG('Q','U','Z',' ')}, /* Cajatambo North Lima Quechua -> Quechua */ |
| {"qvm", HB_TAG('Q','W','H',' ')}, /* Margos-Yarowilca-Lauricocha Quechua -> Quechua (Peru) */ |
| {"qvm", HB_TAG('Q','U','Z',' ')}, /* Margos-Yarowilca-Lauricocha Quechua -> Quechua */ |
| {"qvn", HB_TAG('Q','W','H',' ')}, /* North Junín Quechua -> Quechua (Peru) */ |
| {"qvn", HB_TAG('Q','U','Z',' ')}, /* North Junín Quechua -> Quechua */ |
| {"qvo", HB_TAG('Q','V','I',' ')}, /* Napo Lowland Quechua -> Quechua (Ecuador) */ |
| {"qvo", HB_TAG('Q','U','Z',' ')}, /* Napo Lowland Quechua -> Quechua */ |
| {"qvp", HB_TAG('Q','W','H',' ')}, /* Pacaraos Quechua -> Quechua (Peru) */ |
| {"qvp", HB_TAG('Q','U','Z',' ')}, /* Pacaraos Quechua -> Quechua */ |
| {"qvs", HB_TAG('Q','U','Z',' ')}, /* San Martín Quechua -> Quechua */ |
| {"qvw", HB_TAG('Q','W','H',' ')}, /* Huaylla Wanca Quechua -> Quechua (Peru) */ |
| {"qvw", HB_TAG('Q','U','Z',' ')}, /* Huaylla Wanca Quechua -> Quechua */ |
| {"qvz", HB_TAG('Q','V','I',' ')}, /* Northern Pastaza Quichua -> Quechua (Ecuador) */ |
| {"qvz", HB_TAG('Q','U','Z',' ')}, /* Northern Pastaza Quichua -> Quechua */ |
| {"qwa", HB_TAG('Q','W','H',' ')}, /* Corongo Ancash Quechua -> Quechua (Peru) */ |
| {"qwa", HB_TAG('Q','U','Z',' ')}, /* Corongo Ancash Quechua -> Quechua */ |
| {"qwc", HB_TAG('Q','U','Z',' ')}, /* Classical Quechua -> Quechua */ |
| {"qwh", HB_TAG('Q','W','H',' ')}, /* Huaylas Ancash Quechua -> Quechua (Peru) */ |
| {"qwh", HB_TAG('Q','U','Z',' ')}, /* Huaylas Ancash Quechua -> Quechua */ |
| {"qws", HB_TAG('Q','W','H',' ')}, /* Sihuas Ancash Quechua -> Quechua (Peru) */ |
| {"qws", HB_TAG('Q','U','Z',' ')}, /* Sihuas Ancash Quechua -> Quechua */ |
| {"qwt", HB_TAG('A','T','H',' ')}, /* Kwalhioqua-Tlatskanai -> Athapaskan */ |
| {"qxa", HB_TAG('Q','W','H',' ')}, /* Chiquián Ancash Quechua -> Quechua (Peru) */ |
| {"qxa", HB_TAG('Q','U','Z',' ')}, /* Chiquián Ancash Quechua -> Quechua */ |
| {"qxc", HB_TAG('Q','W','H',' ')}, /* Chincha Quechua -> Quechua (Peru) */ |
| {"qxc", HB_TAG('Q','U','Z',' ')}, /* Chincha Quechua -> Quechua */ |
| {"qxh", HB_TAG('Q','W','H',' ')}, /* Panao Huánuco Quechua -> Quechua (Peru) */ |
| {"qxh", HB_TAG('Q','U','Z',' ')}, /* Panao Huánuco Quechua -> Quechua */ |
| {"qxl", HB_TAG('Q','V','I',' ')}, /* Salasaca Highland Quichua -> Quechua (Ecuador) */ |
| {"qxl", HB_TAG('Q','U','Z',' ')}, /* Salasaca Highland Quichua -> Quechua */ |
| {"qxn", HB_TAG('Q','W','H',' ')}, /* Northern Conchucos Ancash Quechua -> Quechua (Peru) */ |
| {"qxn", HB_TAG('Q','U','Z',' ')}, /* Northern Conchucos Ancash Quechua -> Quechua */ |
| {"qxo", HB_TAG('Q','W','H',' ')}, /* Southern Conchucos Ancash Quechua -> Quechua (Peru) */ |
| {"qxo", HB_TAG('Q','U','Z',' ')}, /* Southern Conchucos Ancash Quechua -> Quechua */ |
| {"qxp", HB_TAG('Q','U','Z',' ')}, /* Puno Quechua -> Quechua */ |
| {"qxr", HB_TAG('Q','V','I',' ')}, /* Cañar Highland Quichua -> Quechua (Ecuador) */ |
| {"qxr", HB_TAG('Q','U','Z',' ')}, /* Cañar Highland Quichua -> Quechua */ |
| {"qxt", HB_TAG('Q','W','H',' ')}, /* Santa Ana de Tusi Pasco Quechua -> Quechua (Peru) */ |
| {"qxt", HB_TAG('Q','U','Z',' ')}, /* Santa Ana de Tusi Pasco Quechua -> Quechua */ |
| {"qxu", HB_TAG('Q','U','Z',' ')}, /* Arequipa-La Unión Quechua -> Quechua */ |
| {"qxw", HB_TAG('Q','W','H',' ')}, /* Jauja Wanca Quechua -> Quechua (Peru) */ |
| {"qxw", HB_TAG('Q','U','Z',' ')}, /* Jauja Wanca Quechua -> Quechua */ |
| {"rag", HB_TAG('L','U','H',' ')}, /* Logooli -> Luyia */ |
| /*{"raj", HB_TAG('R','A','J',' ')},*/ /* Rajasthani [macrolanguage] */ |
| {"ral", HB_TAG('Q','I','N',' ')}, /* Ralte -> Chin */ |
| /*{"rar", HB_TAG('R','A','R',' ')},*/ /* Rarotongan */ |
| {"rbb", HB_TAG('P','L','G',' ')}, /* Rumai Palaung -> Palaung */ |
| {"rbl", HB_TAG('B','I','K',' ')}, /* Miraya Bikol -> Bikol */ |
| {"rcf", HB_TAG('C','P','P',' ')}, /* Réunion Creole French -> Creoles */ |
| /*{"rej", HB_TAG('R','E','J',' ')},*/ /* Rejang */ |
| /*{"rhg", HB_TAG('R','H','G',' ')},*/ /* Rohingya */ |
| /*{"ria", HB_TAG('R','I','A',' ')},*/ /* Riang (India) */ |
| {"rif", HB_TAG('R','I','F',' ')}, /* Tarifit */ |
| {"rif", HB_TAG('B','B','R',' ')}, /* Tarifit -> Berber */ |
| /*{"rit", HB_TAG('R','I','T',' ')},*/ /* Ritharrngu -> Ritarungo */ |
| {"rki", HB_TAG('A','R','K',' ')}, /* Rakhine */ |
| /*{"rkw", HB_TAG('R','K','W',' ')},*/ /* Arakwal */ |
| {"rm", HB_TAG('R','M','S',' ')}, /* Romansh */ |
| {"rmc", HB_TAG('R','O','Y',' ')}, /* Carpathian Romani -> Romany */ |
| {"rmf", HB_TAG('R','O','Y',' ')}, /* Kalo Finnish Romani -> Romany */ |
| {"rml", HB_TAG('R','O','Y',' ')}, /* Baltic Romani -> Romany */ |
| {"rmn", HB_TAG('R','O','Y',' ')}, /* Balkan Romani -> Romany */ |
| {"rmo", HB_TAG('R','O','Y',' ')}, /* Sinte Romani -> Romany */ |
| {"rms", HB_TAG_NONE }, /* Romanian Sign Language != Romansh */ |
| {"rmw", HB_TAG('R','O','Y',' ')}, /* Welsh Romani -> Romany */ |
| {"rmy", HB_TAG('R','M','Y',' ')}, /* Vlax Romani */ |
| {"rmy", HB_TAG('R','O','Y',' ')}, /* Vlax Romani -> Romany */ |
| {"rmz", HB_TAG('A','R','K',' ')}, /* Marma -> Rakhine */ |
| {"rn", HB_TAG('R','U','N',' ')}, /* Rundi */ |
| {"ro", HB_TAG('R','O','M',' ')}, /* Romanian */ |
| {"rom", HB_TAG('R','O','Y',' ')}, /* Romany [macrolanguage] */ |
| {"rop", HB_TAG('C','P','P',' ')}, /* Kriol -> Creoles */ |
| {"rtc", HB_TAG('Q','I','N',' ')}, /* Rungtu Chin -> Chin */ |
| /*{"rtm", HB_TAG('R','T','M',' ')},*/ /* Rotuman */ |
| {"ru", HB_TAG('R','U','S',' ')}, /* Russian */ |
| {"rue", HB_TAG('R','S','Y',' ')}, /* Rusyn */ |
| /*{"rup", HB_TAG('R','U','P',' ')},*/ /* Aromanian */ |
| {"rw", HB_TAG('R','U','A',' ')}, /* Kinyarwanda */ |
| {"rwr", HB_TAG('M','A','W',' ')}, /* Marwari (India) */ |
| {"sa", HB_TAG('S','A','N',' ')}, /* Sanskrit */ |
| {"sad", HB_TAG_NONE }, /* Sandawe != Sadri */ |
| {"sah", HB_TAG('Y','A','K',' ')}, /* Yakut -> Sakha */ |
| {"sam", HB_TAG('P','A','A',' ')}, /* Samaritan Aramaic -> Palestinian Aramaic */ |
| /*{"sas", HB_TAG('S','A','S',' ')},*/ /* Sasak */ |
| /*{"sat", HB_TAG('S','A','T',' ')},*/ /* Santali */ |
| {"say", HB_TAG_NONE }, /* Saya != Sayisi */ |
| {"sc", HB_TAG('S','R','D',' ')}, /* Sardinian [macrolanguage] */ |
| {"scf", HB_TAG('C','P','P',' ')}, /* San Miguel Creole French -> Creoles */ |
| {"sch", HB_TAG('Q','I','N',' ')}, /* Sakachep -> Chin */ |
| {"sci", HB_TAG('C','P','P',' ')}, /* Sri Lankan Creole Malay -> Creoles */ |
| {"sck", HB_TAG('S','A','D',' ')}, /* Sadri */ |
| /*{"scn", HB_TAG('S','C','N',' ')},*/ /* Sicilian */ |
| /*{"sco", HB_TAG('S','C','O',' ')},*/ /* Scots */ |
| {"scs", HB_TAG('S','C','S',' ')}, /* North Slavey */ |
| {"scs", HB_TAG('S','L','A',' ')}, /* North Slavey -> Slavey */ |
| {"scs", HB_TAG('A','T','H',' ')}, /* North Slavey -> Athapaskan */ |
| {"sd", HB_TAG('S','N','D',' ')}, /* Sindhi */ |
| {"sdc", HB_TAG('S','R','D',' ')}, /* Sassarese Sardinian -> Sardinian */ |
| {"sdh", HB_TAG('K','U','R',' ')}, /* Southern Kurdish -> Kurdish */ |
| {"sdn", HB_TAG('S','R','D',' ')}, /* Gallurese Sardinian -> Sardinian */ |
| {"sds", HB_TAG('B','B','R',' ')}, /* Sened -> Berber */ |
| {"se", HB_TAG('N','S','M',' ')}, /* Northern Sami */ |
| {"seh", HB_TAG('S','N','A',' ')}, /* Sena */ |
| {"sek", HB_TAG('A','T','H',' ')}, /* Sekani -> Athapaskan */ |
| /*{"sel", HB_TAG('S','E','L',' ')},*/ /* Selkup */ |
| {"sez", HB_TAG('Q','I','N',' ')}, /* Senthang Chin -> Chin */ |
| {"sfm", HB_TAG('S','F','M',' ')}, /* Small Flowery Miao */ |
| {"sfm", HB_TAG('H','M','N',' ')}, /* Small Flowery Miao -> Hmong */ |
| {"sg", HB_TAG('S','G','O',' ')}, /* Sango */ |
| /*{"sga", HB_TAG('S','G','A',' ')},*/ /* Old Irish (to 900) */ |
| {"sgc", HB_TAG('K','A','L',' ')}, /* Kipsigis -> Kalenjin */ |
| {"sgo", HB_TAG_NONE }, /* Songa (retired code) != Sango */ |
| /*{"sgs", HB_TAG('S','G','S',' ')},*/ /* Samogitian */ |
| {"sgw", HB_TAG('C','H','G',' ')}, /* Sebat Bet Gurage -> Chaha Gurage */ |
| {"shi", HB_TAG('S','H','I',' ')}, /* Tachelhit */ |
| {"shi", HB_TAG('B','B','R',' ')}, /* Tachelhit -> Berber */ |
| {"shl", HB_TAG('Q','I','N',' ')}, /* Shendu -> Chin */ |
| /*{"shn", HB_TAG('S','H','N',' ')},*/ /* Shan */ |
| {"shu", HB_TAG('A','R','A',' ')}, /* Chadian Arabic -> Arabic */ |
| {"shy", HB_TAG('B','B','R',' ')}, /* Tachawit -> Berber */ |
| {"si", HB_TAG('S','N','H',' ')}, /* Sinhala (Sinhalese) */ |
| {"sib", HB_TAG_NONE }, /* Sebop != Sibe */ |
| /*{"sid", HB_TAG('S','I','D',' ')},*/ /* Sidamo */ |
| {"sig", HB_TAG_NONE }, /* Paasaal != Silte Gurage */ |
| {"siz", HB_TAG('B','B','R',' ')}, /* Siwi -> Berber */ |
| {"sjd", HB_TAG('K','S','M',' ')}, /* Kildin Sami */ |
| {"sjo", HB_TAG('S','I','B',' ')}, /* Xibe -> Sibe */ |
| {"sjs", HB_TAG('B','B','R',' ')}, /* Senhaja De Srair -> Berber */ |
| {"sk", HB_TAG('S','K','Y',' ')}, /* Slovak */ |
| {"skg", HB_TAG('M','L','G',' ')}, /* Sakalava Malagasy -> Malagasy */ |
| {"skr", HB_TAG('S','R','K',' ')}, /* Saraiki */ |
| {"sks", HB_TAG_NONE }, /* Maia != Skolt Sami */ |
| {"skw", HB_TAG('C','P','P',' ')}, /* Skepi Creole Dutch -> Creoles */ |
| {"sky", HB_TAG_NONE }, /* Sikaiana != Slovak */ |
| {"sl", HB_TAG('S','L','V',' ')}, /* Slovenian */ |
| {"sla", HB_TAG_NONE }, /* Slavic [family] != Slavey */ |
| {"sm", HB_TAG('S','M','O',' ')}, /* Samoan */ |
| {"sma", HB_TAG('S','S','M',' ')}, /* Southern Sami */ |
| {"smj", HB_TAG('L','S','M',' ')}, /* Lule Sami */ |
| {"sml", HB_TAG_NONE }, /* Central Sama != Somali */ |
| {"smn", HB_TAG('I','S','M',' ')}, /* Inari Sami */ |
| {"sms", HB_TAG('S','K','S',' ')}, /* Skolt Sami */ |
| {"smt", HB_TAG('Q','I','N',' ')}, /* Simte -> Chin */ |
| {"sn", HB_TAG('S','N','A','0')}, /* Shona */ |
| {"snh", HB_TAG_NONE }, /* Shinabo (retired code) != Sinhala (Sinhalese) */ |
| /*{"snk", HB_TAG('S','N','K',' ')},*/ /* Soninke */ |
| {"so", HB_TAG('S','M','L',' ')}, /* Somali */ |
| {"sog", HB_TAG_NONE }, /* Sogdian != Sodo Gurage */ |
| /*{"sop", HB_TAG('S','O','P',' ')},*/ /* Songe */ |
| {"spv", HB_TAG('O','R','I',' ')}, /* Sambalpuri -> Odia (formerly Oriya) */ |
| {"spy", HB_TAG('K','A','L',' ')}, /* Sabaot -> Kalenjin */ |
| {"sq", HB_TAG('S','Q','I',' ')}, /* Albanian [macrolanguage] */ |
| {"sr", HB_TAG('S','R','B',' ')}, /* Serbian */ |
| {"srb", HB_TAG_NONE }, /* Sora != Serbian */ |
| {"src", HB_TAG('S','R','D',' ')}, /* Logudorese Sardinian -> Sardinian */ |
| {"srk", HB_TAG_NONE }, /* Serudung Murut != Saraiki */ |
| {"srm", HB_TAG('C','P','P',' ')}, /* Saramaccan -> Creoles */ |
| {"srn", HB_TAG('C','P','P',' ')}, /* Sranan Tongo -> Creoles */ |
| {"sro", HB_TAG('S','R','D',' ')}, /* Campidanese Sardinian -> Sardinian */ |
| /*{"srr", HB_TAG('S','R','R',' ')},*/ /* Serer */ |
| {"srs", HB_TAG('A','T','H',' ')}, /* Sarsi -> Athapaskan */ |
| {"ss", HB_TAG('S','W','Z',' ')}, /* Swati */ |
| {"ssh", HB_TAG('A','R','A',' ')}, /* Shihhi Arabic -> Arabic */ |
| {"ssl", HB_TAG_NONE }, /* Western Sisaala != South Slavey */ |
| {"ssm", HB_TAG_NONE }, /* Semnam != Southern Sami */ |
| {"st", HB_TAG('S','O','T',' ')}, /* Southern Sotho */ |
| {"sta", HB_TAG('C','P','P',' ')}, /* Settla -> Creoles */ |
| /*{"stq", HB_TAG('S','T','Q',' ')},*/ /* Saterfriesisch -> Saterland Frisian */ |
| {"stv", HB_TAG('S','I','G',' ')}, /* Silt'e -> Silte Gurage */ |
| {"su", HB_TAG('S','U','N',' ')}, /* Sundanese */ |
| /*{"suk", HB_TAG('S','U','K',' ')},*/ /* Sukuma */ |
| {"suq", HB_TAG('S','U','R',' ')}, /* Suri */ |
| {"sur", HB_TAG_NONE }, /* Mwaghavul != Suri */ |
| {"sv", HB_TAG('S','V','E',' ')}, /* Swedish */ |
| /*{"sva", HB_TAG('S','V','A',' ')},*/ /* Svan */ |
| {"svc", HB_TAG('C','P','P',' ')}, /* Vincentian Creole English -> Creoles */ |
| {"sve", HB_TAG_NONE }, /* Serili != Swedish */ |
| {"sw", HB_TAG('S','W','K',' ')}, /* Swahili [macrolanguage] */ |
| {"swb", HB_TAG('C','M','R',' ')}, /* Maore Comorian -> Comorian */ |
| {"swc", HB_TAG('S','W','K',' ')}, /* Congo Swahili -> Swahili */ |
| {"swh", HB_TAG('S','W','K',' ')}, /* Swahili */ |
| {"swk", HB_TAG_NONE }, /* Malawi Sena != Swahili */ |
| {"swn", HB_TAG('B','B','R',' ')}, /* Sawknah -> Berber */ |
| {"swv", HB_TAG('M','A','W',' ')}, /* Shekhawati -> Marwari */ |
| /*{"sxu", HB_TAG('S','X','U',' ')},*/ /* Upper Saxon */ |
| {"syc", HB_TAG('S','Y','R',' ')}, /* Classical Syriac -> Syriac */ |
| /*{"syl", HB_TAG('S','Y','L',' ')},*/ /* Sylheti */ |
| /*{"syr", HB_TAG('S','Y','R',' ')},*/ /* Syriac [macrolanguage] */ |
| /*{"szl", HB_TAG('S','Z','L',' ')},*/ /* Silesian */ |
| {"ta", HB_TAG('T','A','M',' ')}, /* Tamil */ |
| {"taa", HB_TAG('A','T','H',' ')}, /* Lower Tanana -> Athapaskan */ |
| /*{"tab", HB_TAG('T','A','B',' ')},*/ /* Tabassaran -> Tabasaran */ |
| {"taj", HB_TAG_NONE }, /* Eastern Tamang != Tajiki */ |
| {"taq", HB_TAG('T','M','H',' ')}, /* Tamasheq -> Tamashek */ |
| {"taq", HB_TAG('B','B','R',' ')}, /* Tamasheq -> Berber */ |
| {"tas", HB_TAG('C','P','P',' ')}, /* Tay Boi -> Creoles */ |
| {"tau", HB_TAG('A','T','H',' ')}, /* Upper Tanana -> Athapaskan */ |
| {"tcb", HB_TAG('A','T','H',' ')}, /* Tanacross -> Athapaskan */ |
| {"tce", HB_TAG('A','T','H',' ')}, /* Southern Tutchone -> Athapaskan */ |
| {"tch", HB_TAG('C','P','P',' ')}, /* Turks And Caicos Creole English -> Creoles */ |
| {"tcp", HB_TAG('Q','I','N',' ')}, /* Tawr Chin -> Chin */ |
| {"tcs", HB_TAG('C','P','P',' ')}, /* Torres Strait Creole -> Creoles */ |
| {"tcy", HB_TAG('T','U','L',' ')}, /* Tulu -> Tumbuka */ |
| {"tcz", HB_TAG('Q','I','N',' ')}, /* Thado Chin -> Chin */ |
| /*{"tdd", HB_TAG('T','D','D',' ')},*/ /* Tai Nüa -> Dehong Dai */ |
| {"tdx", HB_TAG('M','L','G',' ')}, /* Tandroy-Mahafaly Malagasy -> Malagasy */ |
| {"te", HB_TAG('T','E','L',' ')}, /* Telugu */ |
| {"tec", HB_TAG('K','A','L',' ')}, /* Terik -> Kalenjin */ |
| {"tem", HB_TAG('T','M','N',' ')}, /* Timne -> Temne */ |
| /*{"tet", HB_TAG('T','E','T',' ')},*/ /* Tetum */ |
| {"tez", HB_TAG('B','B','R',' ')}, /* Tetserret -> Berber */ |
| {"tfn", HB_TAG('A','T','H',' ')}, /* Tanaina -> Athapaskan */ |
| {"tg", HB_TAG('T','A','J',' ')}, /* Tajik -> Tajiki */ |
| {"tgh", HB_TAG('C','P','P',' ')}, /* Tobagonian Creole English -> Creoles */ |
| {"tgj", HB_TAG('N','I','S',' ')}, /* Tagin -> Nisi */ |
| {"tgn", HB_TAG_NONE }, /* Tandaganon != Tongan */ |
| {"tgr", HB_TAG_NONE }, /* Tareng != Tigre */ |
| {"tgx", HB_TAG('A','T','H',' ')}, /* Tagish -> Athapaskan */ |
| {"tgy", HB_TAG_NONE }, /* Togoyo != Tigrinya */ |
| {"th", HB_TAG('T','H','A',' ')}, /* Thai */ |
| {"tht", HB_TAG('A','T','H',' ')}, /* Tahltan -> Athapaskan */ |
| {"thv", HB_TAG('T','M','H',' ')}, /* Tahaggart Tamahaq -> Tamashek */ |
| {"thv", HB_TAG('B','B','R',' ')}, /* Tahaggart Tamahaq -> Berber */ |
| {"thz", HB_TAG('T','M','H',' ')}, /* Tayart Tamajeq -> Tamashek */ |
| {"thz", HB_TAG('B','B','R',' ')}, /* Tayart Tamajeq -> Berber */ |
| {"ti", HB_TAG('T','G','Y',' ')}, /* Tigrinya */ |
| {"tia", HB_TAG('B','B','R',' ')}, /* Tidikelt Tamazight -> Berber */ |
| {"tig", HB_TAG('T','G','R',' ')}, /* Tigre */ |
| /*{"tiv", HB_TAG('T','I','V',' ')},*/ /* Tiv */ |
| {"tjo", HB_TAG('B','B','R',' ')}, /* Temacine Tamazight -> Berber */ |
| {"tk", HB_TAG('T','K','M',' ')}, /* Turkmen */ |
| {"tkg", HB_TAG('M','L','G',' ')}, /* Tesaka Malagasy -> Malagasy */ |
| {"tkm", HB_TAG_NONE }, /* Takelma != Turkmen */ |
| {"tl", HB_TAG('T','G','L',' ')}, /* Tagalog */ |
| /*{"tli", HB_TAG('T','L','I',' ')},*/ /* Tlingit */ |
| {"tmg", HB_TAG('C','P','P',' ')}, /* Ternateño -> Creoles */ |
| {"tmh", HB_TAG('T','M','H',' ')}, /* Tamashek [macrolanguage] */ |
| {"tmh", HB_TAG('B','B','R',' ')}, /* Tamashek [macrolanguage] -> Berber */ |
| {"tmn", HB_TAG_NONE }, /* Taman (Indonesia) != Temne */ |
| {"tmw", HB_TAG('M','L','Y',' ')}, /* Temuan -> Malay */ |
| {"tn", HB_TAG('T','N','A',' ')}, /* Tswana */ |
| {"tna", HB_TAG_NONE }, /* Tacana != Tswana */ |
| {"tne", HB_TAG_NONE }, /* Tinoc Kallahan (retired code) != Tundra Enets */ |
| {"tnf", HB_TAG('D','R','I',' ')}, /* Tangshewi (retired code) -> Dari */ |
| {"tnf", HB_TAG('F','A','R',' ')}, /* Tangshewi (retired code) -> Persian */ |
| {"tng", HB_TAG_NONE }, /* Tobanga != Tonga */ |
| {"to", HB_TAG('T','G','N',' ')}, /* Tonga (Tonga Islands) -> Tongan */ |
| {"tod", HB_TAG('T','O','D','0')}, /* Toma */ |
| {"toi", HB_TAG('T','N','G',' ')}, /* Tonga (Zambia) */ |
| {"toj", HB_TAG('M','Y','N',' ')}, /* Tojolabal -> Mayan */ |
| {"tol", HB_TAG('A','T','H',' ')}, /* Tolowa -> Athapaskan */ |
| {"tor", HB_TAG('B','A','D','0')}, /* Togbo-Vara Banda -> Banda */ |
| {"tpi", HB_TAG('T','P','I',' ')}, /* Tok Pisin */ |
| {"tpi", HB_TAG('C','P','P',' ')}, /* Tok Pisin -> Creoles */ |
| {"tr", HB_TAG('T','R','K',' ')}, /* Turkish */ |
| {"trf", HB_TAG('C','P','P',' ')}, /* Trinidadian Creole English -> Creoles */ |
| {"trk", HB_TAG_NONE }, /* Turkic [family] != Turkish */ |
| {"tru", HB_TAG('T','U','A',' ')}, /* Turoyo -> Turoyo Aramaic */ |
| {"tru", HB_TAG('S','Y','R',' ')}, /* Turoyo -> Syriac */ |
| {"ts", HB_TAG('T','S','G',' ')}, /* Tsonga */ |
| {"tsg", HB_TAG_NONE }, /* Tausug != Tsonga */ |
| /*{"tsj", HB_TAG('T','S','J',' ')},*/ /* Tshangla */ |
| {"tt", HB_TAG('T','A','T',' ')}, /* Tatar */ |
| {"ttc", HB_TAG('M','Y','N',' ')}, /* Tektiteko -> Mayan */ |
| {"ttm", HB_TAG('A','T','H',' ')}, /* Northern Tutchone -> Athapaskan */ |
| {"ttq", HB_TAG('T','M','H',' ')}, /* Tawallammat Tamajaq -> Tamashek */ |
| {"ttq", HB_TAG('B','B','R',' ')}, /* Tawallammat Tamajaq -> Berber */ |
| {"tua", HB_TAG_NONE }, /* Wiarumus != Turoyo Aramaic */ |
| {"tul", HB_TAG_NONE }, /* Tula != Tumbuka */ |
| /*{"tum", HB_TAG('T','U','M',' ')},*/ /* Tumbuka -> Tulu */ |
| {"tuu", HB_TAG('A','T','H',' ')}, /* Tututni -> Athapaskan */ |
| {"tuv", HB_TAG_NONE }, /* Turkana != Tuvin */ |
| {"tuy", HB_TAG('K','A','L',' ')}, /* Tugen -> Kalenjin */ |
| /*{"tvl", HB_TAG('T','V','L',' ')},*/ /* Tuvalu */ |
| {"tvy", HB_TAG('C','P','P',' ')}, /* Timor Pidgin -> Creoles */ |
| {"tw", HB_TAG('T','W','I',' ')}, /* Twi */ |
| {"tw", HB_TAG('A','K','A',' ')}, /* Twi -> Akan */ |
| {"txc", HB_TAG('A','T','H',' ')}, /* Tsetsaut -> Athapaskan */ |
| {"txy", HB_TAG('M','L','G',' ')}, /* Tanosy Malagasy -> Malagasy */ |
| {"ty", HB_TAG('T','H','T',' ')}, /* Tahitian */ |
| {"tyv", HB_TAG('T','U','V',' ')}, /* Tuvinian -> Tuvin */ |
| /*{"tyz", HB_TAG('T','Y','Z',' ')},*/ /* Tày */ |
| {"tzh", HB_TAG('M','Y','N',' ')}, /* Tzeltal -> Mayan */ |
| {"tzj", HB_TAG('M','Y','N',' ')}, /* Tz'utujil -> Mayan */ |
| {"tzm", HB_TAG('T','Z','M',' ')}, /* Central Atlas Tamazight -> Tamazight */ |
| {"tzm", HB_TAG('B','B','R',' ')}, /* Central Atlas Tamazight -> Berber */ |
| {"tzo", HB_TAG('T','Z','O',' ')}, /* Tzotzil */ |
| {"tzo", HB_TAG('M','Y','N',' ')}, /* Tzotzil -> Mayan */ |
| {"ubl", HB_TAG('B','I','K',' ')}, /* Buhi'non Bikol -> Bikol */ |
| /*{"udm", HB_TAG('U','D','M',' ')},*/ /* Udmurt */ |
| {"ug", HB_TAG('U','Y','G',' ')}, /* Uyghur */ |
| {"uk", HB_TAG('U','K','R',' ')}, /* Ukrainian */ |
| {"uki", HB_TAG('K','U','I',' ')}, /* Kui (India) */ |
| {"uln", HB_TAG('C','P','P',' ')}, /* Unserdeutsch -> Creoles */ |
| /*{"umb", HB_TAG('U','M','B',' ')},*/ /* Umbundu */ |
| {"unr", HB_TAG('M','U','N',' ')}, /* Mundari */ |
| {"ur", HB_TAG('U','R','D',' ')}, /* Urdu */ |
| {"urk", HB_TAG('M','L','Y',' ')}, /* Urak Lawoi' -> Malay */ |
| {"usp", HB_TAG('M','Y','N',' ')}, /* Uspanteco -> Mayan */ |
| {"uz", HB_TAG('U','Z','B',' ')}, /* Uzbek [macrolanguage] */ |
| {"uzn", HB_TAG('U','Z','B',' ')}, /* Northern Uzbek -> Uzbek */ |
| {"uzs", HB_TAG('U','Z','B',' ')}, /* Southern Uzbek -> Uzbek */ |
| {"vap", HB_TAG('Q','I','N',' ')}, /* Vaiphei -> Chin */ |
| {"ve", HB_TAG('V','E','N',' ')}, /* Venda */ |
| /*{"vec", HB_TAG('V','E','C',' ')},*/ /* Venetian */ |
| {"vi", HB_TAG('V','I','T',' ')}, /* Vietnamese */ |
| {"vic", HB_TAG('C','P','P',' ')}, /* Virgin Islands Creole English -> Creoles */ |
| {"vit", HB_TAG_NONE }, /* Viti != Vietnamese */ |
| {"vkk", HB_TAG('M','L','Y',' ')}, /* Kaur -> Malay */ |
| {"vkp", HB_TAG('C','P','P',' ')}, /* Korlai Creole Portuguese -> Creoles */ |
| {"vkt", HB_TAG('M','L','Y',' ')}, /* Tenggarong Kutai Malay -> Malay */ |
| {"vls", HB_TAG('F','L','E',' ')}, /* Vlaams -> Dutch (Flemish) */ |
| {"vmw", HB_TAG('M','A','K',' ')}, /* Makhuwa */ |
| {"vo", HB_TAG('V','O','L',' ')}, /* Volapük */ |
| /*{"vro", HB_TAG('V','R','O',' ')},*/ /* Võro */ |
| {"wa", HB_TAG('W','L','N',' ')}, /* Walloon */ |
| {"wag", HB_TAG_NONE }, /* Wa'ema != Wagdi */ |
| /*{"war", HB_TAG('W','A','R',' ')},*/ /* Waray (Philippines) -> Waray-Waray */ |
| {"wbm", HB_TAG('W','A',' ',' ')}, /* Wa */ |
| {"wbr", HB_TAG('W','A','G',' ')}, /* Wagdi */ |
| {"wbr", HB_TAG('R','A','J',' ')}, /* Wagdi -> Rajasthani */ |
| /*{"wci", HB_TAG('W','C','I',' ')},*/ /* Waci Gbe */ |
| {"wea", HB_TAG('K','R','N',' ')}, /* Wewaw -> Karen */ |
| {"wes", HB_TAG('C','P','P',' ')}, /* Cameroon Pidgin -> Creoles */ |
| {"weu", HB_TAG('Q','I','N',' ')}, /* Rawngtu Chin -> Chin */ |
| {"wlc", HB_TAG('C','M','R',' ')}, /* Mwali Comorian -> Comorian */ |
| {"wle", HB_TAG('S','I','G',' ')}, /* Wolane -> Silte Gurage */ |
| {"wlk", HB_TAG('A','T','H',' ')}, /* Wailaki -> Athapaskan */ |
| {"wni", HB_TAG('C','M','R',' ')}, /* Ndzwani Comorian -> Comorian */ |
| {"wo", HB_TAG('W','L','F',' ')}, /* Wolof */ |
| {"wry", HB_TAG('M','A','W',' ')}, /* Merwari -> Marwari */ |
| {"wsg", HB_TAG('G','O','N',' ')}, /* Adilabad Gondi -> Gondi */ |
| /*{"wtm", HB_TAG('W','T','M',' ')},*/ /* Mewati */ |
| {"wuu", HB_TAG('Z','H','S',' ')}, /* Wu Chinese -> Chinese, Simplified */ |
| {"xal", HB_TAG('K','L','M',' ')}, /* Kalmyk */ |
| {"xal", HB_TAG('T','O','D',' ')}, /* Kalmyk -> Todo */ |
| {"xan", HB_TAG('S','E','K',' ')}, /* Xamtanga -> Sekota */ |
| {"xbd", HB_TAG_NONE }, /* Bindal != Lü */ |
| {"xh", HB_TAG('X','H','S',' ')}, /* Xhosa */ |
| /*{"xjb", HB_TAG('X','J','B',' ')},*/ /* Minjungbal -> Minjangbal */ |
| /*{"xkf", HB_TAG('X','K','F',' ')},*/ /* Khengkha */ |
| {"xmg", HB_TAG('B','M','L',' ')}, /* Mengaka -> Bamileke */ |
| {"xmm", HB_TAG('M','L','Y',' ')}, /* Manado Malay -> Malay */ |
| {"xmm", HB_TAG('C','P','P',' ')}, /* Manado Malay -> Creoles */ |
| {"xmv", HB_TAG('M','L','G',' ')}, /* Antankarana Malagasy -> Malagasy */ |
| {"xmw", HB_TAG('M','L','G',' ')}, /* Tsimihety Malagasy -> Malagasy */ |
| {"xnj", HB_TAG('S','X','T',' ')}, /* Ngoni (Tanzania) -> Sutu */ |
| {"xnq", HB_TAG('S','X','T',' ')}, /* Ngoni (Mozambique) -> Sutu */ |
| {"xnr", HB_TAG('D','G','R',' ')}, /* Kangri -> Dogri (macrolanguage) */ |
| /*{"xog", HB_TAG('X','O','G',' ')},*/ /* Soga */ |
| {"xpe", HB_TAG('X','P','E',' ')}, /* Liberia Kpelle -> Kpelle (Liberia) */ |
| {"xpe", HB_TAG('K','P','L',' ')}, /* Liberia Kpelle -> Kpelle */ |
| {"xsl", HB_TAG('S','S','L',' ')}, /* South Slavey */ |
| {"xsl", HB_TAG('S','L','A',' ')}, /* South Slavey -> Slavey */ |
| {"xsl", HB_TAG('A','T','H',' ')}, /* South Slavey -> Athapaskan */ |
| {"xst", HB_TAG('S','I','G',' ')}, /* Silt'e (retired code) -> Silte Gurage */ |
| /*{"xub", HB_TAG('X','U','B',' ')},*/ /* Betta Kurumba -> Bette Kuruma */ |
| /*{"xuj", HB_TAG('X','U','J',' ')},*/ /* Jennu Kurumba -> Jennu Kuruma */ |
| {"xup", HB_TAG('A','T','H',' ')}, /* Upper Umpqua -> Athapaskan */ |
| {"xwo", HB_TAG('T','O','D',' ')}, /* Written Oirat -> Todo */ |
| {"yaj", HB_TAG('B','A','D','0')}, /* Banda-Yangere -> Banda */ |
| {"yak", HB_TAG_NONE }, /* Yakama != Sakha */ |
| /*{"yao", HB_TAG('Y','A','O',' ')},*/ /* Yao */ |
| /*{"yap", HB_TAG('Y','A','P',' ')},*/ /* Yapese */ |
| {"yba", HB_TAG_NONE }, /* Yala != Yoruba */ |
| {"ybb", HB_TAG('B','M','L',' ')}, /* Yemba -> Bamileke */ |
| {"ybd", HB_TAG('A','R','K',' ')}, /* Yangbye (retired code) -> Rakhine */ |
| {"ydd", HB_TAG('J','I','I',' ')}, /* Eastern Yiddish -> Yiddish */ |
| /*{"ygp", HB_TAG('Y','G','P',' ')},*/ /* Gepo */ |
| {"yi", HB_TAG('J','I','I',' ')}, /* Yiddish [macrolanguage] */ |
| {"yih", HB_TAG('J','I','I',' ')}, /* Western Yiddish -> Yiddish */ |
| {"yim", HB_TAG_NONE }, /* Yimchungru Naga != Yi Modern */ |
| /*{"yna", HB_TAG('Y','N','A',' ')},*/ /* Aluo */ |
| {"yo", HB_TAG('Y','B','A',' ')}, /* Yoruba */ |
| {"yos", HB_TAG('Q','I','N',' ')}, /* Yos (retired code) -> Chin */ |
| {"yua", HB_TAG('M','Y','N',' ')}, /* Yucateco -> Mayan */ |
| {"yue", HB_TAG('Z','H','H',' ')}, /* Yue Chinese -> Chinese, Traditional, Hong Kong SAR */ |
| /*{"ywq", HB_TAG('Y','W','Q',' ')},*/ /* Wuding-Luquan Yi */ |
| {"za", HB_TAG('Z','H','A',' ')}, /* Zhuang [macrolanguage] */ |
| {"zch", HB_TAG('Z','H','A',' ')}, /* Central Hongshuihe Zhuang -> Zhuang */ |
| {"zdj", HB_TAG('C','M','R',' ')}, /* Ngazidja Comorian -> Comorian */ |
| /*{"zea", HB_TAG('Z','E','A',' ')},*/ /* Zeeuws -> Zealandic */ |
| {"zeh", HB_TAG('Z','H','A',' ')}, /* Eastern Hongshuihe Zhuang -> Zhuang */ |
| {"zen", HB_TAG('B','B','R',' ')}, /* Zenaga -> Berber */ |
| {"zgb", HB_TAG('Z','H','A',' ')}, /* Guibei Zhuang -> Zhuang */ |
| {"zgh", HB_TAG('Z','G','H',' ')}, /* Standard Moroccan Tamazight */ |
| {"zgh", HB_TAG('B','B','R',' ')}, /* Standard Moroccan Tamazight -> Berber */ |
| {"zgm", HB_TAG('Z','H','A',' ')}, /* Minz Zhuang -> Zhuang */ |
| {"zgn", HB_TAG('Z','H','A',' ')}, /* Guibian Zhuang -> Zhuang */ |
| {"zh", HB_TAG('Z','H','S',' ')}, /* Chinese, Simplified [macrolanguage] */ |
| {"zhd", HB_TAG('Z','H','A',' ')}, /* Dai Zhuang -> Zhuang */ |
| {"zhn", HB_TAG('Z','H','A',' ')}, /* Nong Zhuang -> Zhuang */ |
| {"zlj", HB_TAG('Z','H','A',' ')}, /* Liujiang Zhuang -> Zhuang */ |
| {"zlm", HB_TAG('M','L','Y',' ')}, /* Malay */ |
| {"zln", HB_TAG('Z','H','A',' ')}, /* Lianshan Zhuang -> Zhuang */ |
| {"zlq", HB_TAG('Z','H','A',' ')}, /* Liuqian Zhuang -> Zhuang */ |
| {"zmi", HB_TAG('M','L','Y',' ')}, /* Negeri Sembilan Malay -> Malay */ |
| {"zmz", HB_TAG('B','A','D','0')}, /* Mbandja -> Banda */ |
| {"znd", HB_TAG_NONE }, /* Zande [family] != Zande */ |
| {"zne", HB_TAG('Z','N','D',' ')}, /* Zande */ |
| {"zom", HB_TAG('Q','I','N',' ')}, /* Zou -> Chin */ |
| {"zqe", HB_TAG('Z','H','A',' ')}, /* Qiubei Zhuang -> Zhuang */ |
| {"zsm", HB_TAG('M','L','Y',' ')}, /* Standard Malay -> Malay */ |
| {"zu", HB_TAG('Z','U','L',' ')}, /* Zulu */ |
| {"zum", HB_TAG('L','R','C',' ')}, /* Kumzari -> Luri */ |
| {"zyb", HB_TAG('Z','H','A',' ')}, /* Yongbei Zhuang -> Zhuang */ |
| {"zyg", HB_TAG('Z','H','A',' ')}, /* Yang Zhuang -> Zhuang */ |
| {"zyj", HB_TAG('Z','H','A',' ')}, /* Youjiang Zhuang -> Zhuang */ |
| {"zyn", HB_TAG('Z','H','A',' ')}, /* Yongnan Zhuang -> Zhuang */ |
| {"zyp", HB_TAG('Q','I','N',' ')}, /* Zyphe Chin -> Chin */ |
| /*{"zza", HB_TAG('Z','Z','A',' ')},*/ /* Zazaki [macrolanguage] */ |
| {"zzj", HB_TAG('Z','H','A',' ')}, /* Zuojiang Zhuang -> Zhuang */ |
| }; |
| |
| /** |
| * hb_ot_tags_from_complex_language: |
| * @lang_str: a BCP 47 language tag to convert. |
| * @limit: a pointer to the end of the substring of @lang_str to consider for |
| * conversion. |
| * @count: maximum number of language tags to retrieve (IN) and actual number of |
| * language tags retrieved (OUT). If no tags are retrieved, it is not modified. |
| * @tags: array of size at least @language_count to store the language tag |
| * results |
| * |
| * Converts a multi-subtag BCP 47 language tag to language tags. |
| * |
| * Return value: Whether any language systems were retrieved. |
| **/ |
| static bool |
| hb_ot_tags_from_complex_language (const char *lang_str, |
| const char *limit, |
| unsigned int *count /* IN/OUT */, |
| hb_tag_t *tags /* OUT */) |
| { |
| if (subtag_matches (lang_str, limit, "-fonnapa")) |
| { |
| /* Undetermined; North American Phonetic Alphabet */ |
| tags[0] = HB_TAG('A','P','P','H'); /* Phonetic transcription—Americanist conventions */ |
| *count = 1; |
| return true; |
| } |
| if (subtag_matches (lang_str, limit, "-polyton")) |
| { |
| /* Modern Greek (1453-); Polytonic Greek */ |
| tags[0] = HB_TAG('P','G','R',' '); /* Polytonic Greek */ |
| *count = 1; |
| return true; |
| } |
| if (subtag_matches (lang_str, limit, "-arevmda")) |
| { |
| /* Armenian; Western Armenian (retired code) */ |
| tags[0] = HB_TAG('H','Y','E',' '); /* Armenian */ |
| *count = 1; |
| return true; |
| } |
| if (subtag_matches (lang_str, limit, "-provenc")) |
| { |
| /* Occitan (post 1500); Provençal */ |
| tags[0] = HB_TAG('P','R','O',' '); /* Provençal / Old Provençal */ |
| *count = 1; |
| return true; |
| } |
| if (subtag_matches (lang_str, limit, "-fonipa")) |
| { |
| /* Undetermined; International Phonetic Alphabet */ |
| tags[0] = HB_TAG('I','P','P','H'); /* Phonetic transcription—IPA conventions */ |
| *count = 1; |
| return true; |
| } |
| if (subtag_matches (lang_str, limit, "-geok")) |
| { |
| /* Undetermined; Khutsuri (Asomtavruli and Nuskhuri) */ |
| tags[0] = HB_TAG('K','G','E',' '); /* Khutsuri Georgian */ |
| *count = 1; |
| return true; |
| } |
| if (subtag_matches (lang_str, limit, "-syre")) |
| { |
| /* Undetermined; Syriac (Estrangelo variant) */ |
| tags[0] = HB_TAG('S','Y','R','E'); /* Syriac, Estrangela script-variant (equivalent to ISO 15924 'Syre') */ |
| *count = 1; |
| return true; |
| } |
| if (subtag_matches (lang_str, limit, "-syrj")) |
| { |
| /* Undetermined; Syriac (Western variant) */ |
| tags[0] = HB_TAG('S','Y','R','J'); /* Syriac, Western script-variant (equivalent to ISO 15924 'Syrj') */ |
| *count = 1; |
| return true; |
| } |
| if (subtag_matches (lang_str, limit, "-syrn")) |
| { |
| /* Undetermined; Syriac (Eastern variant) */ |
| tags[0] = HB_TAG('S','Y','R','N'); /* Syriac, Eastern script-variant (equivalent to ISO 15924 'Syrn') */ |
| *count = 1; |
| return true; |
| } |
| switch (lang_str[0]) |
| { |
| case 'a': |
| if (0 == strcmp (&lang_str[1], "rt-lojban")) |
| { |
| /* Lojban (retired code) */ |
| tags[0] = HB_TAG('J','B','O',' '); /* Lojban */ |
| *count = 1; |
| return true; |
| } |
| break; |
| case 'c': |
| if (lang_matches (&lang_str[1], "do-hant-hk")) |
| { |
| /* Min Dong Chinese; Han (Traditional variant); Hong Kong */ |
| tags[0] = HB_TAG('Z','H','H',' '); /* Chinese, Traditional, Hong Kong SAR */ |
| *count = 1; |
| return true; |
| } |
| if (lang_matches (&lang_str[1], "do-hant-mo")) |
| { |
| /* Min Dong Chinese; Han (Traditional variant); Macao */ |
| unsigned int i; |
| hb_tag_t possible_tags[] = { |
| HB_TAG('Z','H','T','M'), /* Chinese, Traditional, Macao SAR */ |
| HB_TAG('Z','H','H',' '), /* Chinese, Traditional, Hong Kong SAR */ |
| }; |
| for (i = 0; i < 2 && i < *count; i++) |
| tags[i] = possible_tags[i]; |
| *count = i; |
| return true; |
| } |
| if (lang_matches (&lang_str[1], "jy-hant-hk")) |
| { |
| /* Jinyu Chinese; Han (Traditional variant); Hong Kong */ |
| tags[0] = HB_TAG('Z','H','H',' '); /* Chinese, Traditional, Hong Kong SAR */ |
| *count = 1; |
| return true; |
| } |
| if (lang_matches (&lang_str[1], "jy-hant-mo")) |
| { |
| /* Jinyu Chinese; Han (Traditional variant); Macao */ |
| unsigned int i; |
| hb_tag_t possible_tags[] = { |
| HB_TAG('Z','H','T','M'), /* Chinese, Traditional, Macao SAR */ |
| HB_TAG('Z','H','H',' '), /* Chinese, Traditional, Hong Kong SAR */ |
| }; |
| for (i = 0; i < 2 && i < *count; i++) |
| tags[i] = possible_tags[i]; |
| *count = i; |
| return true; |
| } |
| if (lang_matches (&lang_str[1], "mn-hant-hk")) |
| { |
| /* Mandarin Chinese; Han (Traditional variant); Hong Kong */ |
| tags[0] = HB_TAG('Z','H','H',' '); /* Chinese, Traditional, Hong Kong SAR */ |
| *count = 1; |
| return true; |
| } |
| if (lang_matches (&lang_str[1], "mn-hant-mo")) |
| { |
| /* Mandarin Chinese; Han (Traditional variant); Macao */ |
| unsigned int i; |
| hb_tag_t possible_tags[] = { |
| HB_TAG('Z','H','T','M'), /* Chinese, Traditional, Macao SAR */ |
| HB_TAG('Z','H','H',' '), /* Chinese, Traditional, Hong Kong SAR */ |
| }; |
| for (i = 0; i < 2 && i < *count; i++) |
| tags[i] = possible_tags[i]; |
| *count = i; |
| return true; |
| } |
| if (lang_matches (&lang_str[1], "np-hant-hk")) |
| { |
| /* Northern Ping Chinese; Han (Traditional variant); Hong Kong */ |
| tags[0] = HB_TAG('Z','H','H',' '); /* Chinese, Traditional, Hong Kong SAR */ |
| *count = 1; |
| return true; |
| } |
| if (lang_matches (&lang_str[1], "np-hant-mo")) |
| { |
| /* Northern Ping Chinese; Han (Traditional variant); Macao */ |
| unsigned int i; |
| hb_tag_t possible_tags[] = { |
| HB_TAG('Z','H','T','M'), /* Chinese, Traditional, Macao SAR */ |
| HB_TAG('Z','H','H',' '), /* Chinese, Traditional, Hong Kong SAR */ |
| }; |
| for (i = 0; i < 2 && i < *count; i++) |
| tags[i] = possible_tags[i]; |
| *count = i; |
| return true; |
| } |
| if (lang_matches (&lang_str[1], "px-hant-hk")) |
| { |
| /* Pu-Xian Chinese; Han (Traditional variant); Hong Kong */ |
| tags[0] = HB_TAG('Z','H','H',' '); /* Chinese, Traditional, Hong Kong SAR */ |
| *count = 1; |
| return true; |
| } |
| if (lang_matches (&lang_str[1], "px-hant-mo")) |
| { |
| /* Pu-Xian Chinese; Han (Traditional variant); Macao */ |
| unsigned int i; |
| hb_tag_t possible_tags[] = { |
| HB_TAG('Z','H','T','M'), /* Chinese, Traditional, Macao SAR */ |
| HB_TAG('Z','H','H',' '), /* Chinese, Traditional, Hong Kong SAR */ |
| }; |
| for (i = 0; i < 2 && i < *count; i++) |
| tags[i] = possible_tags[i]; |
| *count = i; |
| return true; |
| } |
| if (lang_matches (&lang_str[1], "sp-hant-hk")) |
| { |
| /* Southern Ping Chinese; Han (Traditional variant); Hong Kong */ |
| tags[0] = HB_TAG('Z','H','H',' '); /* Chinese, Traditional, Hong Kong SAR */ |
| *count = 1; |
| return true; |
| } |
| if (lang_matches (&lang_str[1], "sp-hant-mo")) |
| { |
| /* Southern Ping Chinese; Han (Traditional variant); Macao */ |
| unsigned int i; |
| hb_tag_t possible_tags[] = { |
| HB_TAG('Z','H','T','M'), /* Chinese, Traditional, Macao SAR */ |
| HB_TAG('Z','H','H',' '), /* Chinese, Traditional, Hong Kong SAR */ |
| }; |
| for (i = 0; i < 2 && i < *count; i++) |
| tags[i] = possible_tags[i]; |
| *count = i; |
| return true; |
| } |
| if (lang_matches (&lang_str[1], "zh-hant-hk")) |
| { |
| /* Huizhou Chinese; Han (Traditional variant); Hong Kong */ |
| tags[0] = HB_TAG('Z','H','H',' '); /* Chinese, Traditional, Hong Kong SAR */ |
| *count = 1; |
| return true; |
| } |
| if (lang_matches (&lang_str[1], "zh-hant-mo")) |
| { |
| /* Huizhou Chinese; Han (Traditional variant); Macao */ |
| unsigned int i; |
| hb_tag_t possible_tags[] = { |
| HB_TAG('Z','H','T','M'), /* Chinese, Traditional, Macao SAR */ |
| HB_TAG('Z','H','H',' '), /* Chinese, Traditional, Hong Kong SAR */ |
| }; |
| for (i = 0; i < 2 && i < *count; i++) |
| tags[i] = possible_tags[i]; |
| *count = i; |
| return true; |
| } |
| if (lang_matches (&lang_str[1], "zo-hant-hk")) |
| { |
| /* Min Zhong Chinese; Han (Traditional variant); Hong Kong */ |
| tags[0] = HB_TAG('Z','H','H',' '); /* Chinese, Traditional, Hong Kong SAR */ |
| *count = 1; |
| return true; |
| } |
| if (lang_matches (&lang_str[1], "zo-hant-mo")) |
| { |
| /* Min Zhong Chinese; Han (Traditional variant); Macao */ |
| unsigned int i; |
| hb_tag_t possible_tags[] = { |
| HB_TAG('Z','H','T','M'), /* Chinese, Traditional, Macao SAR */ |
| HB_TAG('Z','H','H',' '), /* Chinese, Traditional, Hong Kong SAR */ |
| }; |
| for (i = 0; i < 2 && i < *count; i++) |
| tags[i] = possible_tags[i]; |
| *count = i; |
| return true; |
| } |
| if (lang_matches (&lang_str[1], "do-hans")) |
| { |
| /* Min Dong Chinese; Han (Simplified variant) */ |
| tags[0] = HB_TAG('Z','H','S',' '); /* Chinese, Simplified */ |
| *count = 1; |
| return true; |
| } |
| if (lang_matches (&lang_str[1], "do-hant")) |
| { |
| /* Min Dong Chinese; Han (Traditional variant) */ |
| tags[0] = HB_TAG('Z','H','T',' '); /* Chinese, Traditional */ |
| *count = 1; |
| return true; |
| } |
| if (lang_matches (&lang_str[1], "jy-hans")) |
| { |
| /* Jinyu Chinese; Han (Simplified variant) */ |
| tags[0] = HB_TAG('Z','H','S',' '); /* Chinese, Simplified */ |
| *count = 1; |
| return true; |
| } |
| if (lang_matches (&lang_str[1], "jy-hant")) |
| { |
| /* Jinyu Chinese; Han (Traditional variant) */ |
| tags[0] = HB_TAG('Z','H','T',' '); /* Chinese, Traditional */ |
| *count = 1; |
| return true; |
| } |
| if (lang_matches (&lang_str[1], "mn-hans")) |
| { |
| /* Mandarin Chinese; Han (Simplified variant) */ |
| tags[0] = HB_TAG('Z','H','S',' '); /* Chinese, Simplified */ |
| *count = 1; |
| return true; |
| } |
| if (lang_matches (&lang_str[1], "mn-hant")) |
| { |
| /* Mandarin Chinese; Han (Traditional variant) */ |
| tags[0] = HB_TAG('Z','H','T',' '); /* Chinese, Traditional */ |
| *count = 1; |
| return true; |
| } |
| if (lang_matches (&lang_str[1], "np-hans")) |
| { |
| /* Northern Ping Chinese; Han (Simplified variant) */ |
| tags[0] = HB_TAG('Z','H','S',' '); /* Chinese, Simplified */ |
| *count = 1; |
| return true; |
| } |
| if (lang_matches (&lang_str[1], "np-hant")) |
| { |
| /* Northern Ping Chinese; Han (Traditional variant) */ |
| tags[0] = HB_TAG('Z','H','T',' '); /* Chinese, Traditional */ |
| *count = 1; |
| return true; |
| } |
| if (lang_matches (&lang_str[1], "px-hans")) |
| { |
| /* Pu-Xian Chinese; Han (Simplified variant) */ |
| tags[0] = HB_TAG('Z','H','S',' '); /* Chinese, Simplified */ |
| *count = 1; |
| return true; |
| } |
| if (lang_matches (&lang_str[1], "px-hant")) |
| { |
| /* Pu-Xian Chinese; Han (Traditional variant) */ |
| tags[0] = HB_TAG('Z','H','T',' '); /* Chinese, Traditional */ |
| *count = 1; |
| return true; |
| } |
| if (lang_matches (&lang_str[1], "sp-hans")) |
| { |
| /* Southern Ping Chinese; Han (Simplified variant) */ |
| tags[0] = HB_TAG('Z','H','S',' '); /* Chinese, Simplified */ |
| *count = 1; |
| return true; |
| } |
| if (lang_matches (&lang_str[1], "sp-hant")) |
| { |
| /* Southern Ping Chinese; Han (Traditional variant) */ |
| tags[0] = HB_TAG('Z','H','T',' '); /* Chinese, Traditional */ |
| *count = 1; |
| return true; |
| } |
| if (lang_matches (&lang_str[1], "zh-hans")) |
| { |
| /* Huizhou Chinese; Han (Simplified variant) */ |
| tags[0] = HB_TAG('Z','H','S',' '); /* Chinese, Simplified */ |
| *count = 1; |
| return true; |
| } |
| if (lang_matches (&lang_str[1], "zh-hant")) |
| { |
| /* Huizhou Chinese; Han (Traditional variant) */ |
| tags[0] = HB_TAG('Z','H','T',' '); /* Chinese, Traditional */ |
| *count = 1; |
| return true; |
| } |
| if (lang_matches (&lang_str[1], "zo-hans")) |
| { |
| /* Min Zhong Chinese; Han (Simplified variant) */ |
| tags[0] = HB_TAG('Z','H','S',' '); /* Chinese, Simplified */ |
| *count = 1; |
| return true; |
| } |
| if (lang_matches (&lang_str[1], "zo-hant")) |
| { |
| /* Min Zhong Chinese; Han (Traditional variant) */ |
| tags[0] = HB_TAG('Z','H','T',' '); /* Chinese, Traditional */ |
| *count = 1; |
| return true; |
| } |
| if (0 == strncmp (&lang_str[1], "do-", 3) |
| && subtag_matches (lang_str, limit, "-hk")) |
| { |
| /* Min Dong Chinese; Hong Kong */ |
| tags[0] = HB_TAG('Z','H','H',' '); /* Chinese, Traditional, Hong Kong SAR */ |
| *count = 1; |
| return true; |
| } |
| if (0 == strncmp (&lang_str[1], "do-", 3) |
| && subtag_matches (lang_str, limit, "-mo")) |
| { |
| /* Min Dong Chinese; Macao */ |
| unsigned int i; |
| hb_tag_t possible_tags[] = { |
| HB_TAG('Z','H','T','M'), /* Chinese, Traditional, Macao SAR */ |
| HB_TAG('Z','H','H',' '), /* Chinese, Traditional, Hong Kong SAR */ |
| }; |
| for (i = 0; i < 2 && i < *count; i++) |
| tags[i] = possible_tags[i]; |
| *count = i; |
| return true; |
| } |
| if (0 == strncmp (&lang_str[1], "do-", 3) |
| && subtag_matches (lang_str, limit, "-tw")) |
| { |
| /* Min Dong Chinese; Taiwan, Province of China */ |
| tags[0] = HB_TAG('Z','H','T',' '); /* Chinese, Traditional */ |
| *count = 1; |
| return true; |
| } |
| if (0 == strncmp (&lang_str[1], "jy-", 3) |
| && subtag_matches (lang_str, limit, "-hk")) |
| { |
| /* Jinyu Chinese; Hong Kong */ |
| tags[0] = HB_TAG('Z','H','H',' '); /* Chinese, Traditional, Hong Kong SAR */ |
| *count = 1; |
| return true; |
| } |
| if (0 == strncmp (&lang_str[1], "jy-", 3) |
| && subtag_matches (lang_str, limit, "-mo")) |
| { |
| /* Jinyu Chinese; Macao */ |
| unsigned int i; |
| hb_tag_t possible_tags[] = { |
| HB_TAG('Z','H','T','M'), /* Chinese, Traditional, Macao SAR */ |
| HB_TAG('Z','H','H',' '), /* Chinese, Traditional, Hong Kong SAR */ |
| }; |
| for (i = 0; i < 2 && i < *count; i++) |
| tags[i] = possible_tags[i]; |
| *count = i; |
| return true; |
| } |
| if (0 == strncmp (&lang_str[1], "jy-", 3) |
| && subtag_matches (lang_str, limit, "-tw")) |
| { |
| /* Jinyu Chinese; Taiwan, Province of China */ |
| tags[0] = HB_TAG('Z','H','T',' '); /* Chinese, Traditional */ |
| *count = 1; |
| return true; |
| } |
| if (0 == strncmp (&lang_str[1], "mn-", 3) |
| && subtag_matches (lang_str, limit, "-hk")) |
| { |
| /* Mandarin Chinese; Hong Kong */ |
| tags[0] = HB_TAG('Z','H','H',' '); /* Chinese, Traditional, Hong Kong SAR */ |
| *count = 1; |
| return true; |
| } |
| if (0 == strncmp (&lang_str[1], "mn-", 3) |
| && subtag_matches (lang_str, limit, "-mo")) |
| { |
| /* Mandarin Chinese; Macao */ |
| unsigned int i; |
| hb_tag_t possible_tags[] = { |
| HB_TAG('Z','H','T','M'), /* Chinese, Traditional, Macao SAR */ |
| HB_TAG('Z','H','H',' '), /* Chinese, Traditional, Hong Kong SAR */ |
| }; |
| for (i = 0; i < 2 && i < *count; i++) |
| tags[i] = possible_tags[i]; |
| *count = i; |
| return true; |
| } |
| if (0 == strncmp (&lang_str[1], "mn-", 3) |
| && subtag_matches (lang_str, limit, "-tw")) |
| { |
| /* Mandarin Chinese; Taiwan, Province of China */ |
| tags[0] = HB_TAG('Z','H','T',' '); /* Chinese, Traditional */ |
| *count = 1; |
| return true; |
| } |
| if (0 == strncmp (&lang_str[1], "np-", 3) |
| && subtag_matches (lang_str, limit, "-hk")) |
| { |
| /* Northern Ping Chinese; Hong Kong */ |
| tags[0] = HB_TAG('Z','H','H',' '); /* Chinese, Traditional, Hong Kong SAR */ |
| *count = 1; |
| return true; |
| } |
| if (0 == strncmp (&lang_str[1], "np-", 3) |
| && subtag_matches (lang_str, limit, "-mo")) |
| { |
| /* Northern Ping Chinese; Macao */ |
| unsigned int i; |
| hb_tag_t possible_tags[] = { |
| HB_TAG('Z','H','T','M'), /* Chinese, Traditional, Macao SAR */ |
| HB_TAG('Z','H','H',' '), /* Chinese, Traditional, Hong Kong SAR */ |
| }; |
| for (i = 0; i < 2 && i < *count; i++) |
| tags[i] = possible_tags[i]; |
| *count = i; |
| return true; |
| } |
| if (0 == strncmp (&lang_str[1], "np-", 3) |
| && subtag_matches (lang_str, limit, "-tw")) |
| { |
| /* Northern Ping Chinese; Taiwan, Province of China */ |
| tags[0] = HB_TAG('Z','H','T',' '); /* Chinese, Traditional */ |
| *count = 1; |
| return true; |
| } |
| if (0 == strncmp (&lang_str[1], "px-", 3) |
| && subtag_matches (lang_str, limit, "-hk")) |
| { |
| /* Pu-Xian Chinese; Hong Kong */ |
| tags[0] = HB_TAG('Z','H','H',' '); /* Chinese, Traditional, Hong Kong SAR */ |
| *count = 1; |
| return true; |
| } |
| if (0 == strncmp (&lang_str[1], "px-", 3) |
| && subtag_matches (lang_str, limit, "-mo")) |
| { |
| /* Pu-Xian Chinese; Macao */ |
| unsigned int i; |
| hb_tag_t possible_tags[] = { |
| HB_TAG('Z','H','T','M'), /* Chinese, Traditional, Macao SAR */ |
| HB_TAG('Z','H','H',' '), /* Chinese, Traditional, Hong Kong SAR */ |
| }; |
| for (i = 0; i < 2 && i < *count; i++) |
| tags[i] = possible_tags[i]; |
| *count = i; |
| return true; |
| } |
| if (0 == strncmp (&lang_str[1], "px-", 3) |
| && subtag_matches (lang_str, limit, "-tw")) |
| { |
| /* Pu-Xian Chinese; Taiwan, Province of China */ |
| tags[0] = HB_TAG('Z','H','T',' '); /* Chinese, Traditional */ |
| *count = 1; |
| return true; |
| } |
| if (0 == strncmp (&lang_str[1], "sp-", 3) |
| && subtag_matches (lang_str, limit, "-hk")) |
| { |
| /* Southern Ping Chinese; Hong Kong */ |
| tags[0] = HB_TAG('Z','H','H',' '); /* Chinese, Traditional, Hong Kong SAR */ |
| *count = 1; |
| return true; |
| } |
| if (0 == strncmp (&lang_str[1], "sp-", 3) |
| && subtag_matches (lang_str, limit, "-mo")) |
| { |
| /* Southern Ping Chinese; Macao */ |
| unsigned int i; |
| hb_tag_t possible_tags[] = { |
| HB_TAG('Z','H','T','M'), /* Chinese, Traditional, Macao SAR */ |
| HB_TAG('Z','H','H',' '), /* Chinese, Traditional, Hong Kong SAR */ |
| }; |
| for (i = 0; i < 2 && i < *count; i++) |
| tags[i] = possible_tags[i]; |
| *count = i; |
| return true; |
| } |
| if (0 == strncmp (&lang_str[1], "sp-", 3) |
| && subtag_matches (lang_str, limit, "-tw")) |
| { |
| /* Southern Ping Chinese; Taiwan, Province of China */ |
| tags[0] = HB_TAG('Z','H','T',' '); /* Chinese, Traditional */ |
| *count = 1; |
| return true; |
| } |
| if (0 == strncmp (&lang_str[1], "zh-", 3) |
| && subtag_matches (lang_str, limit, "-hk")) |
| { |
| /* Huizhou Chinese; Hong Kong */ |
| tags[0] = HB_TAG('Z','H','H',' '); /* Chinese, Traditional, Hong Kong SAR */ |
| *count = 1; |
| return true; |
| } |
| if (0 == strncmp (&lang_str[1], "zh-", 3) |
| && subtag_matches (lang_str, limit, "-mo")) |
| { |
| /* Huizhou Chinese; Macao */ |
| unsigned int i; |
| hb_tag_t possible_tags[] = { |
| HB_TAG('Z','H','T','M'), /* Chinese, Traditional, Macao SAR */ |
| HB_TAG('Z','H','H',' '), /* Chinese, Traditional, Hong Kong SAR */ |
| }; |
| for (i = 0; i < 2 && i < *count; i++) |
| tags[i] = possible_tags[i]; |
| *count = i; |
| return true; |
| } |
| if (0 == strncmp (&lang_str[1], "zh-", 3) |
| && subtag_matches (lang_str, limit, "-tw")) |
| { |
| /* Huizhou Chinese; Taiwan, Province of China */ |
| tags[0] = HB_TAG('Z','H','T',' '); /* Chinese, Traditional */ |
| *count = 1; |
| return true; |
| } |
| if (0 == strncmp (&lang_str[1], "zo-", 3) |
| && subtag_matches (lang_str, limit, "-hk")) |
| { |
| /* Min Zhong Chinese; Hong Kong */ |
| tags[0] = HB_TAG('Z','H','H',' '); /* Chinese, Traditional, Hong Kong SAR */ |
| *count = 1; |
| return true; |
| } |
| if (0 == strncmp (&lang_str[1], "zo-", 3) |
| && subtag_matches (lang_str, limit, "-mo")) |
| { |
| /* Min Zhong Chinese; Macao */ |
| unsigned int i; |
| hb_tag_t possible_tags[] = { |
| HB_TAG('Z','H','T','M'), /* Chinese, Traditional, Macao SAR */ |
| HB_TAG('Z','H','H',' '), /* Chinese, Traditional, Hong Kong SAR */ |
| }; |
| for (i = 0; i < 2 && i < *count; i++) |
| tags[i] = possible_tags[i]; |
| *count = i; |
| return true; |
| } |
| if (0 == strncmp (&lang_str[1], "zo-", 3) |
| && subtag_matches (lang_str, limit, "-tw")) |
| { |
| /* Min Zhong Chinese; Taiwan, Province of China */ |
| tags[0] = HB_TAG('Z','H','T',' '); /* Chinese, Traditional */ |
| *count = 1; |
| return true; |
| } |
| break; |
| case 'g': |
| if (lang_matches (&lang_str[1], "an-hant-hk")) |
| { |
| /* Gan Chinese; Han (Traditional variant); Hong Kong */ |
| tags[0] = HB_TAG('Z','H','H',' '); /* Chinese, Traditional, Hong Kong SAR */ |
| *count = 1; |
| return true; |
| } |
| if (lang_matches (&lang_str[1], "an-hant-mo")) |
| { |
| /* Gan Chinese; Han (Traditional variant); Macao */ |
| unsigned int i; |
| hb_tag_t possible_tags[] = { |
| HB_TAG('Z','H','T','M'), /* Chinese, Traditional, Macao SAR */ |
| HB_TAG('Z','H','H',' '), /* Chinese, Traditional, Hong Kong SAR */ |
| }; |
| for (i = 0; i < 2 && i < *count; i++) |
| tags[i] = possible_tags[i]; |
| *count = i; |
| return true; |
| } |
| if (lang_matches (&lang_str[1], "an-hans")) |
| { |
| /* Gan Chinese; Han (Simplified variant) */ |
| tags[0] = HB_TAG('Z','H','S',' '); /* Chinese, Simplified */ |
| *count = 1; |
| return true; |
| } |
| if (lang_matches (&lang_str[1], "an-hant")) |
| { |
| /* Gan Chinese; Han (Traditional variant) */ |
| tags[0] = HB_TAG('Z','H','T',' '); /* Chinese, Traditional */ |
| *count = 1; |
| return true; |
| } |
| if (lang_matches (&lang_str[1], "a-latg")) |
| { |
| /* Irish; Latin (Gaelic variant) */ |
| tags[0] = HB_TAG('I','R','T',' '); /* Irish Traditional */ |
| *count = 1; |
| return true; |
| } |
| if (0 == strncmp (&lang_str[1], "an-", 3) |
| && subtag_matches (lang_str, limit, "-hk")) |
| { |
| /* Gan Chinese; Hong Kong */ |
| tags[0] = HB_TAG('Z','H','H',' '); /* Chinese, Traditional, Hong Kong SAR */ |
| *count = 1; |
| return true; |
| } |
| if (0 == strncmp (&lang_str[1], "an-", 3) |
| && subtag_matches (lang_str, limit, "-mo")) |
| { |
| /* Gan Chinese; Macao */ |
| unsigned int i; |
| hb_tag_t possible_tags[] = { |
| HB_TAG('Z','H','T','M'), /* Chinese, Traditional, Macao SAR */ |
| HB_TAG('Z','H','H',' '), /* Chinese, Traditional, Hong Kong SAR */ |
| }; |
| for (i = 0; i < 2 && i < *count; i++) |
| tags[i] = possible_tags[i]; |
| *count = i; |
| return true; |
| } |
| if (0 == strncmp (&lang_str[1], "an-", 3) |
| && subtag_matches (lang_str, limit, "-tw")) |
| { |
| /* Gan Chinese; Taiwan, Province of China */ |
| tags[0] = HB_TAG('Z','H','T',' '); /* Chinese, Traditional */ |
| *count = 1; |
| return true; |
| } |
| break; |
| case 'h': |
| if (lang_matches (&lang_str[1], "ak-hant-hk")) |
| { |
| /* Hakka Chinese; Han (Traditional variant); Hong Kong */ |
| tags[0] = HB_TAG('Z','H','H',' '); /* Chinese, Traditional, Hong Kong SAR */ |
| *count = 1; |
| return true; |
| } |
| if (lang_matches (&lang_str[1], "ak-hant-mo")) |
| { |
| /* Hakka Chinese; Han (Traditional variant); Macao */ |
| unsigned int i; |
| hb_tag_t possible_tags[] = { |
| HB_TAG('Z','H','T','M'), /* Chinese, Traditional, Macao SAR */ |
| HB_TAG('Z','H','H',' '), /* Chinese, Traditional, Hong Kong SAR */ |
| }; |
| for (i = 0; i < 2 && i < *count; i++) |
| tags[i] = possible_tags[i]; |
| *count = i; |
| return true; |
| } |
| if (lang_matches (&lang_str[1], "sn-hant-hk")) |
| { |
| /* Xiang Chinese; Han (Traditional variant); Hong Kong */ |
| tags[0] = HB_TAG('Z','H','H',' '); /* Chinese, Traditional, Hong Kong SAR */ |
| *count = 1; |
| return true; |
| } |
| if (lang_matches (&lang_str[1], "sn-hant-mo")) |
| { |
| /* Xiang Chinese; Han (Traditional variant); Macao */ |
| unsigned int i; |
| hb_tag_t possible_tags[] = { |
| HB_TAG('Z','H','T','M'), /* Chinese, Traditional, Macao SAR */ |
| HB_TAG('Z','H','H',' '), /* Chinese, Traditional, Hong Kong SAR */ |
| }; |
| for (i = 0; i < 2 && i < *count; i++) |
| tags[i] = possible_tags[i]; |
| *count = i; |
| return true; |
| } |
| if (lang_matches (&lang_str[1], "ak-hans")) |
| { |
| /* Hakka Chinese; Han (Simplified variant) */ |
| tags[0] = HB_TAG('Z','H','S',' '); /* Chinese, Simplified */ |
| *count = 1; |
| return true; |
| } |
| if (lang_matches (&lang_str[1], "ak-hant")) |
| { |
| /* Hakka Chinese; Han (Traditional variant) */ |
| tags[0] = HB_TAG('Z','H','T',' '); /* Chinese, Traditional */ |
| *count = 1; |
| return true; |
| } |
| if (lang_matches (&lang_str[1], "sn-hans")) |
| { |
| /* Xiang Chinese; Han (Simplified variant) */ |
| tags[0] = HB_TAG('Z','H','S',' '); /* Chinese, Simplified */ |
| *count = 1; |
| return true; |
| } |
| if (lang_matches (&lang_str[1], "sn-hant")) |
| { |
| /* Xiang Chinese; Han (Traditional variant) */ |
| tags[0] = HB_TAG('Z','H','T',' '); /* Chinese, Traditional */ |
| *count = 1; |
| return true; |
| } |
| if (0 == strncmp (&lang_str[1], "ak-", 3) |
| && subtag_matches (lang_str, limit, "-hk")) |
| { |
| /* Hakka Chinese; Hong Kong */ |
| tags[0] = HB_TAG('Z','H','H',' '); /* Chinese, Traditional, Hong Kong SAR */ |
| *count = 1; |
| return true; |
| } |
| if (0 == strncmp (&lang_str[1], "ak-", 3) |
| && subtag_matches (lang_str, limit, "-mo")) |
| { |
| /* Hakka Chinese; Macao */ |
| unsigned int i; |
| hb_tag_t possible_tags[] = { |
| HB_TAG('Z','H','T','M'), /* Chinese, Traditional, Macao SAR */ |
| HB_TAG('Z','H','H',' '), /* Chinese, Traditional, Hong Kong SAR */ |
| }; |
| for (i = 0; i < 2 && i < *count; i++) |
| tags[i] = possible_tags[i]; |
| *count = i; |
| return true; |
| } |
| if (0 == strncmp (&lang_str[1], "ak-", 3) |
| && subtag_matches (lang_str, limit, "-tw")) |
| { |
| /* Hakka Chinese; Taiwan, Province of China */ |
| tags[0] = HB_TAG('Z','H','T',' '); /* Chinese, Traditional */ |
| *count = 1; |
| return true; |
| } |
| if (0 == strncmp (&lang_str[1], "sn-", 3) |
| && subtag_matches (lang_str, limit, "-hk")) |
| { |
| /* Xiang Chinese; Hong Kong */ |
| tags[0] = HB_TAG('Z','H','H',' '); /* Chinese, Traditional, Hong Kong SAR */ |
| *count = 1; |
| return true; |
| } |
| if (0 == strncmp (&lang_str[1], "sn-", 3) |
| && subtag_matches (lang_str, limit, "-mo")) |
| { |
| /* Xiang Chinese; Macao */ |
| unsigned int i; |
| hb_tag_t possible_tags[] = { |
| HB_TAG('Z','H','T','M'), /* Chinese, Traditional, Macao SAR */ |
| HB_TAG('Z','H','H',' '), /* Chinese, Traditional, Hong Kong SAR */ |
| }; |
| for (i = 0; i < 2 && i < *count; i++) |
| tags[i] = possible_tags[i]; |
| *count = i; |
| return true; |
| } |
| if (0 == strncmp (&lang_str[1], "sn-", 3) |
| && subtag_matches (lang_str, limit, "-tw")) |
| { |
| /* Xiang Chinese; Taiwan, Province of China */ |
| tags[0] = HB_TAG('Z','H','T',' '); /* Chinese, Traditional */ |
| *count = 1; |
| return true; |
| } |
| break; |
| case 'i': |
| if (0 == strcmp (&lang_str[1], "-navajo")) |
| { |
| /* Navajo (retired code) */ |
| unsigned int i; |
| hb_tag_t possible_tags[] = { |
| HB_TAG('N','A','V',' '), /* Navajo */ |
| HB_TAG('A','T','H',' '), /* Athapaskan */ |
| }; |
| for (i = 0; i < 2 && i < *count; i++) |
| tags[i] = possible_tags[i]; |
| *count = i; |
| return true; |
| } |
| if (0 == strcmp (&lang_str[1], "-hak")) |
| { |
| /* Hakka (retired code) */ |
| tags[0] = HB_TAG('Z','H','S',' '); /* Chinese, Simplified */ |
| *count = 1; |
| return true; |
| } |
| if (0 == strcmp (&lang_str[1], "-lux")) |
| { |
| /* Luxembourgish (retired code) */ |
| tags[0] = HB_TAG('L','T','Z',' '); /* Luxembourgish */ |
| *count = 1; |
| return true; |
| } |
| break; |
| case 'l': |
| if (lang_matches (&lang_str[1], "zh-hans")) |
| { |
| /* Literary Chinese; Han (Simplified variant) */ |
| tags[0] = HB_TAG('Z','H','S',' '); /* Chinese, Simplified */ |
| *count = 1; |
| return true; |
| } |
| break; |
| case 'm': |
| if (lang_matches (&lang_str[1], "np-hant-hk")) |
| { |
| /* Min Bei Chinese; Han (Traditional variant); Hong Kong */ |
| tags[0] = HB_TAG('Z','H','H',' '); /* Chinese, Traditional, Hong Kong SAR */ |
| *count = 1; |
| return true; |
| } |
| if (lang_matches (&lang_str[1], "np-hant-mo")) |
| { |
| /* Min Bei Chinese; Han (Traditional variant); Macao */ |
| unsigned int i; |
| hb_tag_t possible_tags[] = { |
| HB_TAG('Z','H','T','M'), /* Chinese, Traditional, Macao SAR */ |
| HB_TAG('Z','H','H',' '), /* Chinese, Traditional, Hong Kong SAR */ |
| }; |
| for (i = 0; i < 2 && i < *count; i++) |
| tags[i] = possible_tags[i]; |
| *count = i; |
| return true; |
| } |
| if (lang_matches (&lang_str[1], "np-hans")) |
| { |
| /* Min Bei Chinese; Han (Simplified variant) */ |
| tags[0] = HB_TAG('Z','H','S',' '); /* Chinese, Simplified */ |
| *count = 1; |
| return true; |
| } |
| if (lang_matches (&lang_str[1], "np-hant")) |
| { |
| /* Min Bei Chinese; Han (Traditional variant) */ |
| tags[0] = HB_TAG('Z','H','T',' '); /* Chinese, Traditional */ |
| *count = 1; |
| return true; |
| } |
| if (0 == strncmp (&lang_str[1], "np-", 3) |
| && subtag_matches (lang_str, limit, "-hk")) |
| { |
| /* Min Bei Chinese; Hong Kong */ |
| tags[0] = HB_TAG('Z','H','H',' '); /* Chinese, Traditional, Hong Kong SAR */ |
| *count = 1; |
| return true; |
| } |
| if (0 == strncmp (&lang_str[1], "np-", 3) |
| && subtag_matches (lang_str, limit, "-mo")) |
| { |
| /* Min Bei Chinese; Macao */ |
| unsigned int i; |
| hb_tag_t possible_tags[] = { |
| HB_TAG('Z','H','T','M'), /* Chinese, Traditional, Macao SAR */ |
| HB_TAG('Z','H','H',' '), /* Chinese, Traditional, Hong Kong SAR */ |
| }; |
| for (i = 0; i < 2 && i < *count; i++) |
| tags[i] = possible_tags[i]; |
| *count = i; |
| return true; |
| } |
| if (0 == strncmp (&lang_str[1], "np-", 3) |
| && subtag_matches (lang_str, limit, "-tw")) |
| { |
| /* Min Bei Chinese; Taiwan, Province of China */ |
| tags[0] = HB_TAG('Z','H','T',' '); /* Chinese, Traditional */ |
| *count = 1; |
| return true; |
| } |
| break; |
| case 'n': |
| if (lang_matches (&lang_str[1], "an-hant-hk")) |
| { |
| /* Min Nan Chinese; Han (Traditional variant); Hong Kong */ |
| tags[0] = HB_TAG('Z','H','H',' '); /* Chinese, Traditional, Hong Kong SAR */ |
| *count = 1; |
| return true; |
| } |
| if (lang_matches (&lang_str[1], "an-hant-mo")) |
| { |
| /* Min Nan Chinese; Han (Traditional variant); Macao */ |
| unsigned int i; |
| hb_tag_t possible_tags[] = { |
| HB_TAG('Z','H','T','M'), /* Chinese, Traditional, Macao SAR */ |
| HB_TAG('Z','H','H',' '), /* Chinese, Traditional, Hong Kong SAR */ |
| }; |
| for (i = 0; i < 2 && i < *count; i++) |
| tags[i] = possible_tags[i]; |
| *count = i; |
| return true; |
| } |
| if (lang_matches (&lang_str[1], "an-hans")) |
| { |
| /* Min Nan Chinese; Han (Simplified variant) */ |
| tags[0] = HB_TAG('Z','H','S',' '); /* Chinese, Simplified */ |
| *count = 1; |
| return true; |
| } |
| if (lang_matches (&lang_str[1], "an-hant")) |
| { |
| /* Min Nan Chinese; Han (Traditional variant) */ |
| tags[0] = HB_TAG('Z','H','T',' '); /* Chinese, Traditional */ |
| *count = 1; |
| return true; |
| } |
| if (0 == strncmp (&lang_str[1], "an-", 3) |
| && subtag_matches (lang_str, limit, "-hk")) |
| { |
| /* Min Nan Chinese; Hong Kong */ |
| tags[0] = HB_TAG('Z','H','H',' '); /* Chinese, Traditional, Hong Kong SAR */ |
| *count = 1; |
| return true; |
| } |
| if (0 == strncmp (&lang_str[1], "an-", 3) |
| && subtag_matches (lang_str, limit, "-mo")) |
| { |
| /* Min Nan Chinese; Macao */ |
| unsigned int i; |
| hb_tag_t possible_tags[] = { |
| HB_TAG('Z','H','T','M'), /* Chinese, Traditional, Macao SAR */ |
| HB_TAG('Z','H','H',' '), /* Chinese, Traditional, Hong Kong SAR */ |
| }; |
| for (i = 0; i < 2 && i < *count; i++) |
| tags[i] = possible_tags[i]; |
| *count = i; |
| return true; |
| } |
| if (0 == strncmp (&lang_str[1], "an-", 3) |
| && subtag_matches (lang_str, limit, "-tw")) |
| { |
| /* Min Nan Chinese; Taiwan, Province of China */ |
| tags[0] = HB_TAG('Z','H','T',' '); /* Chinese, Traditional */ |
| *count = 1; |
| return true; |
| } |
| if (0 == strcmp (&lang_str[1], "o-bok")) |
| { |
| /* Norwegian Bokmal (retired code) */ |
| tags[0] = HB_TAG('N','O','R',' '); /* Norwegian */ |
| *count = 1; |
| return true; |
| } |
| if (0 == strcmp (&lang_str[1], "o-nyn")) |
| { |
| /* Norwegian Nynorsk (retired code) */ |
| unsigned int i; |
| hb_tag_t possible_tags[] = { |
| HB_TAG('N','Y','N',' '), /* Norwegian Nynorsk (Nynorsk, Norwegian) */ |
| HB_TAG('N','O','R',' '), /* Norwegian */ |
| }; |
| for (i = 0; i < 2 && i < *count; i++) |
| tags[i] = possible_tags[i]; |
| *count = i; |
| return true; |
| } |
| break; |
| case 'r': |
| if (0 == strncmp (&lang_str[1], "o-", 2) |
| && subtag_matches (lang_str, limit, "-md")) |
| { |
| /* Romanian; Moldova */ |
| tags[0] = HB_TAG('M','O','L',' '); /* Moldavian */ |
| *count = 1; |
| return true; |
| } |
| break; |
| case 'w': |
| if (lang_matches (&lang_str[1], "uu-hant-hk")) |
| { |
| /* Wu Chinese; Han (Traditional variant); Hong Kong */ |
| tags[0] = HB_TAG('Z','H','H',' '); /* Chinese, Traditional, Hong Kong SAR */ |
| *count = 1; |
| return true; |
| } |
| if (lang_matches (&lang_str[1], "uu-hant-mo")) |
| { |
| /* Wu Chinese; Han (Traditional variant); Macao */ |
| unsigned int i; |
| hb_tag_t possible_tags[] = { |
| HB_TAG('Z','H','T','M'), /* Chinese, Traditional, Macao SAR */ |
| HB_TAG('Z','H','H',' '), /* Chinese, Traditional, Hong Kong SAR */ |
| }; |
| for (i = 0; i < 2 && i < *count; i++) |
| tags[i] = possible_tags[i]; |
| *count = i; |
| return true; |
| } |
| if (lang_matches (&lang_str[1], "uu-hans")) |
| { |
| /* Wu Chinese; Han (Simplified variant) */ |
| tags[0] = HB_TAG('Z','H','S',' '); /* Chinese, Simplified */ |
| *count = 1; |
| return true; |
| } |
| if (lang_matches (&lang_str[1], "uu-hant")) |
| { |
| /* Wu Chinese; Han (Traditional variant) */ |
| tags[0] = HB_TAG('Z','H','T',' '); /* Chinese, Traditional */ |
| *count = 1; |
| return true; |
| } |
| if (0 == strncmp (&lang_str[1], "uu-", 3) |
| && subtag_matches (lang_str, limit, "-hk")) |
| { |
| /* Wu Chinese; Hong Kong */ |
| tags[0] = HB_TAG('Z','H','H',' '); /* Chinese, Traditional, Hong Kong SAR */ |
| *count = 1; |
| return true; |
| } |
| if (0 == strncmp (&lang_str[1], "uu-", 3) |
| && subtag_matches (lang_str, limit, "-mo")) |
| { |
| /* Wu Chinese; Macao */ |
| unsigned int i; |
| hb_tag_t possible_tags[] = { |
| HB_TAG('Z','H','T','M'), /* Chinese, Traditional, Macao SAR */ |
| HB_TAG('Z','H','H',' '), /* Chinese, Traditional, Hong Kong SAR */ |
| }; |
| for (i = 0; i < 2 && i < *count; i++) |
| tags[i] = possible_tags[i]; |
| *count = i; |
| return true; |
| } |
| if (0 == strncmp (&lang_str[1], "uu-", 3) |
| && subtag_matches (lang_str, limit, "-tw")) |
| { |
| /* Wu Chinese; Taiwan, Province of China */ |
| tags[0] = HB_TAG('Z','H','T',' '); /* Chinese, Traditional */ |
| *count = 1; |
| return true; |
| } |
| break; |
| case 'y': |
| if (lang_matches (&lang_str[1], "ue-hans")) |
| { |
| /* Yue Chinese; Han (Simplified variant) */ |
| tags[0] = HB_TAG('Z','H','S',' '); /* Chinese, Simplified */ |
| *count = 1; |
| return true; |
| } |
| break; |
| case 'z': |
| if (lang_matches (&lang_str[1], "h-hant-hk")) |
| { |
| /* Chinese [macrolanguage]; Han (Traditional variant); Hong Kong */ |
| tags[0] = HB_TAG('Z','H','H',' '); /* Chinese, Traditional, Hong Kong SAR */ |
| *count = 1; |
| return true; |
| } |
| if (lang_matches (&lang_str[1], "h-hant-mo")) |
| { |
| /* Chinese [macrolanguage]; Han (Traditional variant); Macao */ |
| unsigned int i; |
| hb_tag_t possible_tags[] = { |
| HB_TAG('Z','H','T','M'), /* Chinese, Traditional, Macao SAR */ |
| HB_TAG('Z','H','H',' '), /* Chinese, Traditional, Hong Kong SAR */ |
| }; |
| for (i = 0; i < 2 && i < *count; i++) |
| tags[i] = possible_tags[i]; |
| *count = i; |
| return true; |
| } |
| if (0 == strcmp (&lang_str[1], "h-min-nan")) |
| { |
| /* Minnan, Hokkien, Amoy, Taiwanese, Southern Min, Southern Fujian, Hoklo, Southern Fukien, Ho-lo (retired code) */ |
| tags[0] = HB_TAG('Z','H','S',' '); /* Chinese, Simplified */ |
| *count = 1; |
| return true; |
| } |
| if (lang_matches (&lang_str[1], "h-hans")) |
| { |
| /* Chinese [macrolanguage]; Han (Simplified variant) */ |
| tags[0] = HB_TAG('Z','H','S',' '); /* Chinese, Simplified */ |
| *count = 1; |
| return true; |
| } |
| if (lang_matches (&lang_str[1], "h-hant")) |
| { |
| /* Chinese [macrolanguage]; Han (Traditional variant) */ |
| tags[0] = HB_TAG('Z','H','T',' '); /* Chinese, Traditional */ |
| *count = 1; |
| return true; |
| } |
| if (0 == strcmp (&lang_str[1], "h-min")) |
| { |
| /* Min, Fuzhou, Hokkien, Amoy, or Taiwanese (retired code) */ |
| tags[0] = HB_TAG('Z','H','S',' '); /* Chinese, Simplified */ |
| *count = 1; |
| return true; |
| } |
| if (0 == strncmp (&lang_str[1], "h-", 2) |
| && subtag_matches (lang_str, limit, "-hk")) |
| { |
| /* Chinese [macrolanguage]; Hong Kong */ |
| tags[0] = HB_TAG('Z','H','H',' '); /* Chinese, Traditional, Hong Kong SAR */ |
| *count = 1; |
| return true; |
| } |
| if (0 == strncmp (&lang_str[1], "h-", 2) |
| && subtag_matches (lang_str, limit, "-mo")) |
| { |
| /* Chinese [macrolanguage]; Macao */ |
| unsigned int i; |
| hb_tag_t possible_tags[] = { |
| HB_TAG('Z','H','T','M'), /* Chinese, Traditional, Macao SAR */ |
| HB_TAG('Z','H','H',' '), /* Chinese, Traditional, Hong Kong SAR */ |
| }; |
| for (i = 0; i < 2 && i < *count; i++) |
| tags[i] = possible_tags[i]; |
| *count = i; |
| return true; |
| } |
| if (0 == strncmp (&lang_str[1], "h-", 2) |
| && subtag_matches (lang_str, limit, "-tw")) |
| { |
| /* Chinese [macrolanguage]; Taiwan, Province of China */ |
| tags[0] = HB_TAG('Z','H','T',' '); /* Chinese, Traditional */ |
| *count = 1; |
| return true; |
| } |
| break; |
| } |
| return false; |
| } |
| |
| /** |
| * hb_ot_ambiguous_tag_to_language |
| * @tag: A language tag. |
| * |
| * Converts @tag to a BCP 47 language tag if it is ambiguous (it corresponds to |
| * many language tags) and the best tag is not the alphabetically first, or if |
| * the best tag consists of multiple subtags, or if the best tag does not appear |
| * in #ot_languages. |
| * |
| * Return value: The #hb_language_t corresponding to the BCP 47 language tag, |
| * or #HB_LANGUAGE_INVALID if @tag is not ambiguous. |
| **/ |
| static hb_language_t |
| hb_ot_ambiguous_tag_to_language (hb_tag_t tag) |
| { |
| switch (tag) |
| { |
| case HB_TAG('A','L','T',' '): /* Altai */ |
| return hb_language_from_string ("alt", -1); /* Southern Altai */ |
| case HB_TAG('A','P','P','H'): /* Phonetic transcription—Americanist conventions */ |
| return hb_language_from_string ("und-fonnapa", -1); /* Undetermined; North American Phonetic Alphabet */ |
| case HB_TAG('A','R','A',' '): /* Arabic */ |
| return hb_language_from_string ("ar", -1); /* Arabic [macrolanguage] */ |
| case HB_TAG('A','R','K',' '): /* Rakhine */ |
| return hb_language_from_string ("rki", -1); /* Rakhine */ |
| case HB_TAG('A','T','H',' '): /* Athapaskan */ |
| return hb_language_from_string ("ath", -1); /* Athapascan [family] */ |
| case HB_TAG('B','B','R',' '): /* Berber */ |
| return hb_language_from_string ("ber", -1); /* Berber [family] */ |
| case HB_TAG('B','I','K',' '): /* Bikol */ |
| return hb_language_from_string ("bik", -1); /* Bikol [macrolanguage] */ |
| case HB_TAG('B','T','K',' '): /* Batak */ |
| return hb_language_from_string ("btk", -1); /* Batak [family] */ |
| case HB_TAG('C','P','P',' '): /* Creoles */ |
| return hb_language_from_string ("crp", -1); /* Creoles and pidgins [family] */ |
| case HB_TAG('C','R','R',' '): /* Carrier */ |
| return hb_language_from_string ("crx", -1); /* Carrier */ |
| case HB_TAG('D','G','R',' '): /* Dogri (macrolanguage) */ |
| return hb_language_from_string ("doi", -1); /* Dogri [macrolanguage] */ |
| case HB_TAG('D','N','K',' '): /* Dinka */ |
| return hb_language_from_string ("din", -1); /* Dinka [macrolanguage] */ |
| case HB_TAG('D','R','I',' '): /* Dari */ |
| return hb_language_from_string ("prs", -1); /* Dari */ |
| case HB_TAG('D','Z','N',' '): /* Dzongkha */ |
| return hb_language_from_string ("dz", -1); /* Dzongkha */ |
| case HB_TAG('E','T','I',' '): /* Estonian */ |
| return hb_language_from_string ("et", -1); /* Estonian [macrolanguage] */ |
| case HB_TAG('F','A','R',' '): /* Persian */ |
| return hb_language_from_string ("fa", -1); /* Persian [macrolanguage] */ |
| case HB_TAG('G','O','N',' '): /* Gondi */ |
| return hb_language_from_string ("gon", -1); /* Gondi [macrolanguage] */ |
| case HB_TAG('H','M','N',' '): /* Hmong */ |
| return hb_language_from_string ("hmn", -1); /* Hmong [macrolanguage] */ |
| case HB_TAG('H','N','D',' '): /* Hindko */ |
| return hb_language_from_string ("hnd", -1); /* Southern Hindko */ |
| case HB_TAG('H','Y','E',' '): /* Armenian */ |
| return hb_language_from_string ("hyw", -1); /* Western Armenian */ |
| case HB_TAG('I','B','A',' '): /* Iban */ |
| return hb_language_from_string ("iba", -1); /* Iban */ |
| case HB_TAG('I','J','O',' '): /* Ijo */ |
| return hb_language_from_string ("ijo", -1); /* Ijo [family] */ |
| case HB_TAG('I','N','U',' '): /* Inuktitut */ |
| return hb_language_from_string ("iu", -1); /* Inuktitut [macrolanguage] */ |
| case HB_TAG('I','P','K',' '): /* Inupiat */ |
| return hb_language_from_string ("ik", -1); /* Inupiaq [macrolanguage] */ |
| case HB_TAG('I','P','P','H'): /* Phonetic transcription—IPA conventions */ |
| return hb_language_from_string ("und-fonipa", -1); /* Undetermined; International Phonetic Alphabet */ |
| case HB_TAG('I','R','T',' '): /* Irish Traditional */ |
| return hb_language_from_string ("ga-Latg", -1); /* Irish; Latin (Gaelic variant) */ |
| case HB_TAG('J','I','I',' '): /* Yiddish */ |
| return hb_language_from_string ("yi", -1); /* Yiddish [macrolanguage] */ |
| case HB_TAG('K','A','L',' '): /* Kalenjin */ |
| return hb_language_from_string ("kln", -1); /* Kalenjin [macrolanguage] */ |
| case HB_TAG('K','G','E',' '): /* Khutsuri Georgian */ |
| return hb_language_from_string ("und-Geok", -1); /* Undetermined; Khutsuri (Asomtavruli and Nuskhuri) */ |
| case HB_TAG('K','N','R',' '): /* Kanuri */ |
| return hb_language_from_string ("kr", -1); /* Kanuri [macrolanguage] */ |
| case HB_TAG('K','O','H',' '): /* Korean Old Hangul */ |
| return hb_language_from_string ("okm", -1); /* Middle Korean (10th-16th cent.) */ |
| case HB_TAG('K','O','K',' '): /* Konkani */ |
| return hb_language_from_string ("kok", -1); /* Konkani [macrolanguage] */ |
| case HB_TAG('K','O','M',' '): /* Komi */ |
| return hb_language_from_string ("kv", -1); /* Komi [macrolanguage] */ |
| case HB_TAG('K','P','L',' '): /* Kpelle */ |
| return hb_language_from_string ("kpe", -1); /* Kpelle [macrolanguage] */ |
| case HB_TAG('K','R','N',' '): /* Karen */ |
| return hb_language_from_string ("kar", -1); /* Karen [family] */ |
| case HB_TAG('K','U','I',' '): /* Kui */ |
| return hb_language_from_string ("uki", -1); /* Kui (India) */ |
| case HB_TAG('K','U','R',' '): /* Kurdish */ |
| return hb_language_from_string ("ku", -1); /* Kurdish [macrolanguage] */ |
| case HB_TAG('L','U','H',' '): /* Luyia */ |
| return hb_language_from_string ("luy", -1); /* Luyia [macrolanguage] */ |
| case HB_TAG('L','V','I',' '): /* Latvian */ |
| return hb_language_from_string ("lv", -1); /* Latvian [macrolanguage] */ |
| case HB_TAG('M','A','W',' '): /* Marwari */ |
| return hb_language_from_string ("mwr", -1); /* Marwari [macrolanguage] */ |
| case HB_TAG('M','L','G',' '): /* Malagasy */ |
| return hb_language_from_string ("mg", -1); /* Malagasy [macrolanguage] */ |
| case HB_TAG('M','L','Y',' '): /* Malay */ |
| return hb_language_from_string ("ms", -1); /* Malay [macrolanguage] */ |
| case HB_TAG('M','N','G',' '): /* Mongolian */ |
| return hb_language_from_string ("mn", -1); /* Mongolian [macrolanguage] */ |
| case HB_TAG('M','N','K',' '): /* Maninka */ |
| return hb_language_from_string ("man", -1); /* Mandingo [macrolanguage] */ |
| case HB_TAG('M','O','L',' '): /* Moldavian */ |
| return hb_language_from_string ("ro-MD", -1); /* Romanian; Moldova */ |
| case HB_TAG('M','Y','N',' '): /* Mayan */ |
| return hb_language_from_string ("myn", -1); /* Mayan [family] */ |
| case HB_TAG('N','A','H',' '): /* Nahuatl */ |
| return hb_language_from_string ("nah", -1); /* Nahuatl [family] */ |
| case HB_TAG('N','E','P',' '): /* Nepali */ |
| return hb_language_from_string ("ne", -1); /* Nepali [macrolanguage] */ |
| case HB_TAG('N','I','S',' '): /* Nisi */ |
| return hb_language_from_string ("njz", -1); /* Nyishi */ |
| case HB_TAG('N','O','R',' '): /* Norwegian */ |
| return hb_language_from_string ("no", -1); /* Norwegian [macrolanguage] */ |
| case HB_TAG('O','J','B',' '): /* Ojibway */ |
| return hb_language_from_string ("oj", -1); /* Ojibwa [macrolanguage] */ |
| case HB_TAG('O','R','O',' '): /* Oromo */ |
| return hb_language_from_string ("om", -1); /* Oromo [macrolanguage] */ |
| case HB_TAG('P','A','S',' '): /* Pashto */ |
| return hb_language_from_string ("ps", -1); /* Pashto [macrolanguage] */ |
| case HB_TAG('P','G','R',' '): /* Polytonic Greek */ |
| return hb_language_from_string ("el-polyton", -1); /* Modern Greek (1453-); Polytonic Greek */ |
| case HB_TAG('P','R','O',' '): /* Provençal / Old Provençal */ |
| return hb_language_from_string ("pro", -1); /* Old Provençal (to 1500) */ |
| case HB_TAG('Q','U','H',' '): /* Quechua (Bolivia) */ |
| return hb_language_from_string ("quh", -1); /* South Bolivian Quechua */ |
| case HB_TAG('Q','U','Z',' '): /* Quechua */ |
| return hb_language_from_string ("qu", -1); /* Quechua [macrolanguage] */ |
| case HB_TAG('Q','V','I',' '): /* Quechua (Ecuador) */ |
| return hb_language_from_string ("qvi", -1); /* Imbabura Highland Quichua */ |
| case HB_TAG('Q','W','H',' '): /* Quechua (Peru) */ |
| return hb_language_from_string ("qwh", -1); /* Huaylas Ancash Quechua */ |
| case HB_TAG('R','A','J',' '): /* Rajasthani */ |
| return hb_language_from_string ("raj", -1); /* Rajasthani [macrolanguage] */ |
| case HB_TAG('R','O','Y',' '): /* Romany */ |
| return hb_language_from_string ("rom", -1); /* Romany [macrolanguage] */ |
| case HB_TAG('S','Q','I',' '): /* Albanian */ |
| return hb_language_from_string ("sq", -1); /* Albanian [macrolanguage] */ |
| case HB_TAG('S','R','B',' '): /* Serbian */ |
| return hb_language_from_string ("sr", -1); /* Serbian */ |
| case HB_TAG('S','X','T',' '): /* Sutu */ |
| return hb_language_from_string ("xnj", -1); /* Ngoni (Tanzania) */ |
| case HB_TAG('S','Y','R',' '): /* Syriac */ |
| return hb_language_from_string ("syr", -1); /* Syriac [macrolanguage] */ |
| case HB_TAG('S','Y','R','E'): /* Syriac, Estrangela script-variant (equivalent to ISO 15924 'Syre') */ |
| return hb_language_from_string ("und-Syre", -1); /* Undetermined; Syriac (Estrangelo variant) */ |
| case HB_TAG('S','Y','R','J'): /* Syriac, Western script-variant (equivalent to ISO 15924 'Syrj') */ |
| return hb_language_from_string ("und-Syrj", -1); /* Undetermined; Syriac (Western variant) */ |
| case HB_TAG('S','Y','R','N'): /* Syriac, Eastern script-variant (equivalent to ISO 15924 'Syrn') */ |
| return hb_language_from_string ("und-Syrn", -1); /* Undetermined; Syriac (Eastern variant) */ |
| case HB_TAG('T','M','H',' '): /* Tamashek */ |
| return hb_language_from_string ("tmh", -1); /* Tamashek [macrolanguage] */ |
| case HB_TAG('T','O','D',' '): /* Todo */ |
| return hb_language_from_string ("xwo", -1); /* Written Oirat */ |
| case HB_TAG('Z','H','H',' '): /* Chinese, Traditional, Hong Kong SAR */ |
| return hb_language_from_string ("zh-HK", -1); /* Chinese [macrolanguage]; Hong Kong */ |
| case HB_TAG('Z','H','S',' '): /* Chinese, Simplified */ |
| return hb_language_from_string ("zh-Hans", -1); /* Chinese [macrolanguage]; Han (Simplified variant) */ |
| case HB_TAG('Z','H','T',' '): /* Chinese, Traditional */ |
| return hb_language_from_string ("zh-Hant", -1); /* Chinese [macrolanguage]; Han (Traditional variant) */ |
| case HB_TAG('Z','H','T','M'): /* Chinese, Traditional, Macao SAR */ |
| return hb_language_from_string ("zh-MO", -1); /* Chinese [macrolanguage]; Macao */ |
| case HB_TAG('Z','Z','A',' '): /* Zazaki */ |
| return hb_language_from_string ("zza", -1); /* Zazaki [macrolanguage] */ |
| default: |
| return HB_LANGUAGE_INVALID; |
| } |
| } |
| |
| #endif /* HB_OT_TAG_TABLE_HH */ |
| |
| /* == End of generated table == */ |