shithub: freetype+ttf2subf

Download patch

ref: 2c256e6dac16c1a5ab2e30f0b0add281a7e7fdfc
parent: 2b9114765a004f7c0a0e711dc18cd4d0dabf67ea
author: Sascha Brawer <[email protected]>
date: Thu Apr 6 13:05:47 EDT 2017

[autofit] Add support for Lisu script.

* src/autofit/afblue.dat: Add blue zone data for Lisu.
* src/autofit/afblue.c, src/autofit/afblue.h: Regenerated.

* src/autofit/afscript.h: Add Lisu standard characters.

* src/autofit/afranges.c, src/autofit/afstyles.h: Add Lisu data.

git/fs: mount .git/fs: mount/attach disallowed
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,6 +1,18 @@
 2017-04-06  Sascha Brawer  <[email protected]>
 	    Werner Lemberg  <[email protected]
 
+	[autofit] Add support for Lisu script.
+
+	* src/autofit/afblue.dat: Add blue zone data for Lisu.
+	* src/autofit/afblue.c, src/autofit/afblue.h: Regenerated.
+
+	* src/autofit/afscript.h: Add Lisu standard characters.
+
+	* src/autofit/afranges.c, src/autofit/afstyles.h: Add Lisu data.
+
+2017-04-06  Sascha Brawer  <[email protected]>
+	    Werner Lemberg  <[email protected]
+
 	[autofit] Add support for Osage script.
 
 	* src/autofit/afblue.dat: Add blue zone data for Osage.
--- a/src/autofit/afblue.c
+++ b/src/autofit/afblue.c
@@ -210,6 +210,10 @@
     '\0',
     '\xE1', '\xB5', '\x96', ' ', '\xCA', '\xB8', ' ', '\xE1', '\xB5', '\x8D',  /* ᵖ ʸ ᵍ */
     '\0',
+    '\xEA', '\x93', '\xA1', ' ', '\xEA', '\x93', '\xA7', ' ', '\xEA', '\x93', '\xB1', ' ', '\xEA', '\x93', '\xB6', ' ', '\xEA', '\x93', '\xA9', ' ', '\xEA', '\x93', '\x9A', ' ', '\xEA', '\x93', '\xB5', ' ', '\xEA', '\x93', '\xB3',  /* ꓡ ꓧ ꓱ ꓶ ꓩ ꓚ ꓵ ꓳ */
+    '\0',
+    '\xEA', '\x93', '\x95', ' ', '\xEA', '\x93', '\x9C', ' ', '\xEA', '\x93', '\x9E', ' ', '\xEA', '\x93', '\xA1', ' ', '\xEA', '\x93', '\x9B', ' ', '\xEA', '\x93', '\xA2', ' ', '\xEA', '\x93', '\xB3', ' ', '\xEA', '\x93', '\xB4',  /* ꓕ ꓜ ꓞ ꓡ ꓛ ꓢ ꓳ ꓴ */
+    '\0',
     '\xE0', '\xB4', '\x92', ' ', '\xE0', '\xB4', '\x9F', ' ', '\xE0', '\xB4', '\xA0', ' ', '\xE0', '\xB4', '\xB1', ' ', '\xE0', '\xB4', '\x9A', ' ', '\xE0', '\xB4', '\xAA', ' ', '\xE0', '\xB4', '\x9A', '\xE0', '\xB5', '\x8D', '\xE0', '\xB4', '\x9A', ' ', '\xE0', '\xB4', '\xAA', '\xE0', '\xB5', '\x8D', '\xE0', '\xB4', '\xAA',  /* ഒ ട ഠ റ ച പ ച്ച പ്പ */
     '\0',
     '\xE0', '\xB4', '\x9F', ' ', '\xE0', '\xB4', '\xA0', ' ', '\xE0', '\xB4', '\xA7', ' ', '\xE0', '\xB4', '\xB6', ' ', '\xE0', '\xB4', '\x98', ' ', '\xE0', '\xB4', '\x9A', ' ', '\xE0', '\xB4', '\xA5', ' ', '\xE0', '\xB4', '\xB2',  /* ട ഠ ധ ശ ഘ ച ഥ ല */
