summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/doc/fonts/amiri/sources/kerning.fea
diff options
context:
space:
mode:
Diffstat (limited to 'Master/texmf-dist/doc/fonts/amiri/sources/kerning.fea')
-rw-r--r--Master/texmf-dist/doc/fonts/amiri/sources/kerning.fea71
1 files changed, 63 insertions, 8 deletions
diff --git a/Master/texmf-dist/doc/fonts/amiri/sources/kerning.fea b/Master/texmf-dist/doc/fonts/amiri/sources/kerning.fea
index 063c81af158..5d75e474acb 100644
--- a/Master/texmf-dist/doc/fonts/amiri/sources/kerning.fea
+++ b/Master/texmf-dist/doc/fonts/amiri/sources/kerning.fea
@@ -1,7 +1,6 @@
@Dal_1 = [@aDal.fina @aDal.fina_BaaDal @aDal.fina_KafDal @aDal.fina_LamDal
@aDal.isol];
@1st_2 = [@RaaWaw @AlefHamzaBelow];
-@1st_3 = [@aRaa.fina_MemRaaIsol];
@1st_4 = [@aHeh.isol @aHeh.fina @aHeh.fina_KafHeh @aHeh.fina_LamHeh];
// final alef with no hamza above
@@ -17,6 +16,7 @@
@Kaf_5 = [@aKaf.init_KafMemInit @aKaf.init_KafRaaIsol];
@Raa_1 = [@RaaWaw @aDal.fina @aDal.isol @aDal.fina_BaaDal @aDal.fina_KafDal
@aDal.fina_LamDal];
+@Raa_2 = [@aRaa.fina_MemRaaIsol];
@2nd_3 = [@aSen.init_SenHaaInit @aSad.init_SadHaaInit @aLam.init_LamHaaHaaInit];
@2nd_4 = [@aSad.init_AboveHaa @aSen.init_AboveHaa @aHeh.init_AboveHaa
@aHaa.init_AboveHaa @aMem.init_AboveHaa @aKaf.init_AboveHaa
@@ -53,10 +53,10 @@ feature kern {
pos @Dal_1' <-600 0 -600 0> @Kaf_5;
pos @Dal_1' <-400 0 -400 0> [@Kaf_2 @Kaf_3];
- pos @1st_3' <-400 0 -400 0> [@Kaf_2 @Kaf_3 @Kaf_4];
- pos @1st_3' <-800 0 -800 0> [@Kaf_1 @Kaf_5];
- pos @1st_3' <-200 0 -200 0> @2nd_3;
- pos @1st_3' <-400 0 -400 0> @2nd_4;
+ pos @Raa_2' <-400 0 -400 0> [@Kaf_2 @Kaf_3 @Kaf_4];
+ pos @Raa_2' <-800 0 -800 0> [@Kaf_1 @Kaf_5];
+ pos @Raa_2' <-200 0 -200 0> @2nd_3;
+ pos @Raa_2' <-400 0 -400 0> @2nd_4;
// the dots of teh marbuta are very close to exclamation mark
pos @Teh_m' < 150 0 150 0> exclam;
@@ -68,9 +68,6 @@ feature kern {
pos [@aAyn.init @aFaa.init @aHeh.init @aLam.init
@aMem.init @aSen.init @aTaa.init uni06BE.init]' lookup YaaBari3Kern
@aBaa.medi_YaaBari;
-
- pos [@aAlf.isol @Alf_2]' <200 0 200 0> @aBaa.init_BaaNonIsol;
- pos [@aAlf.isol @Alf_2]' <300 0 300 0> @aBaa.init_BaaRaaIsol;
} kern;
// we don't want to ignore marks here
@@ -103,6 +100,57 @@ feature kern {
pos @1st_4 [@Kaf_1 @Kaf_2 @Kaf_3 @Kaf_4 @Kaf_5]' -500;
} kern;
+// were are only interested in subset of already defined classes; the ones with
+// wide dots below.
+@aYaa_1 = [uni0680.init uni0776.init uni0750.init uni06CE.init uni0775.init uni06BD.init
+ uni064A.init uni0755.init uni067E.init uni067B.init uni0753.init uni0752.init
+ uni063D.init uni0754.init uni06D1.init uni06D0.init uni06CC.init uni0767.init
+ uni0680.init_BaaRaaIsol uni0776.init_BaaRaaIsol uni0750.init_BaaRaaIsol
+ uni06CE.init_BaaRaaIsol uni0775.init_BaaRaaIsol uni06BD.init_BaaRaaIsol
+ uni064A.init_BaaRaaIsol uni0755.init_BaaRaaIsol uni067E.init_BaaRaaIsol
+ uni067B.init_BaaRaaIsol uni0753.init_BaaRaaIsol uni0752.init_BaaRaaIsol
+ uni063D.init_BaaRaaIsol uni0754.init_BaaRaaIsol uni06D1.init_BaaRaaIsol
+ uni06D0.init_BaaRaaIsol uni06CC.init_BaaRaaIsol uni0767.init_BaaRaaIsol
+ uni0680.init_BaaNonIsol uni0776.init_BaaNonIsol uni0750.init_BaaNonIsol
+ uni06CE.init_BaaNonIsol uni0775.init_BaaNonIsol uni06BD.init_BaaNonIsol
+ uni064A.init_BaaNonIsol uni0755.init_BaaNonIsol uni067E.init_BaaNonIsol
+ uni067B.init_BaaNonIsol uni0753.init_BaaNonIsol uni0752.init_BaaNonIsol
+ uni063D.init_BaaNonIsol uni0754.init_BaaNonIsol uni06D1.init_BaaNonIsol
+ uni06D0.init_BaaNonIsol uni06CC.init_BaaNonIsol uni0767.init_BaaNonIsol
+ uni0680.init_BaaYaaIsol uni0776.init_BaaYaaIsol uni0750.init_BaaYaaIsol
+ uni06CE.init_BaaYaaIsol uni0775.init_BaaYaaIsol uni06BD.init_BaaYaaIsol
+ uni064A.init_BaaYaaIsol uni0755.init_BaaYaaIsol uni067E.init_BaaYaaIsol
+ uni067B.init_BaaYaaIsol uni0753.init_BaaYaaIsol uni0752.init_BaaYaaIsol
+ uni063D.init_BaaYaaIsol uni0754.init_BaaYaaIsol uni06D1.init_BaaYaaIsol
+ uni06D0.init_BaaYaaIsol uni06CC.init_BaaYaaIsol uni0767.init_BaaYaaIsol
+ uni0680.init_BaaMemIsol uni0776.init_BaaMemIsol uni0750.init_BaaMemIsol
+ uni06CE.init_BaaMemIsol uni0775.init_BaaMemIsol uni06BD.init_BaaMemIsol
+ uni064A.init_BaaMemIsol uni0755.init_BaaMemIsol uni067E.init_BaaMemIsol
+ uni067B.init_BaaMemIsol uni0753.init_BaaMemIsol uni0752.init_BaaMemIsol
+ uni063D.init_BaaMemIsol uni0754.init_BaaMemIsol uni06D1.init_BaaMemIsol
+ uni06D0.init_BaaMemIsol uni06CC.init_BaaMemIsol uni0767.init_BaaMemIsol
+ uni0680.init_BaaSenAltInit uni0776.init_BaaSenAltInit uni0750.init_BaaSenAltInit
+ uni06CE.init_BaaSenAltInit uni0775.init_BaaSenAltInit uni06BD.init_BaaSenAltInit
+ uni064A.init_BaaSenAltInit uni0755.init_BaaSenAltInit uni067E.init_BaaSenAltInit
+ uni067B.init_BaaSenAltInit uni0753.init_BaaSenAltInit uni0752.init_BaaSenAltInit
+ uni063D.init_BaaSenAltInit uni0754.init_BaaSenAltInit uni06D1.init_BaaSenAltInit
+ uni06D0.init_BaaSenAltInit uni06CC.init_BaaSenAltInit uni0767.init_BaaSenAltInit];
+
+feature kern {
+ lookupflag IgnoreMarks;
+ pos @Raa_2' <180 0 180 0> @aYaa_1;
+} kern;
+
+feature kern {
+ lookupflag IgnoreMarks;
+#ifndef QURAN
+ pos period.ara' <-300 0 -300 0> [quotedblleft quoteleft];
+ pos period' -150 [quotedblright quoteright];
+#else
+ pos period' <-300 0 -300 0> [quotedblleft quoteleft];
+#endif
+} kern;
+
#ifdef ITALIC
feature kern {
lookupflag IgnoreMarks;
@@ -151,3 +199,10 @@ feature kern {
// generated features for anchor points will be inserted here by build script
{%anchors%}
+
+// With ss05 on, kasra is below shadda, so move the shadda up a bit to
+// compensate for the kasra.
+feature ss05 {
+ pos uni0651' <0 210 0 0> [uni0650.small];
+ pos uni0651' <0 350 0 0> [uni064D.small];
+} ss05;