Commit 8210ee4b69569a04add80301c51ed226616ac93d

Sascha Brawer 2017-04-06T05:39:51

[autofit] Add support for Ol Chiki script. * src/autofit/afblue.dat: Add blue zone data for Ol Chiki. * src/autofit/afblue.c, src/autofit/afblue.h: Regenerated. * src/autofit/afscript.h: Add Ol Chiki standard character. * src/autofit/afranges.c, src/autofit/afstyles.h: Add Ol Chiki data.

diff --git a/ChangeLog b/ChangeLog
index b6cc3b6..9a5d549 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,14 @@
+2017-04-06  Sascha Brawer  <sascha@google.com>
+
+	[autofit] Add support for Ol Chiki script.
+
+	* src/autofit/afblue.dat: Add blue zone data for Ol Chiki.
+	* src/autofit/afblue.c, src/autofit/afblue.h: Regenerated.
+
+	* src/autofit/afscript.h: Add Ol Chiki standard character.
+
+	* src/autofit/afranges.c, src/autofit/afstyles.h: Add Ol Chiki data.
+
 2017-04-03  Werner Lemberg  <wl@gnu.org>
 
 	[truetype] Avoid reexecution of `fpgm' and `prep' in case of error.
diff --git a/src/autofit/afblue.c b/src/autofit/afblue.c
index 524f688..1cfb355 100644
--- a/src/autofit/afblue.c
+++ b/src/autofit/afblue.c
@@ -206,6 +206,8 @@
     '\0',
     '\xE1', '\x80', '\x89', ' ', '\xE1', '\x80', '\x8A', ' ', '\xE1', '\x80', '\xA5', ' ', '\xE1', '\x80', '\xA9', ' ', '\xE1', '\x80', '\xA8', ' ', '\xE1', '\x81', '\x82', ' ', '\xE1', '\x81', '\x85', ' ', '\xE1', '\x81', '\x89',  /* ဉ ည ဥ ဩ ဨ ၂ ၅ ၉ */
     '\0',
+    '\xE1', '\xB1', '\x9B', ' ', '\xE1', '\xB1', '\x9C', ' ', '\xE1', '\xB1', '\x9D', ' ', '\xE1', '\xB1', '\xA1', ' ', '\xE1', '\xB1', '\xA2', ' ', '\xE1', '\xB1', '\xA5',  /* ᱛ ᱜ ᱝ ᱡ ᱢ ᱥ */
+    '\0',
     '\xE0', '\xB6', '\x89', ' ', '\xE0', '\xB6', '\x9A', ' ', '\xE0', '\xB6', '\x9D', ' ', '\xE0', '\xB6', '\xB3', ' ', '\xE0', '\xB6', '\xB4', ' ', '\xE0', '\xB6', '\xBA', ' ', '\xE0', '\xB6', '\xBD', ' ', '\xE0', '\xB7', '\x86',  /* ඉ ක ඝ ඳ ප ය ල ෆ */
     '\0',
     '\xE0', '\xB6', '\x91', ' ', '\xE0', '\xB6', '\x94', ' ', '\xE0', '\xB6', '\x9D', ' ', '\xE0', '\xB6', '\xA2', ' ', '\xE0', '\xB6', '\xA7', ' ', '\xE0', '\xB6', '\xAE', ' ', '\xE0', '\xB6', '\xB0', ' ', '\xE0', '\xB6', '\xBB',  /* එ ඔ ඝ ජ ට ථ ධ ර */
@@ -425,6 +427,9 @@
     { AF_BLUE_STRING_MYANMAR_DESCENDER, 0                                 },
     { AF_BLUE_STRING_MAX,               0                                 },
     { AF_BLUE_STRING_MAX, 0 },
+    { AF_BLUE_STRING_OL_CHIKI, AF_BLUE_PROPERTY_LATIN_TOP },
+    { AF_BLUE_STRING_OL_CHIKI, 0                          },
+    { AF_BLUE_STRING_MAX,      0                          },
     { AF_BLUE_STRING_SINHALA_TOP,       AF_BLUE_PROPERTY_LATIN_TOP },
     { AF_BLUE_STRING_SINHALA_BOTTOM,    0                          },
     { AF_BLUE_STRING_SINHALA_DESCENDER, 0                          },