@@ -473,6 +477,9 @@
     { AF_BLUE_STRING_LATIN_SUPS_SMALL,           0                                 },
     { AF_BLUE_STRING_LATIN_SUPS_SMALL_DESCENDER, 0                                 },
     { AF_BLUE_STRING_MAX,                        0                                 },
+    { AF_BLUE_STRING_LISU_TOP,    AF_BLUE_PROPERTY_LATIN_TOP },
+    { AF_BLUE_STRING_LISU_BOTTOM, 0                          },
+    { AF_BLUE_STRING_MAX,         0                          },
     { AF_BLUE_STRING_MALAYALAM_TOP,    AF_BLUE_PROPERTY_LATIN_TOP },
     { AF_BLUE_STRING_MALAYALAM_BOTTOM, 0                          },
     { AF_BLUE_STRING_MAX,              0                          },
--- a/src/autofit/afblue.dat
+++ b/src/autofit/afblue.dat
@@ -292,6 +292,11 @@
   AF_BLUE_STRING_LATIN_SUPS_SMALL_DESCENDER
     "ᵖ ʸ ᵍ"
 
+  AF_BLUE_STRING_LISU_TOP
+    "ꓡ ꓧ ꓱ ꓶ ꓩ ꓚ ꓵ ꓳ"
+  AF_BLUE_STRING_LISU_BOTTOM
+    "ꓕ ꓜ ꓞ ꓡ ꓛ ꓢ ꓳ ꓴ"
+
   AF_BLUE_STRING_MALAYALAM_TOP
     "ഒ ട ഠ റ ച പ ച്ച പ്പ"
   AF_BLUE_STRING_MALAYALAM_BOTTOM
@@ -726,6 +731,11 @@
     { AF_BLUE_STRING_LATIN_SUPS_SMALL,           0                                 }
     { AF_BLUE_STRING_LATIN_SUPS_SMALL_DESCENDER, 0                                 }
     { AF_BLUE_STRING_MAX,                        0                                 }
+
+  AF_BLUE_STRINGSET_LISU
+    { AF_BLUE_STRING_LISU_TOP,    AF_BLUE_PROPERTY_LATIN_TOP }
+    { AF_BLUE_STRING_LISU_BOTTOM, 0                          }
+    { AF_BLUE_STRING_MAX,         0                          }
 
   AF_BLUE_STRINGSET_MLYM
     { AF_BLUE_STRING_MALAYALAM_TOP,    AF_BLUE_PROPERTY_LATIN_TOP }
--- a/src/autofit/afblue.h
+++ b/src/autofit/afblue.h
@@ -169,42 +169,44 @@
     AF_BLUE_STRING_LATIN_SUPS_SMALL_F_TOP = 2349,
     AF_BLUE_STRING_LATIN_SUPS_SMALL = 2375,
     AF_BLUE_STRING_LATIN_SUPS_SMALL_DESCENDER = 2400,
