From 4733bbbab0a8c2158d411ed5078f7f6a3186271e Mon Sep 17 00:00:00 2001 From: John McWilliams <37010132+jmcwilliams403@users.noreply.github.com> Date: Fri, 22 Mar 2024 18:27:44 -0400 Subject: [PATCH] Miscellanious last-minute fixes and optimizations. (#2253) * Cleanup #2242 . * Cleanup #2252 . * fix `7` for `ss08` under slab. * c-like hyphen chain optimization. --- changes/29.0.3.md | 2 ++ .../font-glyphs/src/letter/latin-ext/gha.ptl | 4 ++-- packages/font-glyphs/src/marks/tie.ptl | 8 ++------ params/ligation-set.toml | 18 +++++++++--------- params/variants.toml | 2 +- 5 files changed, 16 insertions(+), 18 deletions(-) diff --git a/changes/29.0.3.md b/changes/29.0.3.md index 11cc4d36c5..afca614660 100644 --- a/changes/29.0.3.md +++ b/changes/29.0.3.md @@ -9,3 +9,5 @@ * Fix `percent`=`dots` glyphs for PER {MILLE|TEN THOUSAND} SIGN (`U+2030`..`U+2031`) under Quasi-Proportional when `NWID` is enabled. * Remove untagged variant selector for Cyrillic Capital Ef (`ะค`). * Fix glyph visual for COMBINING DOUBLE CIRCUMFLEX ABOVE (`U+1DCD`). +* Fix variant assignment of `cv92` for `ss08` under slab. +* Make `--c-like-chaining--` ligation group require at least three hyphen-minuses for hyphen chain. diff --git a/packages/font-glyphs/src/letter/latin-ext/gha.ptl b/packages/font-glyphs/src/letter/latin-ext/gha.ptl index 893b64009d..a5f8c26261 100644 --- a/packages/font-glyphs/src/letter/latin-ext/gha.ptl +++ b/packages/font-glyphs/src/letter/latin-ext/gha.ptl @@ -47,13 +47,13 @@ glyph-block Letter-Latin-Gha : begin local df : include : DivFrame para.diversityM 3 include : df.markSet.capDesc include : GhaShape df terminal CAP Descender doSerif - include : LeaningAnchor.Below.VBar.r df.rightSB + include : LeaningAnchor.Below.VBar.r (df.rightSB - O) create-glyph "gha.\(suffix)" : glyph-proc local df : include : DivFrame para.diversityM 3 include : df.markSet.p include : GhaShape df terminal XH Descender doSerif - include : LeaningAnchor.Below.VBar.r df.rightSB + include : LeaningAnchor.Below.VBar.r (df.rightSB - O) select-variant 'Gha' 0x1A2 (follow -- 'gha') select-variant 'gha' 0x1A3 diff --git a/packages/font-glyphs/src/marks/tie.ptl b/packages/font-glyphs/src/marks/tie.ptl index 1e316d2deb..2b214a11a6 100644 --- a/packages/font-glyphs/src/marks/tie.ptl +++ b/packages/font-glyphs/src/marks/tie.ptl @@ -12,8 +12,7 @@ glyph-block Mark-Tie : begin glyph-block-import Mark-Shared-Metrics : markExtend markHalfStroke markStress markFine glyph-block-import Mark-Shared-Metrics : markMiddle markDotsRadius glyph-block-import Mark-Above : aboveMarkTop aboveMarkBot aboveMarkMid aboveMarkStack - glyph-block-import Mark-Above : TildeShape CaretShape CaretCaronWidth - glyph-block-import Mark-Above : CaretCaronMidSw CaretCaronTerminalSw + glyph-block-import Mark-Above : TildeShape CaretCaronMidSw CaretCaronTerminalSw glyph-block-import Mark-Below : belowMarkBot belowMarkTop belowMarkMid define aboveTieBase : aboveMarkStack - AccentClearance @@ -130,12 +129,9 @@ glyph-block Mark-Tie : begin create-glyph 'circumflexTieAbove' 0x1DCD : glyph-proc set-width 0 - set-mark-anchor 'tieAbove' 0 aboveTieBase 0 aboveTieTop - set-base-anchor 'aboveBraceL' (0 - 0.5 * markExtend) aboveTieMid - set-base-anchor 'aboveBraceR' (0 + 0.5 * markExtend) aboveTieMid + include : TieAboveAnchors TieGlyph.set currentGlyph - local leftHalf : include : dispiro flat tieLeft aboveTieBottom [widths.center CaretCaronTerminalSw] curl 0 aboveTieTop [widths.center CaretCaronMidSw] diff --git a/params/ligation-set.toml b/params/ligation-set.toml index 125ef7f22f..77834a1d9c 100644 --- a/params/ligation-set.toml +++ b/params/ligation-set.toml @@ -278,28 +278,28 @@ buildup = [ buildup = [ 'eqeq', 'exeq', 'lteq', 'gteq' ] [composite.--c-equality-inequality--] -buildup = [ 'eqeqeq', 'eqeq', 'exeqeq', 'exeq', 'lteq', 'gteq' ] +buildup = [ 'eqeqeq', 'eqeq', 'exeqeq', 'exeq', 'lteq', 'gteq' ] [composite.--raku-equality-inequality--] -buildup = [ 'eqeqeq', 'eqeq', 'exeqeqeq', 'exeq', 'lteq', 'gteq' ] +buildup = [ 'eqeqeq', 'eqeq', 'exeqeqeq', 'exeq', 'lteq', 'gteq' ] [composite.--ml-equality-inequality--] -buildup = [ 'eqeq', 'ltgt-ne', 'lteq', 'gteq' ] +buildup = [ 'eqeq', 'ltgt-ne', 'lteq', 'gteq' ] [composite.--fstar-equality-inequality--] -buildup = [ 'eqeq', 'ltgt-ne', 'eqeqeq', 'eqexeq', 'lteq', 'gteq' ] +buildup = [ 'eqeq', 'ltgt-ne', 'eqeqeq', 'eqexeq', 'lteq', 'gteq' ] [composite.--haskell-equality-inequality--] -buildup = [ 'eqeq', 'slasheq', 'lteq', 'gteq' ] +buildup = [ 'eqeq', 'slasheq', 'lteq', 'gteq' ] [composite.--matlab-equality-inequality--] -buildup = [ 'eqeq', 'tildeeq', 'lteq', 'gteq' ] +buildup = [ 'eqeq', 'tildeeq', 'lteq', 'gteq' ] [composite.--verilog-equality-inequality--] -buildup = [ 'eqeqeq', 'eqeq', 'exeqeq', 'exeq', 'lteq-separate', 'gteq-separate' ] +buildup = [ 'eqeqeq', 'eqeq', 'exeqeq', 'exeq', 'lteq-separate', 'gteq-separate' ] [composite.--wolfram-equality-inequality--] -buildup = [ 'eqeq', 'exeq', 'eqexeq-dl', 'lteq', 'gteq' ] +buildup = [ 'eqeq', 'exeq', 'eqexeq-dl', 'lteq', 'gteq' ] [composite.--erlang-equality-inequality--] buildup = [ 'eqeq', 'exeq', 'eqlt', 'gteq' ] @@ -314,7 +314,7 @@ buildup = [ 'plus-plus-plus', 'minus-minus-minus', 'underscore-underscore-unders buildup = [ 'plus-plus', 'minus-minus', 'underscore-underscore', 'hash-hash', 'tilde-tilde' ] [composite.--c-like-chaining--] -buildup = [ 'plus-plus', 'minus-minus', 'underscore-underscore', 'hash-hash-hash', 'tilde-tilde-tilde' ] +buildup = [ 'plus-plus', 'minus-minus-minus', 'underscore-underscore', 'hash-hash-hash', 'tilde-tilde-tilde' ] # This feature is on by default by many software [composite.default-calt] diff --git a/params/variants.toml b/params/variants.toml index 3da22a107e..0f4f75b4a5 100644 --- a/params/variants.toml +++ b/params/variants.toml @@ -8607,7 +8607,7 @@ cyrl-capital-ya = "curly-serifed" cyrl-ya = "curly-serifed" four = "closed-serifed" five = "upright-flat-serifed" -seven = "bend-serifed" +seven = "curly-serifed" micro-sign = "toothed-serifed" [composite.ss08.slab-override.italic]