diff options
author | Akira Kakuto <kakuto@fuk.kindai.ac.jp> | 2019-06-01 08:54:42 +0000 |
---|---|---|
committer | Akira Kakuto <kakuto@fuk.kindai.ac.jp> | 2019-06-01 08:54:42 +0000 |
commit | c3b919224b2b02826bddf55535535ab47638844d (patch) | |
tree | 728f7d1ab81bbbed0c1e777c2c63bcc516d8810a /Build/source/libs/harfbuzz/harfbuzz-src/src/hb-ot-shape-complex-use-machine.rl | |
parent | 6232e1d5fac4d935744926829f80d53a750cbf0b (diff) |
harfbuzz-2.5.1
git-svn-id: svn://tug.org/texlive/trunk@51283 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Build/source/libs/harfbuzz/harfbuzz-src/src/hb-ot-shape-complex-use-machine.rl')
-rw-r--r-- | Build/source/libs/harfbuzz/harfbuzz-src/src/hb-ot-shape-complex-use-machine.rl | 20 |
1 files changed, 16 insertions, 4 deletions
diff --git a/Build/source/libs/harfbuzz/harfbuzz-src/src/hb-ot-shape-complex-use-machine.rl b/Build/source/libs/harfbuzz/harfbuzz-src/src/hb-ot-shape-complex-use-machine.rl index 2a1b90d8fc6..aca7ea68345 100644 --- a/Build/source/libs/harfbuzz/harfbuzz-src/src/hb-ot-shape-complex-use-machine.rl +++ b/Build/source/libs/harfbuzz/harfbuzz-src/src/hb-ot-shape-complex-use-machine.rl @@ -68,6 +68,7 @@ VS = 21; # VARIATION_SELECTOR #VM = 40; # VOWEL_MOD CS = 43; # CONS_WITH_STACKER HVM = 44; # HALANT_OR_VOWEL_MODIFIER +Sk = 48; # SAKOT FAbv = 24; # CONS_FINAL_ABOVE FBlw = 25; # CONS_FINAL_BELOW @@ -92,7 +93,7 @@ FMAbv = 45; # CONS_FINAL_MOD UIPC = Top FMBlw = 46; # CONS_FINAL_MOD UIPC = Bottom FMPst = 47; # CONS_FINAL_MOD UIPC = Not_Applicable -h = H | HVM; # https://github.com/harfbuzz/harfbuzz/issues/1102 +h = H | HVM | Sk; # Override: Adhoc ZWJ placement. https://github.com/harfbuzz/harfbuzz/issues/542#issuecomment-353169729 consonant_modifiers = CMAbv* CMBlw* ((ZWJ?.h.ZWJ? B | SUB) VS? CMAbv? CMBlw*)*; @@ -103,11 +104,16 @@ vowel_modifiers = HVM? VMPre* VMAbv* VMBlw* VMPst*; final_consonants = FAbv* FBlw* FPst*; final_modifiers = FMAbv* FMBlw* | FMPst?; -complex_syllable_tail = +complex_syllable_start = (R | CS)? (B | GB) VS?; +complex_syllable_middle = consonant_modifiers medial_consonants dependent_vowels vowel_modifiers + (Sk B)* +; +complex_syllable_tail = + complex_syllable_middle final_consonants final_modifiers ; @@ -116,12 +122,17 @@ numeral_cluster_tail = (HN N VS?)+; symbol_cluster_tail = SMAbv+ SMBlw* | SMBlw+; virama_terminated_cluster = - (R|CS)? (B | GB) VS? + complex_syllable_start consonant_modifiers ZWJ?.h.ZWJ? ; +sakot_terminated_cluster = + complex_syllable_start + complex_syllable_middle + Sk +; standard_cluster = - (R|CS)? (B | GB) VS? + complex_syllable_start complex_syllable_tail ; broken_cluster = @@ -138,6 +149,7 @@ other = any; main := |* independent_cluster => { found_syllable (independent_cluster); }; virama_terminated_cluster => { found_syllable (virama_terminated_cluster); }; + sakot_terminated_cluster => { found_syllable (sakot_terminated_cluster); }; standard_cluster => { found_syllable (standard_cluster); }; number_joiner_terminated_cluster => { found_syllable (number_joiner_terminated_cluster); }; numeral_cluster => { found_syllable (numeral_cluster); }; |