From c2e93e4e5b23b9c0521a2ae585bedccaeb90bf1d Mon Sep 17 00:00:00 2001 From: be5invis Date: Fri, 18 Dec 2020 17:07:02 -0800 Subject: [PATCH] Create separate variant selector for Cyrillic capital U (#773). --- README.md | 27 ++++++-- changes/4.1.0.md | 3 +- font-src/glyphs/letter/latin.ptl | 80 ++++++++++++---------- font-src/support/variant-data.js | 2 + params/variants.toml | 113 ++++++++++++++++++++++++------- utility/amend-readme/index.js | 3 +- 6 files changed, 160 insertions(+), 68 deletions(-) diff --git a/README.md b/README.md index c7029e47f..7c8fa5c0b 100644 --- a/README.md +++ b/README.md @@ -508,6 +508,9 @@ Subsection `variants` is used to configure character variants in the font. Prope + `d = 'toothless-corner'`, `cv14 = 2`: `d` without bottom-right tooth, with a corner transition. + `d = 'toothless-rounded'`, `cv14 = 3`: `d` without bottom-right tooth, with a rounded transition. + `d = 'tailed'`, `cv14 = 4`: `d` with a slightly tail bottom-right tail (default for Italic). + - Styles for `e`: + + `e = 'flat-crossbar'`, `cv59 = 1`: `e` with flat crossbar (default for Upright). + + `e = 'rounded'`, `cv59 = 2`: `e` with more rounded shape (default for Italic). - Styles for `f`: + `f = 'serifless'`, `cv15 = 1`: `f` without bottom serif, hook or exension (default for Sans Upright). + `f = 'serifed'`, `cv15 = 2`: `f` with bottom serif (default for Slab Upright). @@ -531,6 +534,9 @@ Subsection `variants` is used to configure character variants in the font. Prope + `g = 'opendoublestorey'`, `cv16 = 3`: Open Double-storey `g`, like Trebuchet MS or Fira Code. + `g = 'earless-corner'`, `cv16 = 4`: Earless (cornered top-right) single-storey `g`. + `g = 'earless-rounded'`, `cv16 = 5`: Earless (rounded top-right) single-storey `g`. + + `g = 'singlestorey-flat-hook'`, `cv16 = 6`: Single-storey `g` with flat terminal hook. + + `g = 'singlestorey-earless-corner-flat-hook'`, `cv16 = 7`: Earless (cornered top-right) single-storey `g` with flat terminal hook. + + `g = 'singlestorey-earless-rounded-flat-hook'`, `cv16 = 8`: Earless (rounded top-right) single-storey `g` with flat terminal hook. - Styles for `h`: + `h = 'straight'`, `cv17 = 1`: `h` with straight ending (default). + `h = 'tailed'`, `cv17 = 2`: `h` with curly tailed ending. @@ -647,6 +653,7 @@ Subsection `variants` is used to configure character variants in the font. Prope + `y = 'straight-turn'`, `cv32 = 2`: Letter `y` with straight upper and a tail turns leftward (default for Slab Upright). + `y = 'curly'`, `cv32 = 3`: More curly letter `y`, like Iosevka 2.x. + `y = 'cursive'`, `cv32 = 4`: Cursive-like `y` (default for Italic). + + `y = 'cursive-flat-hook'`, `cv32 = 5`: Cursive-like `y` with flat terminal hook. - Styles for `z`, `Z`: + `z = 'standard'`, `cv33 = 1`: Standard `Z` and `z` (default). + `z = 'with-crossbar'`, `cv33 = 2`: Standard `Z` and `z` with a diagonal cross bar for better dsitinction with `2`. @@ -654,13 +661,19 @@ Subsection `variants` is used to configure character variants in the font. Prope + `z = 'curly'`, `cv33 = 4`: Curly `Z` and `z`. + `z = 'curly-with-crossbar'`, `cv33 = 5`: Curly `Z` and `z` with a diagonal cross bar for better dsitinction with `2`. + `z = 'curly-with-horizontal-crossbar'`, `cv33 = 6`: Curly `Z` and `z` with a horizontal cross bar for better dsitinction with `2`. - - Styles for `ß`: - + `eszet = 'traditional'`, `cv34 = 1`: Traditional, Fraktur-like Eszet. - + `eszet = 'sulzbacher'`, `cv34 = 2`: A more modern, beta-like Eszet (default). - + `eszet = 'longs-s-lig'`, `cv34 = 3`: An Eszet shown as a ligature of long-S (`ſ`) and `s`. - - Styles for `λ`: - + `lambda = 'straight'`, `cv35 = 1`: More-straight letter `λ` (default). - + `lambda = 'curly'`, `cv35 = 2`: More curly letter `λ`, like Iosevka 2.x. + - Styles for `ß` (Eszet): + + `eszet = 'traditional'`, `cv34 = 1`: Traditional, Fraktur-like Eszet (`ß`). + + `eszet = 'sulzbacher'`, `cv34 = 2`: More modern, beta-like Eszet (`ß`) (default). + + `eszet = 'longs-s-lig'`, `cv34 = 3`: Eszet (`ß`) shown as a ligature of long-S (`ſ`) and `s`. + - Styles for `λ` (Greek small Lambda): + + `lambda = 'straight'`, `cv35 = 1`: More-straight Greek small Lambda (`λ`) (default). + + `lambda = 'curly'`, `cv35 = 2`: More curly Greek small Lambda (`λ`), like Iosevka 2.x. + - Styles for `У` (Cyrillic Capital U): + + `cyrl-capital-u = 'straight'`, `cv60 = 1`: Cyrillic capital U (`У`) that is fully straight (default). + + `cyrl-capital-u = 'straight-turn'`, `cv60 = 2`: Cyrillic capital U (`У`) with straight upper and a tail turns leftward. + + `cyrl-capital-u = 'curly'`, `cv60 = 3`: More curly cyrillic capital U (`У`), like Iosevka 2.x. + + `cyrl-capital-u = 'cursive'`, `cv60 = 4`: Cursive-like Cyrillic capital U (`У`). + + `cyrl-capital-u = 'cursive-flat-hook'`, `cv60 = 5`: Cursive-like Cyrillic capital U (`У`) with flat terminal hook. - Styles for `0`: + `zero = 'slashed'`, `cv36 = 1`: Slashed Zero `0` (default). + `zero = 'dotted'`, `cv36 = 2`: Dotted Zero `0`. diff --git a/changes/4.1.0.md b/changes/4.1.0.md index a2df90b60..5de074a6c 100644 --- a/changes/4.1.0.md +++ b/changes/4.1.0.md @@ -1,2 +1,3 @@ * Add rounded variant of `e` (#771). - * Add flat-hook single-storey variants for `g` and `y` (#772). \ No newline at end of file + * Add flat-hook single-storey variants for `g` and `y` (#772). + * Create separate variant selector for Cyrillic capital U (#773). \ No newline at end of file diff --git a/font-src/glyphs/letter/latin.ptl b/font-src/glyphs/letter/latin.ptl index f9ced3575..172d37172 100644 --- a/font-src/glyphs/letter/latin.ptl +++ b/font-src/glyphs/letter/latin.ptl @@ -2022,45 +2022,45 @@ glyph-block Letter-Latin-Lower-Y : begin include : [GenSmallYShape false SLAB].SmallYShape XH Descender set-base-anchor 'overlay' Middle (XH / 2) - define [SmallYCursiveArc] : new-glyph : glyph-proc + define [SmallYCursiveArc top bottom] : new-glyph : glyph-proc include : nShoulder + top -- top + bottom -- bottom left -- (SB + Stroke * HVContrast) right -- RightSB fine -- ShoulderFine - include : FlipAround Middle (XH / 2) + include : FlipAround Middle [mix bottom top 0.5] - define [SmallYCusriveHook y0] : dispiro + define [SmallYCusriveHook y0 bottom] : dispiro widths.rhs flat RightSB y0 [heading Downward] - curl RightSB (Descender + SmallSmoothA) - hookend (Descender + O) - g4 SB (Descender + SHook) + curl RightSB (bottom + SmallSmoothA) + hookend (bottom + O) + g4 SB (bottom + SHook) - define [SmallYFlatHookCusriveHook y0] : begin + define [SmallYFlatHookCusriveHook y0 bottom] : begin local hd : FlatHookDepth [DivFrame 1] (9 / 8) local xTerminal : Math.min (RightSB - hd.x - 0.1) : mix SB RightSB (1 / 5) return : dispiro widths.rhs flat RightSB y0 [heading Downward] - curl RightSB (Descender + hd.y) + curl RightSB (bottom + hd.y) arcvh - flat (RightSB - hd.x) Descender - curl xTerminal Descender [heading Leftward] + flat (RightSB - hd.x) bottom + curl xTerminal bottom [heading Leftward] create-glyph 'y.cursive' : glyph-proc include : MarkSet.p - include : SmallYCursiveArc - include : SmallYCusriveHook XH - if SLAB : begin - include : LeftwardTopSerif SB XH SideJut + include : SmallYCursiveArc XH 0 + include : SmallYCusriveHook XH Descender + if SLAB : include : LeftwardTopSerif SB XH SideJut set-base-anchor 'overlay' Middle (XH / 2) create-glyph 'y.cursiveFlatHook' : glyph-proc include : MarkSet.p - include : SmallYCursiveArc - include : SmallYFlatHookCusriveHook XH - if SLAB : begin - include : LeftwardTopSerif SB XH SideJut + include : SmallYCursiveArc XH 0 + include : SmallYFlatHookCusriveHook XH Descender + if SLAB : include : LeftwardTopSerif SB XH SideJut set-base-anchor 'overlay' Middle (XH / 2) select-variant 'y' 'y' @@ -2081,33 +2081,39 @@ glyph-block Letter-Latin-Lower-Y : begin create-glyph 'yhooktop.cursive' : glyph-proc include : MarkSet.p - include : SmallYCursiveArc - include : SmallYCusriveHook (XH - Hook - HalfStroke) + include : SmallYCursiveArc XH 0 + include : SmallYCusriveHook (XH - Hook - HalfStroke) Descender include : VerticalHook (RightSB - HalfStroke * HVContrast) (XH - Hook - HalfStroke) HookX (-Hook) - if SLAB : begin - include : LeftwardTopSerif SB XH SideJut + if SLAB : include : LeftwardTopSerif SB XH SideJut set-base-anchor 'overlay' Middle (XH / 2) create-glyph 'yhooktop.cursiveFlatHook' : glyph-proc include : MarkSet.p - include : SmallYCursiveArc - include : SmallYFlatHookCusriveHook (XH - Hook - HalfStroke) + include : SmallYCursiveArc XH 0 + include : SmallYFlatHookCusriveHook (XH - Hook - HalfStroke) Descender include : VerticalHook (RightSB - HalfStroke * HVContrast) (XH - Hook - HalfStroke) HookX (-Hook) - if SLAB : begin - include : LeftwardTopSerif SB XH SideJut + if SLAB : include : LeftwardTopSerif SB XH SideJut set-base-anchor 'overlay' Middle (XH / 2) create-glyph : glyph-proc include : MarkSet.capital + set-base-anchor 'overlay' Middle (XH / 2 - Descender) create-derived 'cyrl/U.straight' : glyph-proc include : [GenSmallYShape true false].SmallYShape CAP 0 - set-base-anchor 'overlay' Middle (XH / 2 - Descender) create-derived 'cyrl/U.straightTurn' : glyph-proc include : [GenSmallYShape true true].SmallYShape CAP 0 - set-base-anchor 'overlay' Middle (XH / 2 - Descender) create-derived 'cyrl/U.curly' : glyph-proc include : [GenSmallYShape false SLAB].SmallYShape CAP 0 - set-base-anchor 'overlay' Middle (XH / 2 - Descender) + create-derived 'cyrl/U.cursive' : glyph-proc + include : SmallYCursiveArc CAP (CAP - XH) + include : SmallYCusriveHook CAP 0 + if SLAB : include : CenterTopSerif (SB + HalfStroke * HVContrast) CAP Jut + if SLAB : include : CenterTopSerif (RightSB - HalfStroke * HVContrast) CAP Jut + create-derived 'cyrl/U.cursiveFlatHook' : glyph-proc + include : SmallYCursiveArc CAP (CAP - XH) + include : SmallYFlatHookCusriveHook CAP 0 + if SLAB : include : CenterTopSerif (SB + HalfStroke * HVContrast) CAP Jut + if SLAB : include : CenterTopSerif (RightSB - HalfStroke * HVContrast) CAP Jut select-variant 'yhooktop' 0x1B4 (follow -- 'y') select-variant 'cyrl/U' 0x423 @@ -6278,17 +6284,21 @@ glyph-block Letter-Latin-Lower-E : begin include : MarkSet.e include : SmallEShape XH [AdviceStroke2 2 3 XH] - define [SmallERoundedShape] : params [top stroke barpos curly [bbd 0]] : glyph-proc - local barbottom : top * [fallback barpos DesignParameters.eBarPos] - (stroke / 2) + define [SmallERoundedShape] : params [top stroke barpos] : glyph-proc + local barbottom : top * [fallback barpos : if para.isItalic 0.500 0.475] - (stroke / 2) local hook : Math.min AHook : if para.isItalic top (stroke / 2 + (top - stroke * 3) / 4) - local pBarRight : 0.5 - TanSlope * 0.5 + local pBarRight : 0.475 - TanSlope * 0.5 local pArcRight : 0.425 - TanSlope * 0.25 + local xStart : SB + (0.5 * stroke * HVContrast) + local pfIt : if para.isItalic 1 0 include : dispiro widths.lhs stroke - flat (SB + (stroke / 2) + OX + bbd) barbottom [heading Rightward] - curl [mix SB RightSB pBarRight] barbottom [heading Rightward] - g4 (RightSB - OX) [mix barbottom top pArcRight] + [if para.isItalic g4 flat] xStart (barbottom - pfIt * [StrokeWidthBlend 2 3] * O) + if para.isItalic [alsoThru.g2 0.5 0.8] [list] + [if para.isItalic g4 curl] [mix xStart RightSB pBarRight] (barbottom + pfIt * [StrokeWidthBlend 0.25 1] * O) + g4 (RightSB - OX) [mix barbottom top pArcRight] + arcvh g4 (Middle - CorrectionOMidS) (top - O) archv flat (SB + OX) (top - SmallSmoothA) diff --git a/font-src/support/variant-data.js b/font-src/support/variant-data.js index e1e837b25..da2391366 100644 --- a/font-src/support/variant-data.js +++ b/font-src/support/variant-data.js @@ -75,6 +75,7 @@ class Prime { this.descSampleText = this.ligatureSampler ? cfg.sampler.split(" ") : [...(cfg.sampler || "")]; + this.samplerExplain = cfg.samplerExplain; this.tag = cfg.tag; this.slopeDependent = !!cfg.slopeDependent; this.variants = new Map(); @@ -94,6 +95,7 @@ class Prime { const gr = { key: this.key, sampler: this.sampler, + samplerExplain: this.samplerExplain, tag: this.tag, slopeDependent: this.slopeDependent, ligatureSampler: this.ligatureSampler, diff --git a/params/variants.toml b/params/variants.toml index f62592788..ddfbd023a 100644 --- a/params/variants.toml +++ b/params/variants.toml @@ -1131,31 +1131,26 @@ tag = 'cv32' rank = 1 description = 'Letter `y` that is fully straight' selector.y = "straight" -selector."cyrl/U" = "straight" [prime.y.variants.straight-turn] rank = 2 description = 'Letter `y` with straight upper and a tail turns leftward' selector.y = "straightTurn" -selector."cyrl/U" = "straightTurn" [prime.y.variants.curly] rank = 3 description = 'More curly letter `y`, like Iosevka 2.x' selector.y = "curly" -selector."cyrl/U" = "curly" [prime.y.variants.cursive] rank = 4 description = 'Cursive-like `y`' selector.y = "cursive" -selector."cyrl/U" = "straight" [prime.y.variants.cursive-flat-hook] rank = 5 description = 'Cursive-like `y` with flat terminal hook' selector.y = "cursiveFlatHook" -selector."cyrl/U" = "straight" @@ -1203,41 +1198,75 @@ selector.Z = 'curlyWithHorizontalCrossBar' [prime.eszet] sampler = 'ß' +samplerExplain = 'Eszet' tag = 'cv34' [prime.eszet.variants.traditional] rank = 1 -description = 'Traditional, Fraktur-like Eszet' +description = 'Traditional, Fraktur-like Eszet (`ß`)' selector.eszet = 'traditional' [prime.eszet.variants.sulzbacher] rank = 2 -description = 'A more modern, beta-like Eszet' +description = 'More modern, beta-like Eszet (`ß`)' selector.eszet = 'sulzbacher' [prime.eszet.variants.longs-s-lig] rank = 3 -description = 'An Eszet shown as a ligature of long-S (`ſ`) and `s`' +description = 'Eszet (`ß`) shown as a ligature of long-S (`ſ`) and `s`' selector.eszet = 'longsslig' [prime.lambda] sampler = 'λ' +samplerExplain = 'Greek small Lambda' tag = 'cv35' [prime.lambda.variants.straight] rank = 1 -description = 'More-straight letter `λ`' +description = 'More-straight Greek small Lambda (`λ`)' selector."grek/lambda" = "straight" [prime.lambda.variants.curly] rank = 2 -description = 'More curly letter `λ`, like Iosevka 2.x' +description = 'More curly Greek small Lambda (`λ`), like Iosevka 2.x' selector."grek/lambda" = "curly" +[prime.cyrl-capital-u] +sampler = 'У' +samplerExplain = 'Cyrillic Capital U' +tag = 'cv60' + +[prime.cyrl-capital-u.variants.straight] +rank = 1 +description = 'Cyrillic capital U (`У`) that is fully straight' +selector."cyrl/U" = "straight" + +[prime.cyrl-capital-u.variants.straight-turn] +rank = 2 +description = 'Cyrillic capital U (`У`) with straight upper and a tail turns leftward' +selector."cyrl/U" = "straightTurn" + +[prime.cyrl-capital-u.variants.curly] +rank = 3 +description = 'More curly cyrillic capital U (`У`), like Iosevka 2.x' +selector."cyrl/U" = "curly" + +[prime.cyrl-capital-u.variants.cursive] +rank = 4 +description = 'Cursive-like Cyrillic capital U (`У`)' +selector."cyrl/U" = "cursive" + +[prime.cyrl-capital-u.variants.cursive-flat-hook] +rank = 5 +description = 'Cursive-like Cyrillic capital U (`У`) with flat terminal hook' +selector."cyrl/U" = "cursiveFlatHook" + + + [prime.zero] sampler = '0' tag = 'cv36' @@ -1796,7 +1825,6 @@ capital-r = 'straight' capital-y = 'straight' # Lowers b = 'toothed' -e = 'flat-crossbar' g = 'singlestorey' p = 'eared' q = 'straight' @@ -1810,6 +1838,7 @@ z = 'standard' turn-v = 'straight' eszet = 'sulzbacher' lambda = 'straight' +cyrl-capital-u = 'straight' # Digits zero = 'slashed' one = 'nobase' @@ -1846,6 +1875,7 @@ digit-form = 'lining' [default.upright-oblique] a = 'doublestorey' d = 'toothed' +e = 'flat-crossbar' f = 'serifless' i = 'serifed' j = 'serifed' @@ -1857,6 +1887,7 @@ y = 'straight' [default.italic] a = 'singlestorey-tailed' d = 'tailed' +e = 'rounded' f = 'flat-hook-tailed' i = 'serifed-tailed' j = 'serifed' @@ -1871,6 +1902,9 @@ y = 'cursive' one = 'base' seven = 'serifed' +[composite.slab.design] +cyrl-capital-u = 'straight-turn' + [composite.slab.upright-oblique] f = 'serifed' r = 'serifed' @@ -1888,12 +1922,14 @@ tag = 'ss01' description = "Andale Mono Style" [composite.ss01.design] -i = 'hooky' a = 'doublestorey' +e = 'flat-crossbar' g = 'doublestorey' +i = 'hooky' k = 'straight' l = 'zshaped' y = 'straight-turn' +cyrl-capital-u = 'straight-turn' at = 'fourfold' zero = 'dotted' brace = 'straight' @@ -1915,12 +1951,14 @@ description = "Anonymous Pro Style" capital-g = "toothless-rounded" capital-j = "serifless" a = "doublestorey" +e = 'flat-crossbar' d = "toothed" i = "serifed" k = "straight" l = "serifed" y = "straight-turn" eszet = "longs-s-lig" +cyrl-capital-u = 'straight-turn' one = "base" six = "closed-contour" nine = "closed-contour" @@ -1934,6 +1972,7 @@ tag = 'ss03' description = 'Consolas Style' [composite.ss03.design] +cyrl-capital-u = 'straight-turn' at = 'fourfold' underscore = 'low' brace = 'straight' @@ -1961,11 +2000,12 @@ description = 'Menlo Style' [composite.ss04.design] at = 'threefold' a = 'doublestorey' -underscore = 'low' +e = 'flat-crossbar' i = 'serifed' k = 'straight' l = 'serifed-flat-tailed' y = 'straight-turn' +cyrl-capital-u = 'straight-turn' brace = 'straight' number-sign = 'slanted' asterisk = 'hexlow' @@ -1974,6 +2014,7 @@ ampersand = 'upper-open' six = 'closed-contour' nine = 'closed-contour' percent = "rings-connected" +underscore = 'low' @@ -1984,11 +2025,13 @@ description = 'Fira Mono Style' [composite.ss05.design] capital-g = "toothless-corner" a = "doublestorey-tailed" +e = 'flat-crossbar' g = "opendoublestorey" i = "serifed" l = "serifed-tailed" r = "serifed" y = "straight-turn" +cyrl-capital-u = 'straight-turn' one = "base" six = "closed-contour" nine = "open-contour" @@ -2010,10 +2053,12 @@ description = 'Liberation Mono Style' [composite.ss06.design] at = 'fourfold' a = 'doublestorey' +e = 'flat-crossbar' i = 'serifed' k = 'straight' l = 'serifed' y = 'straight-turn' +cyrl-capital-u = 'straight-turn' brace = 'straight' zero = 'dotted' number-sign = 'slanted' @@ -2031,10 +2076,12 @@ description = 'Monaco Style' [composite.ss07.design] at = 'fourfold' a = 'singlestorey' +e = 'flat-crossbar' i = 'zshaped' k = 'straight' l = 'zshaped' y = 'straight-turn' +cyrl-capital-u = 'straight-turn' brace = 'straight' number-sign = 'slanted' asterisk = 'hexhigh' @@ -2053,6 +2100,7 @@ description = 'Pragmata Pro Style' [composite.ss08.design] at = 'threefold' a = 'doublestorey' +e = 'flat-crossbar' l = 'serifed' i = 'serifed' asterisk = 'low' @@ -2072,6 +2120,7 @@ capital-k = 'curly' k = 'curly' y = 'curly' lambda = 'curly' +cyrl-capital-u = 'curly' ampersand = 'upper-open' six = 'closed-contour' nine = 'closed-contour' @@ -2090,9 +2139,11 @@ description = 'Source Code Pro Style' [composite.ss09.design] capital-g = "toothless-corner" +e = 'flat-crossbar' k = "straight" l = "serifed-tailed" y = "straight-turn" +cyrl-capital-u = 'straight-turn' zero = "dotted" one = "base" six = "closed-contour" @@ -2122,19 +2173,25 @@ tag = 'ss10' description = 'Envy Code R Style' [composite.ss10.design] -at = 'threefold' -a = 'doublestorey' -underscore = 'low' -i = 'hooky' -k = 'straight' -l = 'hooky' -y = 'cursive' -asterisk = 'low' -one = 'base' -nine = 'straight-bar' -six = 'straight-bar' +capital-j = "serifless" +capital-q = "crossing" +f = "flat-hook" +g = "singlestorey-flat-hook" +i = "hooky" +j = "flat-hook-serifed" +k = "straight" +l = "hooky" +t = "flat-hook" +y = "cursive-flat-hook" +one = "base" +underscore = "low" percent = "rings-connected" +[composite.ss10.italic] +i = "serifed-flat-tailed" +j = "serifed" +l = "serifed-flat-tailed" + [composite.ss11] @@ -2162,6 +2219,7 @@ description = 'Ubuntu Mono Style' capital-g = "toothless-corner" a = "doublestorey-toothless-corner" b = "toothless-corner" +e = 'flat-crossbar' g = "earless-corner" i = "serifed-tailed" k = "straight" @@ -2173,6 +2231,7 @@ q = "earless-corner" r = "earless-corner" y = "straight-turn" eszet = "longs-s-lig" +cyrl-capital-u = 'straight-turn' zero = "dotted" one = "base" six = "open-contour" @@ -2198,10 +2257,12 @@ tag = 'ss13' description = 'Lucida Style' [composite.ss13.design] +e = 'flat-crossbar' i = 'hooky' k = 'straight' l = 'hooky' y = 'straight-turn' +cyrl-capital-u = 'straight-turn' zero = 'dotted' underscore = 'low' caret = 'low' @@ -2220,7 +2281,9 @@ description = 'JetBrains Mono Style' [composite.ss14.design] capital-q = "straight" capital-g = "toothless-rounded" +e = 'flat-crossbar' f = "flat-hook-crossbar-at-x-height" +g = "singlestorey-flat-hook" i = "serifed" l = "serifed-flat-tailed" u = "toothless-rounded" @@ -2238,6 +2301,7 @@ number-sign = "slanted" [composite.ss14.italic] f = "flat-hook-tailed-crossbar-at-x-height" +y = "cursive-flat-hook" @@ -2255,6 +2319,7 @@ capital-y = 'curly' capital-r = 'curly' capital-k = 'curly' lambda = 'curly' +cyrl-capital-u = 'curly' six = 'open-contour' nine = 'open-contour' diff --git a/utility/amend-readme/index.js b/utility/amend-readme/index.js index df925d887..18ca2b49e 100644 --- a/utility/amend-readme/index.js +++ b/utility/amend-readme/index.js @@ -78,7 +78,8 @@ async function processCv() { const sampleText = gr.descSampleText .map(c => (c === "`" ? "`` ` ``" : `\`${c}\``)) .join(", "); - md.log(` - Styles for ${sampleText}:`); + const explainText = gr.samplerExplain ? ` (${gr.samplerExplain})` : ``; + md.log(` - Styles for ${sampleText}${explainText}:`); const defaults = figureOutDefaults(variantsData, gr); for (const config of gr.variants) { if (!config.rank) continue;