Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add rounded-vertical-sides variants for Capital/Lower W, for ss10. #2467

Merged
merged 1 commit into from
Aug 13, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions changes/31.3.0.md
Original file line number Diff line number Diff line change
@@ -1,2 +1,3 @@
* Add `diagonal-tailed-cursive` variants for Cyrillic Lower Ef (`cv93`).
* Add `rounded-vertical-sides` variants for Capital/Lower W (`cv32`, `cv57`).
* Prevent clipping of texture-extended glyphs in Kitty.
1 change: 1 addition & 0 deletions packages/font-glyphs/src/letter/latin/lower-m.ptl
Original file line number Diff line number Diff line change
Expand Up @@ -182,6 +182,7 @@ glyph-block Letter-Latin-Lower-M : begin
include : tagged 'barL' : VBar.l df.leftSB lbot (top - DToothlessRise) df.mvs
# include : tagged 'barM' : VBar.m mid mbot (top - DToothlessRise) df.mvs

glyph-block-export EarlessRoundedDoubleArchSmallMShape
define [EarlessRoundedDoubleArchSmallMShape df top lbot mbot rbot _mid] : glyph-proc
local mid : fallback _mid df.middle
include : union
Expand Down
29 changes: 28 additions & 1 deletion packages/font-glyphs/src/letter/latin/w.ptl
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@ glyph-block Letter-Latin-W : begin
glyph-block-import Common-Derivatives
glyph-block-import Letter-Shared : CreateTurnedLetter
glyph-block-import Letter-Shared-Shapes : DiagTail SerifFrame VerticalHook
glyph-block-import Letter-Latin-Lower-M : EarlessRoundedDoubleArchSmallMShape
glyph-block-import Letter-Latin-Upper-M : MShape

define FORM-CURLY 0
Expand Down Expand Up @@ -269,6 +270,31 @@ glyph-block Letter-Latin-W : begin

include : VerticalHook.r df.rightSB (top - TailY - HalfStroke - O) TailX (-TailY)

define [WRounded df top bodyType slabType] : glyph-proc
include : new-glyph : glyph-proc
include : EarlessRoundedDoubleArchSmallMShape df top 0 (top * 0.4) 0
include : FlipAround (df.width / 2) (top / 2)

local sf : SerifFrame top 0 df.leftSB df.rightSB
include : match slabType
[Just SERIFS-AUTO] : NeedSlab SLAB : composite-proc sf.lt.full sf.rt.full
[Just SERIFS-ALL] : composite-proc sf.lt.full sf.rt.full
[Just SERIFS-MOTION] : begin sf.lt.outer
___ : glyph-proc

define [WHookTopRounded df top bodyType slabType] : glyph-proc
include : new-glyph : glyph-proc
include : EarlessRoundedDoubleArchSmallMShape df top (TailY + HalfStroke + O) (top * 0.4) 0
include : FlipAround (df.width / 2) (top / 2)

local sf : SerifFrame top 0 df.leftSB df.rightSB
include : match slabType
[Just SERIFS-AUTO] : NeedSlab SLAB sf.lt.full
[Just SERIFS-ALL] : begin sf.lt.full
[Just SERIFS-MOTION] : begin sf.lt.outer
___ : glyph-proc

include : VerticalHook.r df.rightSB (top - TailY - HalfStroke - O) TailX (-TailY) (sw -- df.mvs)

define [WCursiveImplImpl fHookTop df top bodyType slabType] : glyph-proc
define fine : AdviceStroke 3.25 df.div
Expand Down Expand Up @@ -327,9 +353,10 @@ glyph-block Letter-Latin-W : begin
straightDoubleV { WShapeImpl WHooktopShape FORM-DOUBLE-V }
straightFlatTop { WShapeImpl WHooktopShape FORM-FLAT-TOP }
straightVerticalSides { WVertSides WVSHookTopShape FORM-STRAIGHT }
roundedVerticalSides { WRounded WHookTopRounded FORM-CURLY }
curly { WShapeImpl WHooktopShape FORM-CURLY }
cursive { WCursiveImpl WHookTopCursive FORM-CURLY }
cyrlCapialOmega { WShapeImpl WHooktopShape FORM-CYRL-OMEGA }
cyrlCapialOmega { WShapeImpl WHooktopShape FORM-CYRL-OMEGA }
cyrlSmallOmega { WShapeImpl WHooktopShape FORM-CYRL-OMEGA }

