summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorRasmus Andersson <rasmus@notion.se>2023-04-25 02:34:22 +0300
committerRasmus Andersson <rasmus@notion.se>2023-04-25 02:34:22 +0300
commit4c9ced5068d485b90608c28590473a960fa72712 (patch)
tree99a778cf430a772053dc9be8b4c88aca4a8f9102 /src
parent719a1421f944b95baa42455fd4f2d849d70fe84e (diff)
downloadinter-4c9ced5068d485b90608c28590473a960fa72712.tar.xz
adds ss06 that enables the exact same things as liga
Diffstat (limited to 'src')
-rw-r--r--src/Inter-Italic.glyphspackage/fontinfo.plist54
-rw-r--r--src/Inter-Roman.glyphspackage/fontinfo.plist21
-rw-r--r--src/features/liga-classes.fea12
-rw-r--r--src/features/liga.fea16
4 files changed, 68 insertions, 35 deletions
diff --git a/src/Inter-Italic.glyphspackage/fontinfo.plist b/src/Inter-Italic.glyphspackage/fontinfo.plist
index ca436d404..e9ce3dabd 100644
--- a/src/Inter-Italic.glyphspackage/fontinfo.plist
+++ b/src/Inter-Italic.glyphspackage/fontinfo.plist
@@ -2444,7 +2444,8 @@ code = "include(features/dlig.fea);";
tag = dlig;
},
{
-code = "include(features/liga.fea);
+code = "include(features/liga-classes.fea);
+include(features/liga.fea);
";
tag = liga;
},
@@ -2655,6 +2656,17 @@ 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;
},
@@ -4363,12 +4375,13 @@ kerningLTR = {
"@MMK_R_hyphen" = -69;
"@MMK_R_idotless" = 11;
"@MMK_R_nine.1" = -20;
+"@MMK_R_o" = -30;
"@MMK_R_one" = -69;
"@MMK_R_quotedbl" = -162;
"@MMK_R_quotedblleft" = -267;
"@MMK_R_quotedblright" = -209;
"@MMK_R_registered" = -145;
-"@MMK_R_t" = -69;
+"@MMK_R_t" = -10;
"@MMK_R_v" = -139;
"@MMK_R_w" = -139;
Psi = -81;
@@ -5277,7 +5290,6 @@ zeta = -128;
};
"@MMK_L_r" = {
"@MMK_R_A" = -81;
-"@MMK_R_B" = 32;
"@MMK_R_J" = -116;
"@MMK_R_T" = -116;
"@MMK_R_Z" = -69;
@@ -5404,7 +5416,7 @@ underscore = -93;
"@MMK_R_o" = -11;
"@MMK_R_quotedblleft" = -81;
"@MMK_R_s" = -20;
-"@MMK_R_t" = -80;
+"@MMK_R_t" = -40;
"@MMK_R_zero.subs" = 69;
less = -58;
};
@@ -6033,7 +6045,7 @@ m012 = {
"@MMK_R_quotedblleft" = -267;
"@MMK_R_quotedblright" = -209;
"@MMK_R_registered" = -145;
-"@MMK_R_t" = -69;
+"@MMK_R_t" = -40;
"@MMK_R_v" = -139;
"@MMK_R_w" = -139;
Psi = -81;
@@ -6986,7 +6998,6 @@ zeta = -128;
};
"@MMK_L_r" = {
"@MMK_R_A" = -81;
-"@MMK_R_B" = 69;
"@MMK_R_J" = -116;
"@MMK_R_T" = -116;
"@MMK_R_Z" = -69;
@@ -9517,7 +9528,7 @@ underscore = -81;
};
"@MMK_L_D" = {
"@MMK_R_A" = -70;
-"@MMK_R_T" = -100;
+"@MMK_R_T" = -90;
"@MMK_R_V" = -69;
"@MMK_R_W" = -40;
"@MMK_R_X" = -90;
@@ -9615,7 +9626,7 @@ periodcentered = -93;
};
"@MMK_L_L" = {
"@MMK_R_C" = -58;
-"@MMK_R_T" = -197;
+"@MMK_R_T" = -200;
"@MMK_R_V" = -139;
"@MMK_R_Y" = -280;
"@MMK_R_asciicircum" = -267;
@@ -9678,7 +9689,7 @@ period = -69;
};
"@MMK_L_T" = {
"@MMK_R_A" = -200;
-"@MMK_R_C" = -100;
+"@MMK_R_C" = -90;
"@MMK_R_J" = -186;
"@MMK_R_Omicrongreek" = -104;
"@MMK_R_T.sc" = -128;
@@ -9689,6 +9700,7 @@ period = -69;
"@MMK_R_comma" = -69;
"@MMK_R_deltagreek" = -122;
"@MMK_R_epsilongreek" = -267;
+"@MMK_R_f" = -30;
"@MMK_R_four" = -139;
"@MMK_R_gammagreek" = -209;
"@MMK_R_guillemetleft" = -267;
@@ -9697,19 +9709,20 @@ period = -69;
"@MMK_R_idblgrave" = 261;
"@MMK_R_idieresis" = 186;
"@MMK_R_iotadieresisgreek" = 220;
-"@MMK_R_m" = -116;
-"@MMK_R_o" = -260;
+"@MMK_R_m" = -190;
+"@MMK_R_o" = -240;
"@MMK_R_omegagreek" = -267;
"@MMK_R_psigreek" = -267;
"@MMK_R_quotedblbase" = -244;
-"@MMK_R_s" = -151;
+"@MMK_R_s" = -230;
"@MMK_R_six" = -69;
"@MMK_R_slash" = -162;
+"@MMK_R_t" = -20;
"@MMK_R_u" = -190;
-"@MMK_R_v" = -128;
-"@MMK_R_w" = -128;
-"@MMK_R_x" = -128;
-"@MMK_R_z" = -93;
+"@MMK_R_v" = -230;
+"@MMK_R_w" = -220;
+"@MMK_R_x" = -200;
+"@MMK_R_z" = -210;
"@MMK_R_zero.subs" = -256;
Omega = -69;
adieresis = -81;
@@ -10090,7 +10103,7 @@ Psi = -93;
"@MMK_R_guillemetleft" = -81;
"@MMK_R_hyphen" = -58;
"@MMK_R_idblgrave" = 93;
-"@MMK_R_idieresis" = 209;
+"@MMK_R_idieresis" = 200;
"@MMK_R_o" = -10;
"@MMK_R_quotedblbase" = -186;
"@MMK_R_s" = -46;
@@ -12921,7 +12934,7 @@ m010 = {
"@MMK_R_bullet" = -69;
"@MMK_R_dagger" = -151;
"@MMK_R_eight.sups" = -186;
-"@MMK_R_f" = -34;
+"@MMK_R_f" = -80;
"@MMK_R_gammagreek" = -104;
"@MMK_R_guillemetleft" = -69;
"@MMK_R_guillemetright" = -69;
@@ -12934,7 +12947,7 @@ m010 = {
"@MMK_R_quotedblright" = -209;
"@MMK_R_registered" = -145;
"@MMK_R_s" = -43;
-"@MMK_R_t" = -69;
+"@MMK_R_t" = -90;
"@MMK_R_v" = -139;
"@MMK_R_w" = -139;
Psi = -81;
@@ -13330,6 +13343,7 @@ less = -128;
"@MMK_R_V" = -104;
"@MMK_R_W" = -104;
"@MMK_R_Y" = -238;
+"@MMK_R_f" = -20;
"@MMK_R_idblgrave" = 93;
"@MMK_R_one" = -81;
"@MMK_R_quotedbl" = -60;
@@ -13850,7 +13864,7 @@ zeta = -128;
};
"@MMK_L_r" = {
"@MMK_R_A" = -81;
-"@MMK_R_B" = 40;
+"@MMK_R_B" = 20;
"@MMK_R_J" = -116;
"@MMK_R_T" = -116;
"@MMK_R_Z" = -69;
diff --git a/src/Inter-Roman.glyphspackage/fontinfo.plist b/src/Inter-Roman.glyphspackage/fontinfo.plist
index 9fc5199c1..e13e299a1 100644
--- a/src/Inter-Roman.glyphspackage/fontinfo.plist
+++ b/src/Inter-Roman.glyphspackage/fontinfo.plist
@@ -2440,7 +2440,8 @@ code = "include(features/calt.fea);
tag = calt;
},
{
-code = "include(features/liga.fea);
+code = "include(features/liga-classes.fea);
+include(features/liga.fea);
";
tag = liga;
},
@@ -2655,6 +2656,17 @@ 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;
},
@@ -4239,12 +4251,13 @@ kerningLTR = {
"@MMK_R_hyphen" = -69;
"@MMK_R_idotless" = 11;
"@MMK_R_nine.1" = -20;
+"@MMK_R_o" = -30;
"@MMK_R_one" = -69;
"@MMK_R_quotedbl" = -162;
"@MMK_R_quotedblleft" = -267;
"@MMK_R_quotedblright" = -209;
"@MMK_R_registered" = -145;
-"@MMK_R_t" = -69;
+"@MMK_R_t" = -10;
"@MMK_R_v" = -139;
"@MMK_R_w" = -139;
Psi = -81;
@@ -5279,7 +5292,7 @@ underscore = -93;
"@MMK_R_o" = -11;
"@MMK_R_quotedblleft" = -81;
"@MMK_R_s" = -20;
-"@MMK_R_t" = -80;
+"@MMK_R_t" = -40;
"@MMK_R_zero.subs" = 69;
less = -58;
};
@@ -5908,7 +5921,7 @@ m011 = {
"@MMK_R_quotedblleft" = -267;
"@MMK_R_quotedblright" = -209;
"@MMK_R_registered" = -145;
-"@MMK_R_t" = -69;
+"@MMK_R_t" = -40;
"@MMK_R_v" = -139;
"@MMK_R_w" = -139;
Psi = -81;
diff --git a/src/features/liga-classes.fea b/src/features/liga-classes.fea
new file mode 100644
index 000000000..ce623a989
--- /dev/null
+++ b/src/features/liga-classes.fea
@@ -0,0 +1,12 @@
+# classes used by liga and ss06
+
+# left side "trigger" glyph for t.1 and f.1 sub
+@LIGA_L_t = [
+ f f.1 fdotaccent feng
+
+ 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
+];
diff --git a/src/features/liga.fea b/src/features/liga.fea
index 8fa85f646..47491836e 100644
--- a/src/features/liga.fea
+++ b/src/features/liga.fea
@@ -1,5 +1,9 @@
-# Standard Ligatures
+# Standard Ligatures (also available via ss06)
# 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
@@ -18,15 +22,5 @@ sub f' [
] by f.i;
# tt, ft, rt, tf, ff, ft, etc.
-# left side "trigger" glyph for t.1 and f.1 sub
-@LIGA_L_t = [
- f f.1 fdotaccent feng
-
- 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
-];
sub @LIGA_L_t t' by t.1;
sub @LIGA_L_t f' by f.1;