[HarfBuzz] harfbuzz-ng: Branch 'master'

Behdad Esfahbod behdad at kemper.freedesktop.org
Wed Apr 6 11:08:03 PDT 2011


 src/hb-ot-shape-complex-arabic.cc |    3 +++
 src/hb-ot-shape.cc                |    1 -
 2 files changed, 3 insertions(+), 1 deletion(-)

New commits:
commit a71b9c8579d73aea4549f12524bbc2e89f43b5c5
Author: Behdad Esfahbod <behdad at behdad.org>
Date:   Wed Apr 6 14:04:56 2011 -0400

    Disable 'cswh' by default except for Arabic shaper
    
    That better matches OpenType spec.  Note that we enable it for all
    Arabic-shaper scripts.  Ie. we enable it by default for Syriac too,
    but the SyriacOT spec does not require it.  I think this is a more
    useful compromise than special-casing for Arabic script alone.

diff --git a/src/hb-ot-shape-complex-arabic.cc b/src/hb-ot-shape-complex-arabic.cc
index 77a9c82..4aa3398 100644
--- a/src/hb-ot-shape-complex-arabic.cc
+++ b/src/hb-ot-shape-complex-arabic.cc
@@ -154,6 +154,9 @@ static const struct arabic_state_table_entry {
 void
 _hb_ot_shape_complex_collect_features_arabic	(hb_ot_shape_plan_t *plan, const hb_segment_properties_t  *props)
 {
+  /* ArabicOT spec enables 'cswh' for Arabic where as for basic shaper it's disabled by default. */
+  plan->map.add_bool_feature (HB_TAG('c','s','w','h'));
+
   unsigned int num_features = props->script == HB_SCRIPT_SYRIAC ? SYRIAC_NUM_FEATURES : COMMON_NUM_FEATURES;
   for (unsigned int i = 0; i < num_features; i++)
     plan->map.add_bool_feature (arabic_syriac_features[i], false);
diff --git a/src/hb-ot-shape.cc b/src/hb-ot-shape.cc
index e6b3f3e..9f60e1c 100644
--- a/src/hb-ot-shape.cc
+++ b/src/hb-ot-shape.cc
@@ -37,7 +37,6 @@ hb_tag_t default_features[] = {
   HB_TAG('c','a','l','t'),
   HB_TAG('c','c','m','p'),
   HB_TAG('c','l','i','g'),
-  HB_TAG('c','s','w','h'),
   HB_TAG('c','u','r','s'),
   HB_TAG('k','e','r','n'),
   HB_TAG('l','i','g','a'),



More information about the HarfBuzz mailing list