diff --git a/src/autofit/afblue.dat b/src/autofit/afblue.dat
index 8b75aec..c1f63fb 100644
--- a/src/autofit/afblue.dat
+++ b/src/autofit/afblue.dat
@@ -288,6 +288,9 @@ AF_BLUE_STRING_ENUM AF_BLUE_STRINGS_ARRAY AF_BLUE_STRING_MAX_LEN:
   AF_BLUE_STRING_MYANMAR_DESCENDER
     "ဉ ည ဥ ဩ ဨ ၂ ၅ ၉"
 
+  AF_BLUE_STRING_OL_CHIKI
+    "ᱛ ᱜ ᱝ ᱡ ᱢ ᱥ"
+
   AF_BLUE_STRING_SINHALA_TOP
     "ඉ ක ඝ ඳ ප ය ල ෆ"
   AF_BLUE_STRING_SINHALA_BOTTOM
@@ -674,6 +677,11 @@ AF_BLUE_STRINGSET_ENUM AF_BLUE_STRINGSETS_ARRAY AF_BLUE_STRINGSET_MAX_LEN:
   AF_BLUE_STRINGSET_NONE
     { AF_BLUE_STRING_MAX, 0 }
 
+  AF_BLUE_STRINGSET_OLCK
+    { AF_BLUE_STRING_OL_CHIKI, AF_BLUE_PROPERTY_LATIN_TOP }
+    { AF_BLUE_STRING_OL_CHIKI, 0                          }
+    { AF_BLUE_STRING_MAX,      0                          }
+
   AF_BLUE_STRINGSET_SINH
     { AF_BLUE_STRING_SINHALA_TOP,       AF_BLUE_PROPERTY_LATIN_TOP }
     { AF_BLUE_STRING_SINHALA_BOTTOM,    0                          }
diff --git a/src/autofit/afblue.h b/src/autofit/afblue.h
index f4720ed..56bc216 100644
--- a/src/autofit/afblue.h
+++ b/src/autofit/afblue.h
@@ -167,21 +167,22 @@ FT_BEGIN_HEADER
     AF_BLUE_STRING_MYANMAR_BOTTOM = 2286,
     AF_BLUE_STRING_MYANMAR_ASCENDER = 2318,
     AF_BLUE_STRING_MYANMAR_DESCENDER = 2346,
-    AF_BLUE_STRING_SINHALA_TOP = 2378,
-    AF_BLUE_STRING_SINHALA_BOTTOM = 2410,
-    AF_BLUE_STRING_SINHALA_DESCENDER = 2442,
-    AF_BLUE_STRING_TAMIL_TOP = 2486,
-    AF_BLUE_STRING_TAMIL_BOTTOM = 2518,
-    AF_BLUE_STRING_TELUGU_TOP = 2550,
-    AF_BLUE_STRING_TELUGU_BOTTOM = 2578,
-    AF_BLUE_STRING_THAI_TOP = 2606,
-    AF_BLUE_STRING_THAI_BOTTOM = 2630,
-    AF_BLUE_STRING_THAI_ASCENDER = 2658,
-    AF_BLUE_STRING_THAI_LARGE_ASCENDER = 2670,
-    AF_BLUE_STRING_THAI_DESCENDER = 2682,
-    AF_BLUE_STRING_THAI_LARGE_DESCENDER = 2698,
-    AF_BLUE_STRING_THAI_DIGIT_TOP = 2706,
-    af_blue_1_1 = 2717,
+    AF_BLUE_STRING_OL_CHIKI = 2378,
+    AF_BLUE_STRING_SINHALA_TOP = 2402,
+    AF_BLUE_STRING_SINHALA_BOTTOM = 2434,
+    AF_BLUE_STRING_SINHALA_DESCENDER = 2466,
+    AF_BLUE_STRING_TAMIL_TOP = 2510,
+    AF_BLUE_STRING_TAMIL_BOTTOM = 2542,
+    AF_BLUE_STRING_TELUGU_TOP = 2574,
+    AF_BLUE_STRING_TELUGU_BOTTOM = 2602,
+    AF_BLUE_STRING_THAI_TOP = 2630,
+    AF_BLUE_STRING_THAI_BOTTOM = 2654,
+    AF_BLUE_STRING_THAI_ASCENDER = 2682,
+    AF_BLUE_STRING_THAI_LARGE_ASCENDER = 2694,
+    AF_BLUE_STRING_THAI_DESCENDER = 2706,
+    AF_BLUE_STRING_THAI_LARGE_DESCENDER = 2722,
+    AF_BLUE_STRING_THAI_DIGIT_TOP = 2730,
+    af_blue_1_1 = 2741,
 #ifdef AF_CONFIG_OPTION_CJK
     AF_BLUE_STRING_CJK_TOP = af_blue_1_1 + 1,
     AF_BLUE_STRING_CJK_BOTTOM = af_blue_1_1 + 203,