# Serifs
Expand Down
32 changes: 26 additions & 6 deletions params/variants.toml
Original file line number Diff line number Diff line change
Expand Up @@ -1818,11 +1818,19 @@ selectorAffix.WHookTop = "straightAsymmetric"

[prime.capital-w.variants-buildup.stages.body.straight-vertical-sides]
rank = 6
descriptionAffix = "body shape with vertical sides"
descriptionAffix = "straight body shape with vertical sides"
selectorAffix.W = "straightVerticalSides"
selectorAffix."W/sansSerif" = "straightVerticalSides"
selectorAffix.WHookTop = "straightVerticalSides"

[prime.capital-w.variants-buildup.stages.body.rounded-vertical-sides]
rank = 7
nonBreakingVariantAdditionPriority = 100
descriptionAffix = "rounded body shape with vertical sides"
selectorAffix.W = "roundedVerticalSides"
selectorAffix."W/sansSerif" = "roundedVerticalSides"
selectorAffix.WHookTop = "roundedVerticalSides"

[prime.capital-w.variants-buildup.stages.serifs.serifless]
rank = 1
descriptionAffix = "serifs"
Expand Down Expand Up @@ -4620,37 +4628,46 @@ selectorAffix.wHookTop = "curly"
[prime.w.variants-buildup.stages.body.straight-vertical-sides]
rank = 3
groupRank = 1
descriptionAffix = "body shape with vertical sides"
descriptionAffix = "straight body shape with vertical sides"
selectorAffix.w = "straightVerticalSides"
selectorAffix."w/sansSerif" = "straightVerticalSides"
selectorAffix.wHookTop = "straightVerticalSides"

[prime.w.variants-buildup.stages.body.straight-flat-top]
[prime.w.variants-buildup.stages.body.rounded-vertical-sides]
rank = 4
groupRank = 1
nonBreakingVariantAdditionPriority = 100
descriptionAffix = "rounded body shape with vertical sides"
selectorAffix.w = "roundedVerticalSides"
selectorAffix."w/sansSerif" = "roundedVerticalSides"
selectorAffix.wHookTop = "roundedVerticalSides"

[prime.w.variants-buildup.stages.body.straight-flat-top]
rank = 5
groupRank = 2
descriptionAffix = "straight body shape that the middle is forced to be aligned the top"
selectorAffix.w = "straightFlatTop"
selectorAffix."w/sansSerif" = "straightFlatTop"
selectorAffix.wHookTop = "straightFlatTop"

[prime.w.variants-buildup.stages.body.straight-double-v]
rank = 5
rank = 6
groupRank = 2
descriptionAffix = "body shape like double V"
selectorAffix.w = "straightDoubleV"
selectorAffix."w/sansSerif" = "straightDoubleV"
selectorAffix.wHookTop = "straightDoubleV"

[prime.w.variants-buildup.stages.body.straight-asymmetric]
rank = 6
rank = 7
groupRank = 2
descriptionAffix = "asymmetric shape"
selectorAffix.w = "straightAsymmetric"
selectorAffix."w/sansSerif" = "straightAsymmetric"
selectorAffix.wHookTop = "straightAsymmetric"

[prime.w.variants-buildup.stages.body.cursive]
rank = 7
rank = 8
groupRank = 3
descriptionAffix = "cursive shape"
selectorAffix.w = "cursive"
Expand Down Expand Up @@ -9808,6 +9825,7 @@ j = "flat-hook-serifed"
k = "symmetric-connected-serifless"
l = "hooky"
t = "flat-hook"
w = "rounded-vertical-sides-serifless"
y = "cursive-flat-hook-serifless"
long-s = "flat-hook-middle-serifed"
eszet = "sulzbacher-serifless"
Expand Down Expand Up @@ -9850,6 +9868,7 @@ g = "single-storey-flat-hook-serifed"
i = "serifed"
k = "symmetric-connected-serifed"
l = "serifed"
w = "rounded-vertical-sides-serifed"
x = "straight-serifed"
y = "cursive-flat-hook-serifed"
z = "straight-serifed"
Expand All @@ -9867,6 +9886,7 @@ g = "single-storey-flat-hook-serifless"
i = "serifed-flat-tailed"
k = "symmetric-connected-top-left-and-bottom-right-serifed"
l = "serifed-flat-tailed"
w = "rounded-vertical-sides-motion-serifed"
x = "straight-bilateral-motion-serifed"
y = "cursive-flat-hook-motion-serifed"
cyrl-ka = "symmetric-connected-top-left-and-bottom-right-serifed"
Expand Down
Loading