Imported Upstream version 2.6.7
[platform/upstream/harfbuzz.git] / src / hb-ot-tag-table.hh
index d8fcd2f..99937d9 100644 (file)
@@ -6,8 +6,8 @@
  *
  * on files with these headers:
  *
- * <meta name="updated_at" content="2018-11-18 05:25 AM" />
- * File-Date: 2019-04-03
+ * <meta name="updated_at" content="2019-05-22 06:05 PM" />
+ * File-Date: 2020-05-12
  */
 
 #ifndef HB_OT_TAG_TABLE_HH
@@ -95,7 +95,7 @@ static const LangTag ot_languages[] = {
 /*{"ban",      HB_TAG('B','A','N',' ')},*/     /* Balinese */
 /*{"bar",      HB_TAG('B','A','R',' ')},*/     /* Bavarian */
 /*{"bbc",      HB_TAG('B','B','C',' ')},*/     /* Batak Toba */
-  {"bbz",      HB_TAG('A','R','A',' ')},       /* Babalia Creole Arabic -> Arabic */
+  {"bbz",      HB_TAG('A','R','A',' ')},       /* Babalia Creole Arabic (retired code) -> Arabic */
   {"bcc",      HB_TAG('B','L','I',' ')},       /* Southern Balochi -> Baluchi */
   {"bci",      HB_TAG('B','A','U',' ')},       /* Baoulé -> Baulé */
   {"bcl",      HB_TAG('B','I','K',' ')},       /* Central Bikol -> Bikol */
@@ -199,6 +199,7 @@ static const LangTag ot_languages[] = {
   {"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 */
   {"cnt",      HB_TAG('C','C','H','N')},       /* Tepetotutla Chinantec -> Chinantec */
   {"cnw",      HB_TAG('Q','I','N',' ')},       /* Ngawn Chin -> Chin */
   {"co",       HB_TAG('C','O','S',' ')},       /* Corsican */
@@ -228,6 +229,7 @@ static const LangTag ot_languages[] = {
 /*{"csb",      HB_TAG('C','S','B',' ')},*/     /* Kashubian */
   {"csh",      HB_TAG('Q','I','N',' ')},       /* Asho Chin -> Chin */
   {"cso",      HB_TAG('C','C','H','N')},       /* Sochiapam Chinantec -> Chinantec */
+  {"csp",      HB_TAG('Z','H','S',' ')},       /* Southern Ping Chinese -> Chinese Simplified */
   {"csw",      HB_TAG('N','C','R',' ')},       /* Swampy Cree -> N-Cree */
   {"csw",      HB_TAG('N','H','C',' ')},       /* Swampy Cree -> Norway House Cree */
   {"csy",      HB_TAG('Q','I','N',' ')},       /* Siyin Chin -> Chin */
@@ -280,6 +282,7 @@ static const LangTag ot_languages[] = {
   {"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 */
@@ -458,7 +461,7 @@ static const LangTag ot_languages[] = {
   {"jv",       HB_TAG('J','A','V',' ')},       /* Javanese */
   {"jw",       HB_TAG('J','A','V',' ')},       /* Javanese (retired code) */
   {"ka",       HB_TAG('K','A','T',' ')},       /* Georgian */
-  {"kaa",      HB_TAG('K','R','K',' ')},       /* Kara-Kalpak -> Karakalpak */
+  {"kaa",      HB_TAG('K','R','K',' ')},       /* Karakalpak */
   {"kab",      HB_TAG('K','A','B','0')},       /* Kabyle */
   {"kam",      HB_TAG('K','M','B',' ')},       /* Kamba (Kenya) */
   {"kar",      HB_TAG('K','R','N',' ')},       /* Karen [family] */
@@ -538,7 +541,8 @@ static const LangTag ot_languages[] = {
   {"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 */
-  {"kxu",      HB_TAG('K','U','I',' ')},       /* Kui (India) */
+  {"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) */
 /*{"kyu",      HB_TAG('K','Y','U',' ')},*/     /* Western Kayah */
   {"la",       HB_TAG('L','A','T',' ')},       /* Latin */
@@ -736,7 +740,7 @@ static const LangTag ot_languages[] = {
   {"pko",      HB_TAG('K','A','L',' ')},       /* Pökoot -> Kalenjin */
   {"pl",       HB_TAG('P','L','K',' ')},       /* Polish */
   {"pll",      HB_TAG('P','L','G',' ')},       /* Shwe Palaung -> Palaung */
-  {"plp",      HB_TAG('P','A','P',' ')},       /* Palpa */
+  {"plp",      HB_TAG('P','A','P',' ')},       /* Palpa (retired code) */
   {"plt",      HB_TAG('M','L','G',' ')},       /* Plateau Malagasy -> Malagasy */
 /*{"pms",      HB_TAG('P','M','S',' ')},*/     /* Piemontese */
 /*{"pnb",      HB_TAG('P','N','B',' ')},*/     /* Western Panjabi */
@@ -803,7 +807,7 @@ static const LangTag ot_languages[] = {
 /*{"rej",      HB_TAG('R','E','J',' ')},*/     /* Rejang */
 /*{"ria",      HB_TAG('R','I','A',' ')},*/     /* Riang (India) */
 /*{"rif",      HB_TAG('R','I','F',' ')},*/     /* Tarifit */
-/*{"rit",      HB_TAG('R','I','T',' ')},*/     /* Ritarungo */
+/*{"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 */
@@ -965,6 +969,7 @@ static const LangTag ot_languages[] = {
 /*{"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) */
 /*{"umb",      HB_TAG('U','M','B',' ')},*/     /* Umbundu */
   {"unr",      HB_TAG('M','U','N',' ')},       /* Mundari */
   {"ur",       HB_TAG('U','R','D',' ')},       /* Urdu */
@@ -1183,6 +1188,20 @@ hb_ot_tags_from_complex_language (const char   *lang_str,
       *count = 1;
       return true;
     }
+    if (lang_matches (&lang_str[1], "np-hant-hk"))
+    {
+      /* Northern Ping Chinese */
+      tags[0] = HB_TAG('Z','H','H',' ');  /* Chinese, Hong Kong SAR */
+      *count = 1;
+      return true;
+    }
+    if (lang_matches (&lang_str[1], "np-hant-mo"))
+    {
+      /* Northern Ping Chinese */
+      tags[0] = HB_TAG('Z','H','H',' ');  /* Chinese, Hong Kong SAR */
+      *count = 1;
+      return true;
+    }
     if (lang_matches (&lang_str[1], "px-hant-hk"))
     {
       /* Pu-Xian Chinese */
@@ -1197,6 +1216,20 @@ hb_ot_tags_from_complex_language (const char   *lang_str,
       *count = 1;
       return true;
     }
+    if (lang_matches (&lang_str[1], "sp-hant-hk"))
+    {
+      /* Southern Ping Chinese */
+      tags[0] = HB_TAG('Z','H','H',' ');  /* Chinese, Hong Kong SAR */
+      *count = 1;
+      return true;
+    }
+    if (lang_matches (&lang_str[1], "sp-hant-mo"))
+    {
+      /* Southern Ping Chinese */
+      tags[0] = HB_TAG('Z','H','H',' ');  /* Chinese, Hong Kong SAR */
+      *count = 1;
+      return true;
+    }
     if (lang_matches (&lang_str[1], "zh-hant-hk"))
     {
       /* Huizhou Chinese */
@@ -1267,6 +1300,20 @@ hb_ot_tags_from_complex_language (const char   *lang_str,
       *count = 1;
       return true;
     }
+    if (lang_matches (&lang_str[1], "np-hans"))
+    {
+      /* Northern Ping Chinese */
+      tags[0] = HB_TAG('Z','H','S',' ');  /* Chinese Simplified */
+      *count = 1;
+      return true;
+    }
+    if (lang_matches (&lang_str[1], "np-hant"))
+    {
+      /* Northern Ping Chinese */
+      tags[0] = HB_TAG('Z','H','T',' ');  /* Chinese Traditional */
+      *count = 1;
+      return true;
+    }
     if (lang_matches (&lang_str[1], "px-hans"))
     {
       /* Pu-Xian Chinese */
@@ -1281,6 +1328,20 @@ hb_ot_tags_from_complex_language (const char   *lang_str,
       *count = 1;
       return true;
     }
+    if (lang_matches (&lang_str[1], "sp-hans"))
+    {
+      /* Southern Ping Chinese */
+      tags[0] = HB_TAG('Z','H','S',' ');  /* Chinese Simplified */
+      *count = 1;
+      return true;
+    }
+    if (lang_matches (&lang_str[1], "sp-hant"))
+    {
+      /* Southern Ping Chinese */
+      tags[0] = HB_TAG('Z','H','T',' ');  /* Chinese Traditional */
+      *count = 1;
+      return true;
+    }
     if (lang_matches (&lang_str[1], "zh-hans"))
     {
       /* Huizhou Chinese */
@@ -1381,6 +1442,30 @@ hb_ot_tags_from_complex_language (const char   *lang_str,
       *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, 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 */
+      tags[0] = HB_TAG('Z','H','H',' ');  /* Chinese, Hong Kong SAR */
+      *count = 1;
+      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"))
     {
@@ -1405,6 +1490,30 @@ hb_ot_tags_from_complex_language (const char   *lang_str,
       *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, 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 */
+      tags[0] = HB_TAG('Z','H','H',' ');  /* Chinese, Hong Kong SAR */
+      *count = 1;
+      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"))
     {
@@ -1993,6 +2102,8 @@ hb_ot_ambiguous_tag_to_language (hb_tag_t tag)
     return hb_language_from_string ("kr", -1);  /* Kanuri */
   case HB_TAG('K','O','K',' '):  /* Konkani */
     return hb_language_from_string ("kok", -1);  /* Konkani */
+  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 */
   case HB_TAG('L','U','H',' '):  /* Luyia */