@@ -263,11 +264,12 @@ FT_BEGIN_HEADER
     AF_BLUE_STRINGSET_MLYM = 112,
     AF_BLUE_STRINGSET_MYMR = 115,
     AF_BLUE_STRINGSET_NONE = 120,
-    AF_BLUE_STRINGSET_SINH = 121,
-    AF_BLUE_STRINGSET_TAML = 125,
-    AF_BLUE_STRINGSET_TELU = 128,
-    AF_BLUE_STRINGSET_THAI = 131,
-    af_blue_2_1 = 139,
+    AF_BLUE_STRINGSET_OLCK = 121,
+    AF_BLUE_STRINGSET_SINH = 124,
+    AF_BLUE_STRINGSET_TAML = 128,
+    AF_BLUE_STRINGSET_TELU = 131,
+    AF_BLUE_STRINGSET_THAI = 134,
+    af_blue_2_1 = 142,
 #ifdef AF_CONFIG_OPTION_CJK
     AF_BLUE_STRINGSET_HANI = af_blue_2_1 + 0,
     af_blue_2_1_1 = af_blue_2_1 + 2,
diff --git a/src/autofit/afranges.c b/src/autofit/afranges.c
index fdd2800..24bc31f 100644
--- a/src/autofit/afranges.c
+++ b/src/autofit/afranges.c
@@ -515,6 +515,18 @@
   };
 
 
+  const AF_Script_UniRangeRec af_olck_uniranges[] =
+  {
+    AF_UNIRANGE_REC( 0x1C50, 0x1C7F ),    /* Ol Chiki */
+    AF_UNIRANGE_REC(      0,      0 )
+  };
+
+  const AF_Script_UniRangeRec af_olck_nonbase_uniranges[] =
+  {
+    AF_UNIRANGE_REC( 0, 0 )
+  };
+
+
   const AF_Script_UniRangeRec  af_sinh_uniranges[] =
   {
     AF_UNIRANGE_REC(  0x0D80,  0x0DFF ),  /* Sinhala */
diff --git a/src/autofit/afscript.h b/src/autofit/afscript.h
index c656c78..c38b96f 100644
--- a/src/autofit/afscript.h
+++ b/src/autofit/afscript.h
@@ -171,6 +171,12 @@
           HINTING_BOTTOM_TO_TOP,
           "" )
 
+  SCRIPT( olck, OLCK,
+          "Ol Chiki",
+          HB_SCRIPT_OL_CHIKI,
+          HINTING_BOTTOM_TO_TOP,
+          "\xE1\xB1\x9B" ) /* ᱛ */
+
   SCRIPT( sinh, SINH,
           "Sinhala",
           HB_SCRIPT_SINHALA,
diff --git a/src/autofit/afstyles.h b/src/autofit/afstyles.h
index 3afa839..eb9b8b1 100644
--- a/src/autofit/afstyles.h
+++ b/src/autofit/afstyles.h
@@ -238,6 +238,13 @@
          AF_BLUE_STRINGSET_NONE,
          AF_COVERAGE_DEFAULT )
 
+  STYLE( olck_dflt, OLCK_DFLT,
+         "Ol Chiki default style",
+         AF_WRITING_SYSTEM_LATIN,
+         AF_SCRIPT_OLCK,
+         AF_BLUE_STRINGSET_OLCK,
+         AF_COVERAGE_DEFAULT )
+
   STYLE( sinh_dflt, SINH_DFLT,
          "Sinhala default style",
          AF_WRITING_SYSTEM_LATIN,