diff options
author | Karl Berry <karl@freefriends.org> | 2012-05-22 23:07:13 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2012-05-22 23:07:13 +0000 |
commit | 0e55f00ba51c1f81c7ac174220079f43e1ba922c (patch) | |
tree | 357b13b6abcdc2e7599c1f5dff97f52a0e22408f /Master/texmf-dist/doc/fonts/amiri/sources/kerning.fea | |
parent | 0506981cdfe86dc9d94f970876f2722a2993665c (diff) |
amiri 0.102 (22may12)
git-svn-id: svn://tug.org/texlive/trunk@26576 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/doc/fonts/amiri/sources/kerning.fea')
-rw-r--r-- | Master/texmf-dist/doc/fonts/amiri/sources/kerning.fea | 57 |
1 files changed, 26 insertions, 31 deletions
diff --git a/Master/texmf-dist/doc/fonts/amiri/sources/kerning.fea b/Master/texmf-dist/doc/fonts/amiri/sources/kerning.fea index 1aef18ada0a..cfd5df910b7 100644 --- a/Master/texmf-dist/doc/fonts/amiri/sources/kerning.fea +++ b/Master/texmf-dist/doc/fonts/amiri/sources/kerning.fea @@ -1,53 +1,48 @@ -@1st_2 = [@aDal.fina @aDal.isol @aDal.fina_BaaDalIsol +@Dal_1 = [@aDal.fina @aDal.fina_BaaDalIsol @aDal.fina_KafDal @aDal.fina_LamDal]; -@1st_3 = [@aRaa.fina_MemRaaIsol]; # XXX @aRaa.fina.alt2 +@Dal_2 = [@aDal.isol]; +@1st_3 = [@aRaa.fina_MemRaaIsol]; @1st_4 = [@aHeh.isol @aHeh.fina @aHeh.fina_KafHeh @aHeh.fina_LamHeh]; -@2nd_1 = [@aKaf.init @aKaf.init_KafHeh +@Kaf_1 = [@aKaf.init_KafHeh @aKaf.init_KafMemInit @aKaf.init_KafYaaIsol - @aKaf.init_KafMemIsol @aKaf.init_KafLam + @aKaf.init_KafMemIsol @aKaf.init_KafRaaIsol]; -@2nd_2 = [@aKaf.init_KafBaaInit @aKaf.init_KafMemAlf]; +@Kaf_2 = [@aKaf.init_KafBaaInit @aKaf.init_KafMemAlf]; +@Kaf_3 = [@aKaf.init @aKaf.init_KafLam]; @2nd_3 = [@aSen.init_SenHaaInit @aSad.init_SadHaaInit @aLam.init_LamHaaHaaInit]; @2nd_4 = [@aSad.init_AboveHaaIsol @aSen.init_AboveHaaIsol @aHeh.init_AboveHaaIsol @aHaa.init_AboveHaaIsol @aMem.init_AboveHaaIsol @aKaf.init_AboveHaaIsol @aAyn.init_AboveHaaIsol]; feature kern { - lookupflag IgnoreMarks, RightToLeft; - enum pos @RaaWaw @2nd_1 <-600 0 -600 0>; - enum pos @1st_2 @2nd_1 <-600 0 -600 0>; - enum pos @1st_3 @2nd_1 <-800 0 -800 0>; + lookupflag IgnoreMarks; + pos [@RaaWaw @Dal_1]' <-600 0 -600 0> @Kaf_1; + pos [@RaaWaw @Dal_1]' <-300 0 -300 0> [@Kaf_2 @Kaf_3]; - enum pos @RaaWaw @2nd_2 <-300 0 -300 0>; - enum pos @1st_2 @2nd_2 <-300 0 -300 0>; - enum pos @1st_3 @2nd_2 <-400 0 -400 0>; + pos @RaaWaw' <-100 0 -100 0> @2nd_3; - enum pos @RaaWaw @2nd_3 <-100 0 -100 0>; + pos @Dal_2' <-200 0 -200 0> @Kaf_3; - enum pos @1st_3 @2nd_3 <-200 0 -200 0>; - enum pos @1st_3 @2nd_4 <-400 0 -400 0>; + pos @1st_3' <-400 0 -400 0> [@Kaf_2 @Kaf_3]; + pos @1st_3' <-800 0 -800 0> @Kaf_1; + pos @1st_3' <-200 0 -200 0> @2nd_3; + pos @1st_3' <-400 0 -400 0> @2nd_4; - # +ve kern so that the tail of raa/waw does not touch the dot of baa - enum pos @RaaWaw @aBaaDotBelow <170 0 170 0>; + # +ve kern so that the tail of raa/waw does not touch the dot of baa + pos @RaaWaw' <170 0 170 0> @aBaaDotBelow; } kern; feature kern { - lookupflag IgnoreMarks, RightToLeft; - # this baa requires an extra +ve kern than the ones above - # XXX: we only need a subset of @aBaa.init_High - enum pos @RaaWaw @aBaa.init_High <80 0 80 0>; + lookupflag IgnoreMarks; + pos @RaaWaw' <80 0 80 0> @aYaa.init; } kern; -lookup pos_500 { - pos @2nd_1 -500; -} pos_500; - feature kern { - lookupflag IgnoreMarks, RightToLeft; - # kern heh isol/final followed by kaf, does not happen in Arabic but can be - # seen in Kurdish or Persian using ZWNJ between them, so we double the rule - # w/o ZWNJ as someapplications remove it after shaping. - pos @1st_4 @2nd_1' lookup pos_500; - pos uni200C @1st_4 @2nd_1' lookup pos_500; + lookupflag IgnoreMarks; + # kern heh isol/final followed by kaf, does not happen in Arabic but can be + # seen in Kurdish or Persian using ZWNJ between them. + pos uni200C @1st_4 @Kaf_1' -500; + pos space @1st_4 @Kaf_1' -500; # Uniscribe replace ZWNJ with space + pos @1st_4 @Kaf_1' -500; # some applications might just remove it } kern; |