-    AF_BLUE_STRING_MALAYALAM_TOP = 2411,
-    AF_BLUE_STRING_MALAYALAM_BOTTOM = 2455,
-    AF_BLUE_STRING_MYANMAR_TOP = 2487,
-    AF_BLUE_STRING_MYANMAR_BOTTOM = 2519,
-    AF_BLUE_STRING_MYANMAR_ASCENDER = 2551,
-    AF_BLUE_STRING_MYANMAR_DESCENDER = 2579,
-    AF_BLUE_STRING_NKO_TOP = 2611,
-    AF_BLUE_STRING_NKO_BOTTOM = 2635,
-    AF_BLUE_STRING_NKO_SMALL_TOP = 2650,
-    AF_BLUE_STRING_NKO_SMALL_BOTTOM = 2659,
-    AF_BLUE_STRING_OL_CHIKI = 2671,
-    AF_BLUE_STRING_OSAGE_CAPITAL_TOP = 2695,
-    AF_BLUE_STRING_OSAGE_CAPITAL_BOTTOM = 2735,
-    AF_BLUE_STRING_OSAGE_CAPITAL_DESCENDER = 2765,
-    AF_BLUE_STRING_OSAGE_SMALL_TOP = 2780,
-    AF_BLUE_STRING_OSAGE_SMALL_BOTTOM = 2820,
-    AF_BLUE_STRING_OSAGE_SMALL_ASCENDER = 2860,
-    AF_BLUE_STRING_OSAGE_SMALL_DESCENDER = 2885,
-    AF_BLUE_STRING_SINHALA_TOP = 2900,
-    AF_BLUE_STRING_SINHALA_BOTTOM = 2932,
-    AF_BLUE_STRING_SINHALA_DESCENDER = 2964,
-    AF_BLUE_STRING_TAI_VIET_TOP = 3008,
-    AF_BLUE_STRING_TAI_VIET_BOTTOM = 3028,
-    AF_BLUE_STRING_TAMIL_TOP = 3040,
-    AF_BLUE_STRING_TAMIL_BOTTOM = 3072,
-    AF_BLUE_STRING_TELUGU_TOP = 3104,
-    AF_BLUE_STRING_TELUGU_BOTTOM = 3132,
-    AF_BLUE_STRING_THAI_TOP = 3160,
-    AF_BLUE_STRING_THAI_BOTTOM = 3184,
-    AF_BLUE_STRING_THAI_ASCENDER = 3212,
-    AF_BLUE_STRING_THAI_LARGE_ASCENDER = 3224,
-    AF_BLUE_STRING_THAI_DESCENDER = 3236,
-    AF_BLUE_STRING_THAI_LARGE_DESCENDER = 3252,
-    AF_BLUE_STRING_THAI_DIGIT_TOP = 3260,
-    AF_BLUE_STRING_TIFINAGH = 3272,
-    af_blue_1_1 = 3303,
+    AF_BLUE_STRING_LISU_TOP = 2411,
+    AF_BLUE_STRING_LISU_BOTTOM = 2443,
+    AF_BLUE_STRING_MALAYALAM_TOP = 2475,
+    AF_BLUE_STRING_MALAYALAM_BOTTOM = 2519,
+    AF_BLUE_STRING_MYANMAR_TOP = 2551,
+    AF_BLUE_STRING_MYANMAR_BOTTOM = 2583,
+    AF_BLUE_STRING_MYANMAR_ASCENDER = 2615,
+    AF_BLUE_STRING_MYANMAR_DESCENDER = 2643,
+    AF_BLUE_STRING_NKO_TOP = 2675,
+    AF_BLUE_STRING_NKO_BOTTOM = 2699,
+    AF_BLUE_STRING_NKO_SMALL_TOP = 2714,
+    AF_BLUE_STRING_NKO_SMALL_BOTTOM = 2723,
+    AF_BLUE_STRING_OL_CHIKI = 2735,
+    AF_BLUE_STRING_OSAGE_CAPITAL_TOP = 2759,
+    AF_BLUE_STRING_OSAGE_CAPITAL_BOTTOM = 2799,
+    AF_BLUE_STRING_OSAGE_CAPITAL_DESCENDER = 2829,
+    AF_BLUE_STRING_OSAGE_SMALL_TOP = 2844,
+    AF_BLUE_STRING_OSAGE_SMALL_BOTTOM = 2884,
+    AF_BLUE_STRING_OSAGE_SMALL_ASCENDER = 2924,
+    AF_BLUE_STRING_OSAGE_SMALL_DESCENDER = 2949,
+    AF_BLUE_STRING_SINHALA_TOP = 2964,
+    AF_BLUE_STRING_SINHALA_BOTTOM = 2996,
+    AF_BLUE_STRING_SINHALA_DESCENDER = 3028,
+    AF_BLUE_STRING_TAI_VIET_TOP = 3072,
+    AF_BLUE_STRING_TAI_VIET_BOTTOM = 3092,
+    AF_BLUE_STRING_TAMIL_TOP = 3104,
+    AF_BLUE_STRING_TAMIL_BOTTOM = 3136,
+    AF_BLUE_STRING_TELUGU_TOP = 3168,
+    AF_BLUE_STRING_TELUGU_BOTTOM = 3196,
+    AF_BLUE_STRING_THAI_TOP = 3224,
+    AF_BLUE_STRING_THAI_BOTTOM = 3248,
+    AF_BLUE_STRING_THAI_ASCENDER = 3276,
+    AF_BLUE_STRING_THAI_LARGE_ASCENDER = 3288,
+    AF_BLUE_STRING_THAI_DESCENDER = 3300,
+    AF_BLUE_STRING_THAI_LARGE_DESCENDER = 3316,
+    AF_BLUE_STRING_THAI_DIGIT_TOP = 3324,
+    AF_BLUE_STRING_TIFINAGH = 3336,
+    af_blue_1_1 = 3367,
 #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,
