Cleanup of #2710 .

This commit is contained in:
John McWilliams 2025-03-18 08:09:56 -04:00
parent 87849ca75e
commit 2f36e60b0d
4 changed files with 37 additions and 17 deletions

View file

@ -773,13 +773,13 @@ exportGlyphNames = true
[buildPlans.IosevkaEtoile.variants.design]
capital-m = "flat-bottom-serifed"
capital-w = "straight-flat-top-serifed"
capital-w = "straight-almost-flat-top-serifed"
f = "flat-hook-serifed"
i = "serifed"
j = "flat-hook-serifed"
l = "serifed"
t = "flat-hook"
w = "straight-flat-top-serifed"
w = "straight-almost-flat-top-serifed"
long-s = "flat-hook-bottom-serifed"
eszet = "longs-s-lig-bottom-serifed"
lower-iota = "serifed-flat-tailed"
@ -797,7 +797,7 @@ percent = "rings-continuous-slash"
f = "flat-hook-tailed"
i = "serifed-flat-tailed"
l = "serifed-flat-tailed"
w = "straight-flat-top-motion-serifed"
w = "straight-almost-flat-top-motion-serifed"
long-s = "flat-hook-tailed"
eszet = "longs-s-lig-tailed-serifless"
cyrl-ef = "split-cursive"

View file

