From 9dd29c681e8e856c139f20f405d7c0e04928aa70 Mon Sep 17 00:00:00 2001 From: Behdad Esfahbod Date: Fri, 14 Jul 2017 17:01:27 +0100 Subject: [PATCH] [use] Allow up to two medial-below letters Fixes https://github.com/behdad/harfbuzz/issues/376 --- src/hb-ot-shape-complex-use-machine.rl | 3 ++- .../e68a88939e0f06e34d2bc911f09b70890289c8fd.ttf | Bin 0 -> 2192 bytes test/shaping/tests/use-syllable.tests | 3 +++ 3 files changed, 5 insertions(+), 1 deletion(-) create mode 100644 test/shaping/fonts/sha1sum/e68a88939e0f06e34d2bc911f09b70890289c8fd.ttf diff --git a/src/hb-ot-shape-complex-use-machine.rl b/src/hb-ot-shape-complex-use-machine.rl index f6b814b1d..2a7f75115 100644 --- a/src/hb-ot-shape-complex-use-machine.rl +++ b/src/hb-ot-shape-complex-use-machine.rl @@ -89,7 +89,8 @@ SMBlw = 42; # SYM_MOD_BELOW consonant_modifiers = CMAbv* CMBlw* ((H B | SUB) VS? CMAbv? CMBlw*)*; -medial_consonants = MPre? MAbv? MBlw? MPst?; +# Override: Allow two MBlw. https://github.com/behdad/harfbuzz/issues/376 +medial_consonants = MPre? MAbv? MBlw?.MBlw? MPst?; dependent_vowels = VPre* VAbv* VBlw* VPst*; vowel_modifiers = VMPre* VMAbv* VMBlw* VMPst*; final_consonants = FAbv* FBlw* FPst* FM?; diff --git a/test/shaping/fonts/sha1sum/e68a88939e0f06e34d2bc911f09b70890289c8fd.ttf b/test/shaping/fonts/sha1sum/e68a88939e0f06e34d2bc911f09b70890289c8fd.ttf new file mode 100644 index 0000000000000000000000000000000000000000..ada70f7d462e908f9433bf02b692bfe46e52172a GIT binary patch literal 2192 zcmcgtNo*Tc82;bP*yF^Fvw4fN)UxBT-K23cw#RndG;W;5u1(@3Z4-f7XGq*6tsMuq z&;^N20wgFBNEAd{HlcC|MXf6J!U-WRZ~zrl30k;tC{(ISsenTT9{xA3s{|p$iD$j# z```cm<@?_o0|9_KcnVm^j17;B!W>Kj@S9MY7|TpdC(n+=5br|#$=LMnq3BirWdNNO z@naLyKC$T|-30(m8u8qGL0(;Ze%A`(bBKo*^T+moJ9E5@>+b;A3rjh9L4WG|vjE(u zD3g{@pnH+|9Q8ejJC_QFj~WtpqqzSE;_iHLUgo~g{EC>`vlir|tKcLo;uDDND{>*n z88!v+{B6XE)#9PU(Qs-4KpRGUSy4bzZgJhr6bQhega?+1Wzi2j@q+q}ulyDTB4z0;(QKjoNG!EYE7lVOjqhIu+n$yAXo*u7rd@`2o z6?*%&%ybL8hexM$?Ez=E=!wlfv3TH_@|T`^lijP&uq^2l$V*!uYPSwL0-3EYyC>o% z=D?_{vneIS$HupBw)S`(&hEMNgDcB#^jQUG`F1C-4Pda!c{oRIVDv5;Iq$w7Bh8=! z-EK^W$}8EB8?nKzs3=D2#)oa}fXGhFx*Bq`GY81oOx)KM=?ewBY@v2BZECG=4D4W& zH4l&4e3k+G=xi1U=*t(`Q|t-oM1RNz&-XCFhERnTUQm7bE!sw-*-Tlout#2*+-cjs z@c#U@Gh(=ThtaS&^`re}=Gk%2a{hGr;#|rU_*i+B2sgHLv~G5{b+rzR_undCdHRPB z#q0rK%9oS~NN^5p-~!<*0y?Er2I-m_{FA;BF&!gwR5fTeP4 zx7s?};;}$raH!qYB6{32Efz~lZ||9ap*fzG5(z0CZ>kSAwY7fL=JB*iq6ok!3&>R% z-o`g<0&-x&1;18jnW@E%+v2C{=ZLQax*$TzAc zxxW9i)$HkP{kGqLWq+bazcw6ylFnC>;a|#;a+Br`cNL-bo+V&rVIL=h#H6uzDCfz` z=pD+JuqObN8teROL`P19%Ppp&^rmAuQpDhG+>-bfkvV61`T=&M(OYZBd=-j>!+? z7MA6F1(i0S{CZ^EfO=NsQmJ^P?#Kp}4d|YV`Tn^LyNw%MWmii%ngTM2EYRk`H%0JQ zi=E1e$~tA9@=lP+%KfbF(piUcM&+2ITChVu5SlFRs1?V`(E6d)!CYwt3!MoEVnIjhD&D@@O^YVbVnuASURpQbjrnzzW VLoeu!>Y*n!Y7Xe#;}KC-;V)FXl%fCt literal 0 HcmV?d00001 diff --git a/test/shaping/tests/use-syllable.tests b/test/shaping/tests/use-syllable.tests index b864c3ead..ab050c91d 100644 --- a/test/shaping/tests/use-syllable.tests +++ b/test/shaping/tests/use-syllable.tests @@ -1 +1,4 @@ fonts/sha1sum/96490dd2ff81233b335a650e7eb660e0e7b2eeea.ttf::U+AA00,U+AA2D,U+AA29:[a_cham=0+1121|uSign_cham=0@14,0+0|.notdef=0+600] +fonts/sha1sum/e68a88939e0f06e34d2bc911f09b70890289c8fd.ttf::U+AA00,U+AA34,U+AA36:[raMedial_cham_pre=0+400|a_cham=0+1121|waMedial_cham=0@-32,0+0] +fonts/sha1sum/e68a88939e0f06e34d2bc911f09b70890289c8fd.ttf::U+AA00,U+AA35,U+AA33:[a_cham=0+1121|laMedial_cham=0@-32,0+0|yaMedial_cham=0+542] +fonts/sha1sum/e68a88939e0f06e34d2bc911f09b70890289c8fd.ttf::U+AA00,U+AA35,U+AA36:[a_cham=0+1121|laMedial_waMedial_cham=0@43,0+0]