@@ -285,19 +287,20 @@
     AF_BLUE_STRINGSET_LATN = 101,
     AF_BLUE_STRINGSET_LATB = 108,
     AF_BLUE_STRINGSET_LATP = 115,
-    AF_BLUE_STRINGSET_MLYM = 122,
-    AF_BLUE_STRINGSET_MYMR = 125,
-    AF_BLUE_STRINGSET_NKOO = 130,
-    AF_BLUE_STRINGSET_NONE = 135,
-    AF_BLUE_STRINGSET_OLCK = 136,
-    AF_BLUE_STRINGSET_OSGE = 139,
-    AF_BLUE_STRINGSET_SINH = 147,
-    AF_BLUE_STRINGSET_TAML = 151,
-    AF_BLUE_STRINGSET_TAVT = 154,
-    AF_BLUE_STRINGSET_TELU = 157,
-    AF_BLUE_STRINGSET_THAI = 160,
-    AF_BLUE_STRINGSET_TFNG = 168,
-    af_blue_2_1 = 171,
+    AF_BLUE_STRINGSET_LISU = 122,
+    AF_BLUE_STRINGSET_MLYM = 125,
+    AF_BLUE_STRINGSET_MYMR = 128,
+    AF_BLUE_STRINGSET_NKOO = 133,
+    AF_BLUE_STRINGSET_NONE = 138,
+    AF_BLUE_STRINGSET_OLCK = 139,
+    AF_BLUE_STRINGSET_OSGE = 142,
+    AF_BLUE_STRINGSET_SINH = 150,
+    AF_BLUE_STRINGSET_TAML = 154,
+    AF_BLUE_STRINGSET_TAVT = 157,
+    AF_BLUE_STRINGSET_TELU = 160,
+    AF_BLUE_STRINGSET_THAI = 163,
+    AF_BLUE_STRINGSET_TFNG = 171,
+    af_blue_2_1 = 174,
 #ifdef AF_CONFIG_OPTION_CJK
     AF_BLUE_STRINGSET_HANI = af_blue_2_1 + 0,
     af_blue_2_1_1 = af_blue_2_1 + 2,
--- a/src/autofit/afranges.c
+++ b/src/autofit/afranges.c
@@ -489,6 +489,18 @@
   };
 
 
+  const AF_Script_UniRangeRec  af_lisu_uniranges[] =
+  {
+    AF_UNIRANGE_REC(  0xA4D0,  0xA4FF ),    /* Lisu */
+    AF_UNIRANGE_REC(       0,       0 )
+  };
+
+  const AF_Script_UniRangeRec  af_lisu_nonbase_uniranges[] =
+  {
+    AF_UNIRANGE_REC( 0, 0 )
+  };
+
+
   const AF_Script_UniRangeRec  af_mlym_uniranges[] =
   {
     AF_UNIRANGE_REC(  0x0D00,  0x0D7F ),  /* Malayalam */
--- a/src/autofit/afscript.h
+++ b/src/autofit/afscript.h
@@ -165,6 +165,12 @@
           HINTING_BOTTOM_TO_TOP,
           "\xE1\xB5\x92 \xE1\xB4\xBC \xE2\x81\xB0" ) /* ᵒ ᴼ ⁰ */
 
+  SCRIPT( lisu, LISU,
+          "Lisu",
+          HB_SCRIPT_LISU,
+          HINTING_BOTTOM_TO_TOP,
+          "\xEA\x93\xB3" ) /* ꓳ */
+
   SCRIPT( mlym, MLYM,
           "Malayalam",
           HB_SCRIPT_MALAYALAM,
--- a/src/autofit/afstyles.h
+++ b/src/autofit/afstyles.h
@@ -231,6 +231,13 @@
          AF_COVERAGE_DEFAULT )
 #endif
 
+  STYLE( lisu_dflt, LISU_DFLT,
+         "Lisu default style",
+         AF_WRITING_SYSTEM_LATIN,
+         AF_SCRIPT_LISU,
+         AF_BLUE_STRINGSET_LISU,
+         AF_COVERAGE_DEFAULT )
+
   STYLE( mlym_dflt, MLYM_DFLT,
          "Malayalam default style",
          AF_WRITING_SYSTEM_LATIN,