@ -1,4 +1,5 @@
* Add `flat-top` variants for `curly`, `straight-vertical-sides` and `rounded-vertical-sides` forms of `W` and `w` (#2146).
* Add `flat-top` variants for `curly`, `straight-vertical-sides`, and `rounded-vertical-sides` forms of `W` and `w` (#2146).
* Add `almost-flat-top` variants for `curly` forms of `W` and `w`.
* Refine shape of the following characters:
- ARMENIAN SMALL LIGATURE ECH YIWN (`U+0587`).
- LATIN CAPITAL LETTER AU (`U+A736`).

View file

@ -139,10 +139,10 @@ glyph-block Letter-Latin-W : begin
define [WSerifs df top bodyType slabType dim] : glyph-proc
local oSlabPos : match bodyType
[Just FORM-CURLY] : O * 2
[Just FORM-VERTICAL] : O * 2
[Just FORM-CYRL-OMEGA] : O * 2
__ 0
[Just FORM-CURLY] 0
[Just FORM-VERTICAL] 0
[Just FORM-CYRL-OMEGA] 0
__ : O * 2
local sf : SerifFrame top 0 df.leftSB df.rightSB (hSplit -- 3)
local sfm : SerifFrame top 0 (df.leftSB + oSlabPos) (df.rightSB - oSlabPos) (hSplit -- 3)
@ -204,7 +204,7 @@ glyph-block Letter-Latin-W : begin
include : tagged 'strokeUp1' : difference
dispiro
flat (dim.xRight1 - shiftT) dim.wMidHeight [widths.center.heading dim.fineInnerCrTop Downward]
curl (dim.xBot1 + shiftB) 0 [widths.center.heading dim.fineOuterCr Downward]
curl (dim.xBot1 + shiftB) 0 [widths.center.heading dim.fineOuterCr Downward]
match bodyType
[Just FORM-CYRL-OMEGA] : spiro-outline
corner df.width (dim.wMidHeight + 1)
@ -226,10 +226,10 @@ glyph-block Letter-Latin-W : begin
flat (dim.xLeft2 - [HSwToV : 0.5 * dim.strokeOuter]) dim.wMidHeight [widths.lhs.heading dim.strokeOuter Downward]
curl (dim.xLeft2 - [HSwToV : 0.5 * dim.strokeOuter]) (dim.wMidHeight * (1 - dim.curlyStraightSegLength)) [heading Downward]
quadControls 0 0.3 6 unimportant
g4 (dim.xBot2 - shiftB) 0 [widths.center.heading dim.fineOuterCr Downward]
g4 (dim.xBot2 - shiftB) 0 [widths.center.heading dim.fineOuterCr Downward]
_ : dispiro
flat (dim.xLeft2 + shiftT) dim.wMidHeight [widths.center.heading dim.fineInnerCrTop Downward]
curl (dim.xBot2 - shiftB) 0 [widths.center.heading dim.fineOuterCr Downward]
curl (dim.xBot2 - shiftB) 0 [widths.center.heading dim.fineOuterCr Downward]
if (dim.wMidHeightExt > dim.wMidHeight) : include : tagged 'strokeExtension' : VBar.m df.middle dim.wMidHeight dim.wMidHeightExt (dim.fineInnerCrTop + [VSwToH : shiftT * 2])
@ -333,7 +333,7 @@ glyph-block Letter-Latin-W : begin
include : dispiro
widths.rhs fine
flat (df.width - x1) (top - TailY - 0.5 * fine - O) [heading Downward]
curl (df.width - x1) y3 [heading Downward]
curl (df.width - x1) y3 [heading Downward]
arch.rhs 0 (sw -- fine) (swAfter -- mfine)
flat (df.middle - [HSwToV : mfine - fine / 2]) y3 [widths.heading 0 mfine Upward]
curl (df.middle - [HSwToV : mfine - fine / 2]) y4 [heading Upward]
@ -368,7 +368,8 @@ glyph-block Letter-Latin-W : begin
roundedVerticalSides { WRounded WHookTopRounded FORM-CURLY MIDH-OTHER para.advanceScaleMM para.advanceScaleM }
roundedVerticalSidesFlatTop { WRounded WHookTopRounded FORM-CURLY MIDH-TOP para.advanceScaleMM para.advanceScaleM }
curly { WShapeImpl WHooktopShape FORM-CURLY MIDH-OTHER para.advanceScaleM para.advanceScaleM }
curlyFlatTop { WShapeImpl WHooktopShape FORM-CURLY MIDH-TOP para.advanceScaleM para.advanceScaleM }
curlyAlmostFlatTop { WShapeImpl WHooktopShape FORM-CURLY MIDH-ALMOST-TOP para.advanceScaleMM para.advanceScaleM }
curlyFlatTop { WShapeImpl WHooktopShape FORM-CURLY MIDH-TOP para.advanceScaleMM para.advanceScaleM }
cursive { WCursiveImpl WHookTopCursive FORM-CURSIVE MIDH-OTHER para.advanceScaleM para.advanceScaleM }
cyrlOmega { WShapeImpl WHooktopShape FORM-CYRL-OMEGA MIDH-OTHER para.advanceScaleMM para.advanceScaleM }

View file

@ -1916,10 +1916,19 @@ selectorAffix.W = "curly"
selectorAffix."W/sansSerif" = "curly"
selectorAffix.WHookTop = "curly"
[prime.capital-w.variants-buildup.stages.body.curly-flat-top]
[prime.capital-w.variants-buildup.stages.body.curly-almost-flat-top]
rank = 11
groupRank = 3
nonBreakingVariantAdditionPriority = 100
descriptionAffix = "curly body shape that the middle is almost aligned the top"
selectorAffix.W = "curlyAlmostFlatTop"
selectorAffix."W/sansSerif" = "curlyAlmostFlatTop"
selectorAffix.WHookTop = "curlyAlmostFlatTop"
[prime.capital-w.variants-buildup.stages.body.curly-flat-top]
rank = 12
groupRank = 3
nonBreakingVariantAdditionPriority = 100
descriptionAffix = "curly body with a middle stem aligned to the top"
selectorAffix.W = "curlyFlatTop"
selectorAffix."W/sansSerif" = "curlyFlatTop"
@ -4845,7 +4854,7 @@ selectorAffix.wHookTop = "straight"
[prime.w.variants-buildup.stages.body.straight-almost-flat-top]
rank = 2
groupRank = 1
descriptionAffix = "straight body shape that the middle is forced to be aligned the top"
descriptionAffix = "straight body shape that the middle is almost aligned the top"
selectorAffix.w = "straightAlmostFlatTop"
selectorAffix."w/sansSerif" = "straightAlmostFlatTop"
selectorAffix.wHookTop = "straightAlmostFlatTop"
@ -4916,17 +4925,26 @@ selectorAffix.w = "curly"
selectorAffix."w/sansSerif" = "curly"
selectorAffix.wHookTop = "curly"
[prime.w.variants-buildup.stages.body.curly-flat-top]
[prime.w.variants-buildup.stages.body.curly-almost-flat-top]
rank = 11
groupRank = 3
nonBreakingVariantAdditionPriority = 100
descriptionAffix = "curly body shape that the middle is almost aligned the top"
selectorAffix.w = "curlyAlmostFlatTop"
selectorAffix."w/sansSerif" = "curlyAlmostFlatTop"
selectorAffix.wHookTop = "curlyAlmostFlatTop"
[prime.w.variants-buildup.stages.body.curly-flat-top]
rank = 12
groupRank = 3
nonBreakingVariantAdditionPriority = 100
descriptionAffix = "curly body with a middle stem aligned to the top"
selectorAffix.w = "curlyFlatTop"
selectorAffix."w/sansSerif" = "curlyFlatTop"
selectorAffix.wHookTop = "curlyFlatTop"
[prime.w.variants-buildup.stages.body.cursive]
rank = 12
rank = 13
groupRank = 4
descriptionAffix = "cursive shape"
selectorAffix.w = "cursive"