From 0a032ddeefaae8031c9628eb83c0c71698ce78af Mon Sep 17 00:00:00 2001 From: be5invis Date: Sun, 16 May 2021 01:16:13 -0700 Subject: [PATCH] Make selector of 'f' work on fltail and lenis-f (#998) --- font-src/glyphs/letter/latin/lower-f.ptl | 4 +-- params/variants.toml | 42 ++++++++++++++++++++++++ 2 files changed, 44 insertions(+), 2 deletions(-) diff --git a/font-src/glyphs/letter/latin/lower-f.ptl b/font-src/glyphs/letter/latin/lower-f.ptl index cf1b4bdf9..7e91e1342 100644 --- a/font-src/glyphs/letter/latin/lower-f.ptl +++ b/font-src/glyphs/letter/latin/lower-f.ptl @@ -134,9 +134,9 @@ glyph-block Letter-Latin-Lower-F : begin turned "turnf.\(suffix)" nothing "f.\(suffix)" df.middle (XH / 2) [df.markSet.(mkTurn)] select-variant 'f' 'f' - alias 'lenisf' 0xAB35 'f.serifless' - alias 'fltail' 0x192 'f.tailed' select-variant 'turnf' 0x25F (follow -- 'f') + select-variant 'lenisf' 0xAB35 (shapeFrom -- 'f') + select-variant 'fltail' 0x192 (shapeFrom -- 'f') alias 'dotlessJHookBar' 0x284 'f.dotlessJHookBar' diff --git a/params/variants.toml b/params/variants.toml index a4fd2defb..150c529ec 100644 --- a/params/variants.toml +++ b/params/variants.toml @@ -1650,101 +1650,143 @@ tag = "cv31" rank = 1 description = "`f` without bottom serif, hook or exension" selector.f = "serifless" +selector.lenisf = "serifless" +selector.fltail = "tailed" [prime.f.variants.serifed] rank = 2 description = "`f` with bottom serif" selector.f = "serifed" +selector.lenisf = "serifless" +selector.fltail = "tailed" [prime.f.variants.tailed] rank = 3 description = "`f` with bottom hook" selector.f = "tailed" +selector.lenisf = "serifless" +selector.fltail = "tailed" [prime.f.variants.extended] rank = 4 description = "`f` with bar extended to descender" selector.f = "extended" +selector.lenisf = "serifless" +selector.fltail = "tailed" [prime.f.variants.diagonal-tailed] rank = 5 description = "`f` with bottom diagonal tail" selector.f = "diagonalTailed" +selector.lenisf = "serifless" +selector.fltail = "tailed" [prime.f.variants.serifless-crossbar-at-x-height] rank = 6 description = "`f` without bottom serif, hook or exension; crossbar is placed right at X-height" selector.f = "seriflessCrossbarAtXHeight" +selector.lenisf = "seriflessCrossbarAtXHeight" +selector.fltail = "tailedCrossbarAtXHeight" [prime.f.variants.serifed-crossbar-at-x-height] rank = 7 description = "`f` with bottom serif; crossbar is placed right at X-height" selector.f = "serifedCrossbarAtXHeight" +selector.lenisf = "seriflessCrossbarAtXHeight" +selector.fltail = "tailedCrossbarAtXHeight" [prime.f.variants.tailed-crossbar-at-x-height] rank = 8 description = "`f` with bottom hook; crossbar is placed right at X-height" selector.f = "tailedCrossbarAtXHeight" +selector.lenisf = "seriflessCrossbarAtXHeight" +selector.fltail = "tailedCrossbarAtXHeight" [prime.f.variants.extended-crossbar-at-x-height] rank = 9 description = "`f` with bar extended to descender; crossbar is placed right at X-height" selector.f = "extendedCrossbarAtXHeight" +selector.lenisf = "seriflessCrossbarAtXHeight" +selector.fltail = "tailedCrossbarAtXHeight" [prime.f.variants.diagonal-tailed-crossbar-at-x-height] rank = 10 description = "`f` with bottom diagonal tail; crossbar is placed right at X-height" selector.f = "diagonalTailedCrossbarAtXHeight" +selector.lenisf = "seriflessCrossbarAtXHeight" +selector.fltail = "tailedCrossbarAtXHeight" [prime.f.variants.flat-hook] rank = 11 description = "`f` with flat top hook, without bottom serif, hook or exension" selector.f = "flatHook" +selector.lenisf = "flatHook" +selector.fltail = "flatHookTailed" [prime.f.variants.flat-hook-serifed] rank = 12 description = "`f` with flat top hook and bottom serif" selector.f = "flatHookSerifed" +selector.lenisf = "flatHook" +selector.fltail = "flatHookTailed" [prime.f.variants.flat-hook-tailed] rank = 13 description = "`f` with flat top hook and bottom hook" selector.f = "flatHookTailed" +selector.lenisf = "flatHook" +selector.fltail = "flatHookTailed" [prime.f.variants.flat-hook-extended] rank = 14 description = "`f` with flat top hook and bar extended to descender" selector.f = "flatHookExtended" +selector.lenisf = "flatHook" +selector.fltail = "flatHookTailed" [prime.f.variants.flat-hook-diagonal-tailed] rank = 15 description = "`f` with falt hook and bottom diagonal tail" selector.f = "flatHookDiagonalTailed" +selector.lenisf = "flatHook" +selector.fltail = "flatHookTailed" [prime.f.variants.flat-hook-crossbar-at-x-height] rank = 16 description = "`f` with flat top hook, without bottom serif, hook or exension; crossbar is placed right at X-height" selector.f = "flatHookCrossbarAtXHeight" +selector.lenisf = "flatHookCrossbarAtXHeight" +selector.fltail = "flatHookTailedCrossbarAtXHeight" [prime.f.variants.flat-hook-serifed-crossbar-at-x-height] rank = 17 description = "`f` with flat top hook, bottom serif; crossbar is placed right at X-height" selector.f = "flatHookSerifedCrossbarAtXHeight" +selector.lenisf = "flatHookCrossbarAtXHeight" +selector.fltail = "flatHookTailedCrossbarAtXHeight" [prime.f.variants.flat-hook-tailed-crossbar-at-x-height] rank = 18 description = "`f` with flat top hook, bottom hook; crossbar is placed right at X-height" selector.f = "flatHookTailedCrossbarAtXHeight" +selector.lenisf = "flatHookCrossbarAtXHeight" +selector.fltail = "flatHookTailedCrossbarAtXHeight" [prime.f.variants.flat-hook-extended-crossbar-at-x-height] rank = 19 description = "`f` with flat top hook, bar extended to descender; crossbar is placed right at X-height" selector.f = "flatHookExtendedCrossbarAtXHeight" +selector.lenisf = "flatHookCrossbarAtXHeight" +selector.fltail = "flatHookTailedCrossbarAtXHeight" [prime.f.variants.flat-hook-diagonal-tailed-crossbar-at-x-height] rank = 20 description = "`f` with falt hook and bottom diagonal tail; crossbar is placed right at X-height" selector.f = "flatHookDiagonalTailedCrossbarAtXHeight" +selector.lenisf = "flatHookCrossbarAtXHeight" +selector.fltail = "flatHookTailedCrossbarAtXHeight" + + [prime.g] sampler = "g"