diff options
author | Rasmus Andersson <rasmus@notion.se> | 2023-04-25 02:34:22 +0300 |
---|---|---|
committer | Rasmus Andersson <rasmus@notion.se> | 2023-04-25 02:34:22 +0300 |
commit | 4c9ced5068d485b90608c28590473a960fa72712 (patch) | |
tree | 99a778cf430a772053dc9be8b4c88aca4a8f9102 /src | |
parent | 719a1421f944b95baa42455fd4f2d849d70fe84e (diff) | |
download | inter-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.plist | 54 | ||||
-rw-r--r-- | src/Inter-Roman.glyphspackage/fontinfo.plist | 21 | ||||
-rw-r--r-- | src/features/liga-classes.fea | 12 | ||||
-rw-r--r-- | src/features/liga.fea | 16 |
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; |