/*
* Copyright © 2018 Google, Inc.
*
* This is part of HarfBuzz, a text shaping library.
*
* Permission is hereby granted, without written agreement and without
* license or royalty fees, to use, copy, modify, and distribute this
* software and its documentation for any purpose, provided that the
* above copyright notice and the following two paragraphs appear in
* all copies of this software.
*
* IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE TO ANY PARTY FOR
* DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES
* ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN
* IF THE COPYRIGHT HOLDER HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH
* DAMAGE.
*
* THE COPYRIGHT HOLDER SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING,
* BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
* FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS
* ON AN "AS IS" BASIS, AND THE COPYRIGHT HOLDER HAS NO OBLIGATION TO
* PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS.
*
* Google Author(s): Behdad Esfahbod
*/
#ifndef HB_OT_NAME_LANGUAGE_STATIC_HH
#define HB_OT_NAME_LANGUAGE_STATIC_HH
#include "hb-ot-name-language.hh"
/* Following two tables were generated by joining FreeType, FontConfig,
* and OpenType specification language lists, then filled in missing
* entries using:
* https://docs.microsoft.com/en-us/windows/desktop/intl/language-identifier-constants-and-strings
*/
struct hb_ot_language_map_t
{
int cmp (
unsigned int key)
const
{
return key < code ? -
1 : key > code ? +
1 :
0 ; }
uint16_t code;
char lang[
6 ];
};
static const hb_ot_language_map_t
_hb_ms_language_map[] =
{
{
0 x0001,
"ar" },
/* ??? */
{
0 x0004,
"zh" },
/* ??? */
{
0 x0009,
"en" },
/* ??? */
{
0 x0401,
"ar" },
/* Arabic (Saudi Arabia) */
{
0 x0402,
"bg" },
/* Bulgarian (Bulgaria) */
{
0 x0403,
"ca" },
/* Catalan (Catalan) */
{
0 x0404,
"zh-tw" },
/* Chinese (Taiwan) */
{
0 x0405,
"cs" },
/* Czech (Czech Republic) */
{
0 x0406,
"da" },
/* Danish (Denmark) */
{
0 x0407,
"de" },
/* German (Germany) */
{
0 x0408,
"el" },
/* Greek (Greece) */
{
0 x0409,
"en" },
/* English (United States) */
{
0 x040A,
"es" },
/* Spanish (Traditional Sort) (Spain) */
{
0 x040B,
"fi" },
/* Finnish (Finland) */
{
0 x040C,
"fr" },
/* French (France) */
{
0 x040D,
"he" },
/* Hebrew (Israel) */
{
0 x040E,
"hu" },
/* Hungarian (Hungary) */
{
0 x040F,
"is" },
/* Icelandic (Iceland) */
{
0 x0410,
"it" },
/* Italian (Italy) */
{
0 x0411,
"ja" },
/* Japanese (Japan) */
{
0 x0412,
"ko" },
/* Korean (Korea) */
{
0 x0413,
"nl" },
/* Dutch (Netherlands) */
{
0 x0414,
"no" },
/* Norwegian (Bokmal) (Norway) */
{
0 x0415,
"pl" },
/* Polish (Poland) */
{
0 x0416,
"pt" },
/* Portuguese (Brazil) */
{
0 x0417,
"rm" },
/* Romansh (Switzerland) */
{
0 x0418,
"ro" },
/* Romanian (Romania) */
{
0 x0419,
"ru" },
/* Russian (Russia) */
{
0 x041A,
"hr" },
/* Croatian (Croatia) */
{
0 x041B,
"sk" },
/* Slovak (Slovakia) */
{
0 x041C,
"sq" },
/* Albanian (Albania) */
{
0 x041D,
"sv" },
/* Swedish (Sweden) */
{
0 x041E,
"th" },
/* Thai (Thailand) */
{
0 x041F,
"tr" },
/* Turkish (Turkey) */
{
0 x0420,
"ur" },
/* Urdu (Islamic Republic of Pakistan) */
{
0 x0421,
"id" },
/* Indonesian (Indonesia) */
{
0 x0422,
"uk" },
/* Ukrainian (Ukraine) */
{
0 x0423,
"be" },
/* Belarusian (Belarus) */
{
0 x0424,
"sl" },
/* Slovenian (Slovenia) */
{
0 x0425,
"et" },
/* Estonian (Estonia) */
{
0 x0426,
"lv" },
/* Latvian (Latvia) */
{
0 x0427,
"lt" },
/* Lithuanian (Lithuania) */
{
0 x0428,
"tg" },
/* Tajik (Cyrillic) (Tajikistan) */
{
0 x0429,
"fa" },
/* Persian (Iran) */
{
0 x042A,
"vi" },
/* Vietnamese (Vietnam) */
{
0 x042B,
"hy" },
/* Armenian (Armenia) */
{
0 x042C,
"az" },
/* Azeri (Latin) (Azerbaijan) */
{
0 x042D,
"eu" },
/* Basque (Basque) */
{
0 x042E,
"hsb" },
/* Upper Sorbian (Germany) */
{
0 x042F,
"mk" },
/* Macedonian (FYROM) (Former Yugoslav Republic of Macedonia) */
{
0 x0430,
"st" },
/* ??? */
{
0 x0431,
"ts" },
/* ??? */
{
0 x0432,
"tn" },
/* Setswana (South Africa) */
{
0 x0433,
"ven" },
/* ??? */
{
0 x0434,
"xh" },
/* isiXhosa (South Africa) */
{
0 x0435,
"zu" },
/* isiZulu (South Africa) */
{
0 x0436,
"af" },
/* Afrikaans (South Africa) */
{
0 x0437,
"ka" },
/* Georgian (Georgia) */
{
0 x0438,
"fo" },
/* Faroese (Faroe Islands) */
{
0 x0439,
"hi" },
/* Hindi (India) */
{
0 x043A,
"mt" },
/* Maltese (Malta) */
{
0 x043B,
"se" },
/* Sami (Northern) (Norway) */
{
0 x043C,
"ga" },
/* ??? */
{
0 x043D,
"yi" },
/* ??? */
{
0 x043E,
"ms" },
/* Malay (Malaysia) */
{
0 x043F,
"kk" },
/* Kazakh (Kazakhstan) */
{
0 x0440,
"ky" },
/* Kyrgyz (Kyrgyzstan) */
{
0 x0441,
"sw" },
/* Kiswahili (Kenya) */
{
0 x0442,
"tk" },
/* Turkmen (Turkmenistan) */
{
0 x0443,
"uz" },
/* Uzbek (Latin) (Uzbekistan) */
{
0 x0444,
"tt" },
/* Tatar (Russia) */
{
0 x0445,
"bn" },
/* Bengali (India) */
{
0 x0446,
"pa" },
/* Punjabi (India) */
{
0 x0447,
"gu" },
/* Gujarati (India) */
{
0 x0448,
"or" },
/* Odia (formerly Oriya) (India) */
{
0 x0449,
"ta" },
/* Tamil (India) */
{
0 x044A,
"te" },
/* Telugu (India) */
{
0 x044B,
"kn" },
/* Kannada (India) */
{
0 x044C,
"ml" },
/* Malayalam (India) */
{
0 x044D,
"as" },
/* Assamese (India) */
{
0 x044E,
"mr" },
/* Marathi (India) */
{
0 x044F,
"sa" },
/* Sanskrit (India) */
{
0 x0450,
"mn" },
/* Mongolian (Cyrillic) (Mongolia) */
{
0 x0451,
"bo" },
/* Tibetan (PRC) */
{
0 x0452,
"cy" },
/* Welsh (United Kingdom) */
{
0 x0453,
"km" },
/* Khmer (Cambodia) */
{
0 x0454,
"lo" },
/* Lao (Lao P.D.R.) */
{
0 x0455,
"my" },
/* ??? */
{
0 x0456,
"gl" },
/* Galician (Galician) */
{
0 x0457,
"kok" },
/* Konkani (India) */
{
0 x0458,
"mni" },
/* ??? */
{
0 x0459,
"sd" },
/* ??? */
{
0 x045A,
"syr" },
/* Syriac (Syria) */
{
0 x045B,
"si" },
/* Sinhala (Sri Lanka) */
{
0 x045C,
"chr" },
/* ??? */
{
0 x045D,
"iu" },
/* Inuktitut (Canada) */
{
0 x045E,
"am" },
/* Amharic (Ethiopia) */
{
0 x0460,
"ks" },
/* ??? */
{
0 x0461,
"ne" },
/* Nepali (Nepal) */
{
0 x0462,
"fy" },
/* Frisian (Netherlands) */
{
0 x0463,
"ps" },
/* Pashto (Afghanistan) */
{
0 x0464,
"phi" },
/* Filipino (Philippines) */
{
0 x0465,
"div" },
/* Divehi (Maldives) */
{
0 x0468,
"ha" },
/* Hausa (Latin) (Nigeria) */
{
0 x046A,
"yo" },
/* Yoruba (Nigeria) */
{
0 x046B,
"quz" },
/* Quechua (Bolivia) */
{
0 x046C,
"nso" },
/* Sesotho sa Leboa (South Africa) */
{
0 x046D,
"ba" },
/* Bashkir (Russia) */
{
0 x046E,
"lb" },
/* Luxembourgish (Luxembourg) */
{
0 x046F,
"kl" },
/* Greenlandic (Greenland) */
{
0 x0470,
"ibo" },
/* Igbo (Nigeria) */
{
0 x0471,
"kau" },
/* ??? */
{
0 x0472,
"om" },
/* ??? */
{
0 x0473,
"ti" },
/* ??? */
{
0 x0474,
"gn" },
/* ??? */
{
0 x0475,
"haw" },
/* ??? */
{
0 x0476,
"la" },
/* ??? */
{
0 x0477,
"so" },
/* ??? */
{
0 x0478,
"ii" },
/* Yi (PRC) */
{
0 x0479,
"pap" },
/* ??? */
{
0 x047A,
"arn" },
/* Mapudungun (Chile) */
{
0 x047C,
"moh" },
/* Mohawk (Mohawk) */
{
0 x047E,
"br" },
/* Breton (France) */
{
0 x0480,
"ug" },
/* Uighur (PRC) */
{
0 x0481,
"mi" },
/* Maori (New Zealand) */
{
0 x0482,
"oc" },
/* Occitan (France) */
{
0 x0483,
"co" },
/* Corsican (France) */
{
0 x0484,
"gsw" },
/* Alsatian (France) */
{
0 x0485,
"sah" },
/* Yakut (Russia) */
{
0 x0486,
"qut" },
/* K'iche (Guatemala) */
{
0 x0487,
"rw" },
/* Kinyarwanda (Rwanda) */
{
0 x0488,
"wo" },
/* Wolof (Senegal) */
{
0 x048C,
"fa" },
/* Dari (Afghanistan) */
{
0 x0801,
"ar" },
/* Arabic (Iraq) */
{
0 x0804,
"zh-cn" },
/* Chinese (People’s Republic of China) */
{
0 x0807,
"de" },
/* German (Switzerland) */
{
0 x0809,
"en" },
/* English (United Kingdom) */
{
0 x080A,
"es" },
/* Spanish (Mexico) */
{
0 x080C,
"fr" },
/* French (Belgium) */
{
0 x0810,
"it" },
/* Italian (Switzerland) */
{
0 x0812,
"ko" },
/* ??? */
{
0 x0813,
"nl" },
/* Dutch (Belgium) */
{
0 x0814,
"nn" },
/* Norwegian (Nynorsk) (Norway) */
{
0 x0816,
"pt" },
/* Portuguese (Portugal) */
{
0 x0818,
"mo" },
/* ??? */
{
0 x0819,
"ru" },
/* ??? */
{
0 x081A,
"sr" },
/* Serbian (Latin) (Serbia) */
{
0 x081D,
"sv" },
/* Sweden (Finland) */
{
0 x0820,
"ur" },
/* ??? */
{
0 x0827,
"lt" },
/* ??? */
{
0 x082C,
"az" },
/* Azeri (Cyrillic) (Azerbaijan) */
{
0 x082E,
"dsb" },
/* Lower Sorbian (Germany) */
//{0x083B, ""}, /* Sami (Northern) (Sweden) */
{
0 x083C,
"gd" },
/* Irish (Ireland) */
{
0 x083E,
"ms" },
/* Malay (Brunei Darussalam) */
{
0 x0843,
"uz" },
/* Uzbek (Cyrillic) (Uzbekistan) */
{
0 x0845,
"bn" },
/* Bengali (Bangladesh) */
{
0 x0846,
"ar" },
/* ??? */
{
0 x0850,
"mn" },
/* Mongolian (Traditional) (People’s Republic of China) */
{
0 x0851,
"dz" },
/* ??? */
{
0 x085D,
"iu" },
/* Inuktitut (Latin) (Canada) */
{
0 x085F,
"tzm" },
/* Tamazight (Latin) (Algeria) */
{
0 x0861,
"ne" },
/* ??? */
//{0x086B, ""}, /* Quechua (Ecuador) */
{
0 x0873,
"ti" },
/* ??? */
{
0 x0C01,
"ar" },
/* Arabic (Egypt) */
{
0 x0C04,
"zh-hk" },
/* Chinese (Hong Kong S.A.R.) */
{
0 x0C07,
"de" },
/* German (Austria) */
{
0 x0C09,
"en" },
/* English (Australia) */
{
0 x0C0A,
"es" },
/* Spanish (Modern Sort) (Spain) */
{
0 x0C0C,
"fr" },
/* French (Canada) */
{
0 x0C1A,
"sr" },
/* Serbian (Cyrillic) (Serbia) */
{
0 x0C3B,
"se" },
/* Sami (Northern) (Finland) */
//{0x0C6B, ""}, /* Quechua (Peru) */
{
0 x1001,
"ar" },
/* Arabic (Libya) */
{
0 x1004,
"zh-sg" },
/* Chinese (Singapore) */
{
0 x1007,
"de" },
/* German (Luxembourg) */
{
0 x1009,
"en" },
/* English (Canada) */
{
0 x100A,
"es" },
/* Spanish (Guatemala) */
{
0 x100C,
"fr" },
/* French (Switzerland) */
{
0 x101A,
"hr" },
/* Croatian (Latin) (Bosnia and Herzegovina) */
{
0 x103B,
"smj" },
/* Sami (Lule) (Norway) */
{
0 x1401,
"ar" },
/* Arabic (Algeria) */
//{0x1404, ""}, /* Chinese (Macao S.A.R.) */
{
0 x1407,
"de" },
/* German (Liechtenstein) */
{
0 x1409,
"en" },
/* English (New Zealand) */
{
0 x140A,
"es" },
/* Spanish (Costa Rica) */
{
0 x140C,
"fr" },
/* French (Luxembourg) */
{
0 x141A,
"bs" },
/* Bosnian (Latin) (Bosnia and Herzegovina) */
//{0x143B, ""}, /* Sami (Lule) (Sweden) */
{
0 x1801,
"ar" },
/* Arabic (Morocco) */
{
0 x1809,
"en" },
/* English (Ireland) */
{
0 x180A,
"es" },
/* Spanish (Panama) */
{
0 x180C,
"fr" },
/* French (Principality of Monaco) */
//{0x181A, ""}, /* Serbian (Latin) (Bosnia and Herzegovina) */
{
0 x183B,
"sma" },
/* Sami (Southern) (Norway) */
{
0 x1C01,
"ar" },
/* Arabic (Tunisia) */
{
0 x1C09,
"en" },
/* English (South Africa) */
{
0 x1C0A,
"es" },
/* Spanish (Dominican Republic) */
{
0 x1C0C,
"fr" },
/* ??? */
//{0x1C1A, ""}, /* Serbian (Cyrillic) (Bosnia and Herzegovina) */
//{0x1C3B, ""}, /* Sami (Southern) (Sweden) */
{
0 x2001,
"ar" },
/* Arabic (Oman) */
{
0 x2009,
"en" },
/* English (Jamaica) */
{
0 x200A,
"es" },
/* Spanish (Venezuela) */
{
0 x200C,
"fr" },
/* ??? */
{
0 x201A,
"bs" },
/* Bosnian (Cyrillic) (Bosnia and Herzegovina) */
{
0 x203B,
"sms" },
/* Sami (Skolt) (Finland) */
{
0 x2401,
"ar" },
/* Arabic (Yemen) */
{
0 x2409,
"en" },
/* English (Caribbean) */
{
0 x240A,
"es" },
/* Spanish (Colombia) */
{
0 x240C,
"fr" },
/* ??? */
{
0 x243B,
"smn" },
/* Sami (Inari) (Finland) */
{
0 x2801,
"ar" },
/* Arabic (Syria) */
{
0 x2809,
"en" },
/* English (Belize) */
{
0 x280A,
"es" },
/* Spanish (Peru) */
{
0 x280C,
"fr" },
/* ??? */
{
0 x2C01,
"ar" },
/* Arabic (Jordan) */
{
0 x2C09,
"en" },
/* English (Trinidad and Tobago) */
{
0 x2C0A,
"es" },
/* Spanish (Argentina) */
{
0 x2C0C,
"fr" },
/* ??? */
{
0 x3001,
"ar" },
/* Arabic (Lebanon) */
{
0 x3009,
"en" },
/* English (Zimbabwe) */
{
0 x300A,
"es" },
/* Spanish (Ecuador) */
{
0 x300C,
"fr" },
/* ??? */
{
0 x3401,
"ar" },
/* Arabic (Kuwait) */
{
0 x3409,
"en" },
/* English (Republic of the Philippines) */
{
0 x340A,
"es" },
/* Spanish (Chile) */
{
0 x340C,
"fr" },
/* ??? */
{
0 x3801,
"ar" },
/* Arabic (U.A.E.) */
{
0 x380A,
"es" },
/* Spanish (Uruguay) */
{
0 x380C,
"fr" },
/* ??? */
{
0 x3C01,
"ar" },
/* Arabic (Bahrain) */
{
0 x3C09,
"en" },
/* ??? */
{
0 x3C0A,
"es" },
/* Spanish (Paraguay) */
{
0 x3C0C,
"fr" },
/* ??? */
{
0 x4001,
"ar" },
/* Arabic (Qatar) */
{
0 x4009,
"en" },
/* English (India) */
{
0 x400A,
"es" },
/* Spanish (Bolivia) */
{
0 x4409,
"en" },
/* English (Malaysia) */
{
0 x440A,
"es" },
/* Spanish (El Salvador) */
{
0 x4809,
"en" },
/* English (Singapore) */
{
0 x480A,
"es" },
/* Spanish (Honduras) */
{
0 x4C0A,
"es" },
/* Spanish (Nicaragua) */
{
0 x500A,
"es" },
/* Spanish (Puerto Rico) */
{
0 x540A,
"es" },
/* Spanish (United States) */
{
0 xE40A,
"es" },
/* ??? */
{
0 xE40C,
"fr" },
/* ??? */
};
static const hb_ot_language_map_t
_hb_mac_language_map[] =
{
{
0 ,
"en" },
/* English */
{
1 ,
"fr" },
/* French */
{
2 ,
"de" },
/* German */
{
3 ,
"it" },
/* Italian */
{
4 ,
"nl" },
/* Dutch */
{
5 ,
"sv" },
/* Swedish */
{
6 ,
"es" },
/* Spanish */
{
7 ,
"da" },
/* Danish */
{
8 ,
"pt" },
/* Portuguese */
{
9 ,
"no" },
/* Norwegian */
{
10 ,
"he" },
/* Hebrew */
{
11 ,
"ja" },
/* Japanese */
{
12 ,
"ar" },
/* Arabic */
{
13 ,
"fi" },
/* Finnish */
{
14 ,
"el" },
/* Greek */
{
15 ,
"is" },
/* Icelandic */
{
16 ,
"mt" },
/* Maltese */
{
17 ,
"tr" },
/* Turkish */
{
18 ,
"hr" },
/* Croatian */
{
19 ,
"zh-tw" },
/* Chinese (Traditional) */
{
20 ,
"ur" },
/* Urdu */
{
21 ,
"hi" },
/* Hindi */
{
22 ,
"th" },
/* Thai */
{
23 ,
"ko" },
/* Korean */
{
24 ,
"lt" },
/* Lithuanian */
{
25 ,
"pl" },
/* Polish */
{
26 ,
"hu" },
/* Hungarian */
{
27 ,
"et" },
/* Estonian */
{
28 ,
"lv" },
/* Latvian */
//{ 29, ""}, /* Sami */
{
30 ,
"fo" },
/* Faroese */
{
31 ,
"fa" },
/* Farsi/Persian */
{
32 ,
"ru" },
/* Russian */
{
33 ,
"zh-cn" },
/* Chinese (Simplified) */
{
34 ,
"nl" },
/* Flemish */
{
35 ,
"ga" },
/* Irish Gaelic */
{
36 ,
"sq" },
/* Albanian */
{
37 ,
"ro" },
/* Romanian */
{
38 ,
"cs" },
/* Czech */
{
39 ,
"sk" },
/* Slovak */
{
40 ,
"sl" },
/* Slovenian */
{
41 ,
"yi" },
/* Yiddish */
{
42 ,
"sr" },
/* Serbian */
{
43 ,
"mk" },
/* Macedonian */
{
44 ,
"bg" },
/* Bulgarian */
{
45 ,
"uk" },
/* Ukrainian */
{
46 ,
"be" },
/* Byelorussian */
{
47 ,
"uz" },
/* Uzbek */
{
48 ,
"kk" },
/* Kazakh */
{
49 ,
"az" },
/* Azerbaijani (Cyrillic script) */
{
50 ,
"az" },
/* Azerbaijani (Arabic script) */
{
51 ,
"hy" },
/* Armenian */
{
52 ,
"ka" },
/* Georgian */
{
53 ,
"mo" },
/* Moldavian */
{
54 ,
"ky" },
/* Kirghiz */
{
55 ,
"tg" },
/* Tajiki */
{
56 ,
"tk" },
/* Turkmen */
{
57 ,
"mn" },
/* Mongolian (Mongolian script) */
{
58 ,
"mn" },
/* Mongolian (Cyrillic script) */
{
59 ,
"ps" },
/* Pashto */
{
60 ,
"ku" },
/* Kurdish */
{
61 ,
"ks" },
/* Kashmiri */
{
62 ,
"sd" },
/* Sindhi */
{
63 ,
"bo" },
/* Tibetan */
{
64 ,
"ne" },
/* Nepali */
{
65 ,
"sa" },
/* Sanskrit */
{
66 ,
"mr" },
/* Marathi */
{
67 ,
"bn" },
/* Bengali */
{
68 ,
"as" },
/* Assamese */
{
69 ,
"gu" },
/* Gujarati */
{
70 ,
"pa" },
/* Punjabi */
{
71 ,
"or" },
/* Oriya */
{
72 ,
"ml" },
/* Malayalam */
{
73 ,
"kn" },
/* Kannada */
{
74 ,
"ta" },
/* Tamil */
{
75 ,
"te" },
/* Telugu */
{
76 ,
"si" },
/* Sinhalese */
{
77 ,
"my" },
/* Burmese */
{
78 ,
"km" },
/* Khmer */
{
79 ,
"lo" },
/* Lao */
{
80 ,
"vi" },
/* Vietnamese */
{
81 ,
"id" },
/* Indonesian */
{
82 ,
"tl" },
/* Tagalog */
{
83 ,
"ms" },
/* Malay (Roman script) */
{
84 ,
"ms" },
/* Malay (Arabic script) */
{
85 ,
"am" },
/* Amharic */
{
86 ,
"ti" },
/* Tigrinya */
{
87 ,
"om" },
/* Galla */
{
88 ,
"so" },
/* Somali */
{
89 ,
"sw" },
/* Swahili */
{
90 ,
"rw" },
/* Kinyarwanda/Ruanda */
{
91 ,
"rn" },
/* Rundi */
{
92 ,
"ny" },
/* Nyanja/Chewa */
{
93 ,
"mg" },
/* Malagasy */
{
94 ,
"eo" },
/* Esperanto */
{
128 ,
"cy" },
/* Welsh */
{
129 ,
"eu" },
/* Basque */
{
130 ,
"ca" },
/* Catalan */
{
131 ,
"la" },
/* Latin */
{
132 ,
"qu" },
/* Quechua */
{
133 ,
"gn" },
/* Guarani */
{
134 ,
"ay" },
/* Aymara */
{
135 ,
"tt" },
/* Tatar */
{
136 ,
"ug" },
/* Uighur */
{
137 ,
"dz" },
/* Dzongkha */
{
138 ,
"jw" },
/* Javanese (Roman script) */
{
139 ,
"su" },
/* Sundanese (Roman script) */
{
140 ,
"gl" },
/* Galician */
{
141 ,
"af" },
/* Afrikaans */
{
142 ,
"br" },
/* Breton */
{
143 ,
"iu" },
/* Inuktitut */
{
144 ,
"gd" },
/* Scottish Gaelic */
{
145 ,
"gv" },
/* Manx Gaelic */
{
146 ,
"ga" },
/* Irish Gaelic (with dot above) */
{
147 ,
"to" },
/* Tongan */
{
148 ,
"el" },
/* Greek (polytonic) */
{
149 ,
"ik" },
/* Greenlandic */
{
150 ,
"az" },
/* Azerbaijani (Roman script) */
};
static hb_language_t
_hb_ot_name_language_for (
unsigned int code,
const hb_ot_language_map_t *array,
unsigned int len)
{
#ifdef HB_NO_OT_NAME_LANGUAGE
return HB_LANGUAGE_INVALID;
#endif
auto *entry = hb_bsearch (code, array, len);
if (entry)
return hb_language_from_string (entry->lang, -
1 );
return HB_LANGUAGE_INVALID;
}
hb_language_t
_hb_ot_name_language_for_ms_code (
unsigned int code)
{
return _hb_ot_name_language_for (code,
_hb_ms_language_map,
ARRAY_LENGTH (_hb_ms_language_map));
}
hb_language_t
_hb_ot_name_language_for_mac_code (
unsigned int code)
{
return _hb_ot_name_language_for (code,
_hb_mac_language_map,
ARRAY_LENGTH (_hb_mac_language_map));
}
#endif /* HB_OT_NAME_LANGUAGE_STATIC_HH */
Messung V0.5 in Prozent C=20 H=100 G=72
¤ Dauer der Verarbeitung: 0.11 Sekunden
(vorverarbeitet am 2026-06-05)
¤
*© Formatika GbR, Deutschland