summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorRasmus Andersson <rasmus@notion.se>2023-05-25 23:06:06 +0300
committerRasmus Andersson <rasmus@notion.se>2023-05-25 23:06:06 +0300
commit8c770919245d62311071734c0b2a8f1bb157c589 (patch)
tree56e816210b8a9b536d824fce2d8d331e66799895 /src
parentbc3102a79c1f6677c01ca0345145626bc40cc8ac (diff)
downloadinter-8c770919245d62311071734c0b2a8f1bb157c589.tar.xz
move fanyc tt tf etc ligatures from liga to dlig
Diffstat (limited to 'src')
-rw-r--r--src/Inter-Italic.glyphspackage/fontinfo.plist17
-rw-r--r--src/Inter-Roman.glyphspackage/fontinfo.plist34
-rw-r--r--src/features/dlig-classes.fea (renamed from src/features/liga-classes.fea)2
-rw-r--r--src/features/dlig.fea33
-rw-r--r--src/features/liga.fea13
5 files changed, 50 insertions, 49 deletions
diff --git a/src/Inter-Italic.glyphspackage/fontinfo.plist b/src/Inter-Italic.glyphspackage/fontinfo.plist
index e9a52044e..9a313e8b3 100644
--- a/src/Inter-Italic.glyphspackage/fontinfo.plist
+++ b/src/Inter-Italic.glyphspackage/fontinfo.plist
@@ -2428,12 +2428,12 @@ code = "include(features/calt.fea);
tag = calt;
},
{
-code = "include(features/dlig.fea);";
+code = "include(features/dlig.fea);
+";
tag = dlig;
},
{
-code = "include(features/liga-classes.fea);
-include(features/liga.fea);
+code = "include(features/liga.fea);
";
tag = liga;
},
@@ -2644,17 +2644,6 @@ value = "";
tag = ss05;
},
{
-code = "include(features/liga.fea);
-";
-labels = (
-{
-language = dflt;
-value = "Force enable ligatures";
-}
-);
-tag = ss06;
-},
-{
code = "include(features/cv01-one.fea);";
tag = cv01;
},
diff --git a/src/Inter-Roman.glyphspackage/fontinfo.plist b/src/Inter-Roman.glyphspackage/fontinfo.plist
index 6b950c63c..702a7d25c 100644
--- a/src/Inter-Roman.glyphspackage/fontinfo.plist
+++ b/src/Inter-Roman.glyphspackage/fontinfo.plist
@@ -740,6 +740,7 @@ iebrevecyrillic,
eturn,
_part.f_base,
f,
+f.1,
longs,
slongstroke,
slongdotaccent,
@@ -2428,13 +2429,13 @@ code = "include(features/calt.fea);
tag = calt;
},
{
-code = "include(features/liga-classes.fea);
-include(features/liga.fea);
+code = "include(features/liga.fea);
";
tag = liga;
},
{
-code = "include(features/dlig.fea);";
+code = "include(features/dlig.fea);
+";
tag = dlig;
},
{
@@ -2646,17 +2647,6 @@ value = "";
tag = ss05;
},
{
-code = "include(features/liga.fea);
-";
-labels = (
-{
-language = dflt;
-value = "Force enable ligatures";
-}
-);
-tag = ss06;
-},
-{
code = "include(features/cv01-one.fea);";
tag = cv01;
},
@@ -2698,7 +2688,7 @@ code = "include(features/cv10-g-spur.fea);";
tag = cv10;
},
{
-code = "cvParameters { FeatUILabelNameID { name \"Single-storey a\"; }; };
+code = "cvParameters { FeatUILabelNameID { name \"Single-story a\"; }; };
include(features/cv11-single-storey-a.fea);
";
tag = cv11;
@@ -3294,10 +3284,11 @@ stemValues = (
userData = {
GSCornerRadius = 180;
GSOffsetCapStyle = 3;
-GSOffsetHorizontal = 85;
+GSOffsetHorizontal = 87;
GSOffsetKeepCompatible = 1;
GSOffsetMakeStroke = 1;
-GSOffsetVertical = 80;
+GSOffsetPosition = 1;
+GSOffsetVertical = 85;
};
},
{
@@ -3577,9 +3568,10 @@ userData = {
GSCornerRadius = 160;
GSExtrudeAngle = 30;
GSExtrudeOffset = 15;
-GSOffsetHorizontal = 150;
+GSOffsetHorizontal = 180;
GSOffsetKeepCompatible = 1;
GSOffsetMakeStroke = 1;
+GSOffsetPosition = 1;
GSOffsetProportional = 1;
GSOffsetVertical = 130;
};
@@ -10013,7 +10005,7 @@ Psi = -93;
"@MMK_R_bullet" = -46;
"@MMK_R_comma" = -116;
"@MMK_R_eight.sups" = 46;
-"@MMK_R_f" = -50;
+"@MMK_R_f" = -60;
"@MMK_R_four" = -128;
"@MMK_R_guillemetleft" = -81;
"@MMK_R_hyphen" = -58;
@@ -10506,7 +10498,7 @@ underscore = -93;
"@MMK_R_Y" = -32;
"@MMK_R_a" = 20;
"@MMK_R_bullet" = -23;
-"@MMK_R_f" = -70;
+"@MMK_R_f" = 0;
"@MMK_R_four" = -29;
"@MMK_R_hyphen" = -40;
"@MMK_R_idblgrave" = 93;
@@ -10515,7 +10507,7 @@ underscore = -93;
"@MMK_R_quotedblleft" = -81;
"@MMK_R_quotedblright" = 58;
"@MMK_R_s" = -20;
-"@MMK_R_t" = -80;
+"@MMK_R_t" = -70;
"@MMK_R_v" = 60;
"@MMK_R_w" = 50;
"@MMK_R_zero.subs" = 69;
diff --git a/src/features/liga-classes.fea b/src/features/dlig-classes.fea
index ce623a989..b01b6d950 100644
--- a/src/features/liga-classes.fea
+++ b/src/features/dlig-classes.fea
@@ -1,4 +1,4 @@
-# classes used by liga and ss06
+# classes used by dlig and ss06
# left side "trigger" glyph for t.1 and f.1 sub
@LIGA_L_t = [
diff --git a/src/features/dlig.fea b/src/features/dlig.fea
index 37352a4f1..2182a2bd4 100644
--- a/src/features/dlig.fea
+++ b/src/features/dlig.fea
@@ -1,11 +1,42 @@
# Discretionary Ligatures
-# https://docs.microsoft.com/en-us/typography/opentype/spec/features_ae#dlig
+# https://learn.microsoft.com/en-us/typography/opentype/spec/features_ae#dlig
# Set IgnoreMarks to skip over marks in lookups.
# For example, if we have /f/acutecomb/i, treat lookup as /f/i
# https://learn.microsoft.com/en-us/typography/opentype/spec/chapter2#lookup-table
lookupflag IgnoreMarks;
+# left side "trigger" glyph for t.1 and f.1 sub
+@DLIG_L_t = [
+ f f.1 fdotaccent feng
+
+ k khook kcommaaccent kcaron kacute kdotbelow klinebelow k.base
+
+ r rrthook uni024D rfishhook rdescend racute rcommaaccent rcaron
+ rdblgrave rinvertedbreve rdotaccent rdotbelow rdotbelowmacron rlinebelow
+
+ t t.1 tpalatalhook trthook tcurl tbar tcedilla tcaron tcommaaccent tdotaccent
+ tdotbelow tlinebelow tcircumflexbelow tdieresis
+
+ v vtilde vdotbelow
+
+ w wdieresis wcircumflex wgrave wacute wdotaccent wdotbelow wring
+
+ x xdotaccent xdieresis khacyrillic chi
+
+ y ydieresis uni024F yacute ycircumflex uni0233 ydotaccent yring ygrave ydotbelow
+ yhookabove ytilde ucyrillic ushortcyrillic umacroncyrillic udieresiscyrillic
+ uhungarumlautcyrillic yogonek y.sc
+];
+
+# ffi (note. f.i is sub'd by liga)
+sub f [ f f.i ]' i by f.i.1;
+
+# tt, ft, rt, tf, ff, ft ...
+sub @DLIG_L_t t' by t.1;
+sub @DLIG_L_t f' by f.1;
+
+# interrobang
sub exclam question by interrobang;
sub question exclam by interrobang;
sub exclamdown questiondown by invertedinterrobang;
diff --git a/src/features/liga.fea b/src/features/liga.fea
index 47491836e..e4caaaa09 100644
--- a/src/features/liga.fea
+++ b/src/features/liga.fea
@@ -1,18 +1,11 @@
-# Standard Ligatures (also available via ss06)
+# Standard Ligatures
# https://learn.microsoft.com/en-us/typography/opentype/spec/features_ko#liga
-#
-# Note: this code is included for both liga and ss06, thus classes like LIGA_L_t
-# are defined in a separate file: liga-classes.fea (classes are not namespaced)
-#
# Set IgnoreMarks to skip over marks in lookups.
# For example, if we have /f/acutecomb/i, treat lookup as /f/i
# https://learn.microsoft.com/en-us/typography/opentype/spec/chapter2#lookup-table
lookupflag IgnoreMarks;
-# ffi
-sub f f' i by f.i.1;
-
# fi
sub f' [
i idotless idotless.double itildebelow ibar igrave iacute iogonek
@@ -20,7 +13,3 @@ sub f' [
j jdotless jdotlessbar uni0249 uni0249.ccmp jcrosstail yotgreek jecyrillic
] by f.i;
-
-# tt, ft, rt, tf, ff, ft, etc.
-sub @LIGA_L_t t' by t.1;
-sub @LIGA_L_t f' by f.1;