[HarfBuzz] harfbuzz: Branch 'master' - 2 commits
Behdad Esfahbod
behdad at kemper.freedesktop.org
Tue Jul 31 20:41:51 UTC 2018
src/hb-ot-shape-complex-khmer.cc | 26 +++++++++++---------------
1 file changed, 11 insertions(+), 15 deletions(-)
New commits:
commit 6ddd669e205cf2c1c3b0a362330b686386f68519
Author: Behdad Esfahbod <behdad at behdad.org>
Date: Tue Jul 31 13:38:07 2018 -0700
[khmer] Clear syllables before presentation features
Probably not what Uniscribe does, but good idea?
diff --git a/src/hb-ot-shape-complex-khmer.cc b/src/hb-ot-shape-complex-khmer.cc
index 1a155a16..58236039 100644
--- a/src/hb-ot-shape-complex-khmer.cc
+++ b/src/hb-ot-shape-complex-khmer.cc
@@ -125,7 +125,7 @@ collect_features_khmer (hb_ot_shape_planner_t *plan)
map->add_feature (khmer_features[i].tag, 1, khmer_features[i].flags | F_MANUAL_ZWJ | F_MANUAL_ZWNJ);
}
- map->add_gsub_pause (nullptr);
+ map->add_gsub_pause (clear_syllables);
for (; i < KHMER_NUM_FEATURES; i++) {
map->add_feature (khmer_features[i].tag, 1, khmer_features[i].flags | F_MANUAL_ZWJ | F_MANUAL_ZWNJ);
@@ -134,7 +134,6 @@ collect_features_khmer (hb_ot_shape_planner_t *plan)
map->add_global_bool_feature (HB_TAG('c','a','l','t'));
map->add_global_bool_feature (HB_TAG('c','l','i','g'));
- map->add_gsub_pause (clear_syllables);
}
static void
commit 8eef1964a708c3db52e5e7312689c4664afa9839
Author: Behdad Esfahbod <behdad at behdad.org>
Date: Tue Jul 31 13:35:10 2018 -0700
[khmer] Revert previous change, and remove pauses
This makes test suite happy again (at 44) while fixing the sequences
we were fixing, which were the following with KhmerUI.ttf:
U+1789,U+17BC
U+1789,U+17D2,U+1789
U+1789,U+17D2,U+1789,U+17BC
Fixes rest of https://github.com/harfbuzz/harfbuzz/issues/974
diff --git a/src/hb-ot-shape-complex-khmer.cc b/src/hb-ot-shape-complex-khmer.cc
index a5f357a5..1a155a16 100644
--- a/src/hb-ot-shape-complex-khmer.cc
+++ b/src/hb-ot-shape-complex-khmer.cc
@@ -107,18 +107,9 @@ collect_features_khmer (hb_ot_shape_planner_t *plan)
map->add_gsub_pause (setup_syllables);
map->add_gsub_pause (reorder);
- map->add_global_bool_feature (HB_TAG('l','o','c','l'));
- map->add_gsub_pause (nullptr);
-
- unsigned int i = 0;
- for (; i < KHMER_BASIC_FEATURES; i++) {
- map->add_feature (khmer_features[i].tag, 1, khmer_features[i].flags | F_MANUAL_ZWJ | F_MANUAL_ZWNJ);
- map->add_gsub_pause (nullptr);
- }
-
- /* Testing suggests that Uniscribe applies 'ccmp' here, NOT before
- * the basic features. Test with KhmerUI.ttf and the following
- * three sequences:
+ /* Testing suggests that Uniscribe does NOT before between basic
+ * features. Test with KhmerUI.ttf and the following three
+ * sequences:
*
* U+1789,U+17BC
* U+1789,U+17D2,U+1789
@@ -126,14 +117,20 @@ collect_features_khmer (hb_ot_shape_planner_t *plan)
*
* https://github.com/harfbuzz/harfbuzz/issues/974
*/
+ map->add_global_bool_feature (HB_TAG('l','o','c','l'));
map->add_global_bool_feature (HB_TAG('c','c','m','p'));
+
+ unsigned int i = 0;
+ for (; i < KHMER_BASIC_FEATURES; i++) {
+ map->add_feature (khmer_features[i].tag, 1, khmer_features[i].flags | F_MANUAL_ZWJ | F_MANUAL_ZWNJ);
+ }
+
map->add_gsub_pause (nullptr);
for (; i < KHMER_NUM_FEATURES; i++) {
map->add_feature (khmer_features[i].tag, 1, khmer_features[i].flags | F_MANUAL_ZWJ | F_MANUAL_ZWNJ);
}
-
map->add_global_bool_feature (HB_TAG('c','a','l','t'));
map->add_global_bool_feature (HB_TAG('c','l','i','g'));
More information about the HarfBuzz
mailing list