parent
c6eee3535e
commit
42f1a21f77
3 changed files with 144 additions and 110 deletions
|
@ -5,6 +5,7 @@
|
||||||
* \[**Breaking**\] Add variants for Capital Thorn (`Þ`) with symmetric/asymmetric bowl position.
|
* \[**Breaking**\] Add variants for Capital Thorn (`Þ`) with symmetric/asymmetric bowl position.
|
||||||
* \[**Breaking**\] Add variant selector for Greek Lower Theta (#2630).
|
* \[**Breaking**\] Add variant selector for Greek Lower Theta (#2630).
|
||||||
- As a result, character variant feature tags are reordered.
|
- As a result, character variant feature tags are reordered.
|
||||||
|
* Add almost-flat-top variant for `W` and `w` (#2693).
|
||||||
* Add `closed-contour` variant for Partial derivative symbol (#2148).
|
* Add `closed-contour` variant for Partial derivative symbol (#2148).
|
||||||
* Refine shape of the following characters:
|
* Refine shape of the following characters:
|
||||||
- GREEK CAPITAL LETTER HETA (`U+0370`).
|
- GREEK CAPITAL LETTER HETA (`U+0370`).
|
||||||
|
|
|
@ -13,12 +13,13 @@ glyph-block Letter-Latin-W : begin
|
||||||
glyph-block-import Letter-Latin-Lower-M : EarlessRoundedDoubleArchSmallMShape
|
glyph-block-import Letter-Latin-Lower-M : EarlessRoundedDoubleArchSmallMShape
|
||||||
glyph-block-import Letter-Latin-Upper-M : MShape
|
glyph-block-import Letter-Latin-Upper-M : MShape
|
||||||
|
|
||||||
define FORM-CURLY 0
|
define FORM-CURLY 0
|
||||||
define FORM-STRAIGHT 1
|
define FORM-STRAIGHT 1
|
||||||
define FORM-FLAT-TOP 2
|
define FORM-ALMOST-FLAT-TOP 2
|
||||||
define FORM-DOUBLE-V 3
|
define FORM-FLAT-TOP 3
|
||||||
define FORM-ASYMMETRIC 4
|
define FORM-DOUBLE-V 4
|
||||||
define FORM-CYRL-OMEGA 5
|
define FORM-ASYMMETRIC 5
|
||||||
|
define FORM-CYRL-OMEGA 6
|
||||||
|
|
||||||
define SERIFS-NONE 0
|
define SERIFS-NONE 0
|
||||||
define SERIFS-AUTO 1
|
define SERIFS-AUTO 1
|
||||||
|
@ -47,61 +48,66 @@ glyph-block Letter-Latin-W : begin
|
||||||
define PXBot1Curly 0.25
|
define PXBot1Curly 0.25
|
||||||
define PXBot1Straight 0.235
|
define PXBot1Straight 0.235
|
||||||
|
|
||||||
define [WDim df top bodyType] : begin
|
define [WDim df top bodyType slabType] : begin
|
||||||
local strokeOuter : match bodyType
|
local strokeOuter : match bodyType
|
||||||
[Just FORM-CURLY] : AdviceStroke CwOuterStrokeCurly : Math.sqrt df.adws
|
[Just FORM-CURLY] : AdviceStroke CwOuterStrokeCurly : Math.sqrt df.adws
|
||||||
[Just FORM-STRAIGHT] : AdviceStroke CwOuterStrokeStraight1 : Math.sqrt df.adws
|
[Just FORM-STRAIGHT] : AdviceStroke CwOuterStrokeStraight1 : Math.sqrt df.adws
|
||||||
[Just FORM-FLAT-TOP] : AdviceStroke CwOuterStrokeStraight2 : Math.sqrt df.adws
|
[Just FORM-ALMOST-FLAT-TOP] : AdviceStroke CwOuterStrokeStraight2 : Math.sqrt df.adws
|
||||||
[Just FORM-DOUBLE-V] : AdviceStroke CwDoubleV : Math.sqrt df.adws
|
[Just FORM-FLAT-TOP] : AdviceStroke CwOuterStrokeStraight2 : Math.sqrt df.adws
|
||||||
[Just FORM-ASYMMETRIC] : AdviceStroke CwDoubleV : Math.sqrt df.adws
|
[Just FORM-DOUBLE-V] : AdviceStroke CwDoubleV : Math.sqrt df.adws
|
||||||
[Just FORM-CYRL-OMEGA] : AdviceStroke CwCyrlOmega : Math.sqrt df.adws
|
[Just FORM-ASYMMETRIC] : AdviceStroke CwDoubleV : Math.sqrt df.adws
|
||||||
|
[Just FORM-CYRL-OMEGA] : AdviceStroke CwCyrlOmega : Math.sqrt df.adws
|
||||||
local fineOuter : match bodyType
|
local fineOuter : match bodyType
|
||||||
[Just FORM-CURLY] : AdviceStroke CwFineOuter df.adws
|
[Just FORM-CURLY] : AdviceStroke CwFineOuter df.adws
|
||||||
[Just FORM-STRAIGHT] : AdviceStroke CwFineOuterStraight : Math.sqrt df.adws
|
[Just FORM-STRAIGHT] : AdviceStroke CwFineOuterStraight : Math.sqrt df.adws
|
||||||
[Just FORM-FLAT-TOP] : AdviceStroke CwFineOuterStraight : Math.sqrt df.adws
|
[Just FORM-ALMOST-FLAT-TOP] : AdviceStroke CwFineOuterStraight : Math.sqrt df.adws
|
||||||
[Just FORM-DOUBLE-V] : AdviceStroke CwDoubleV : Math.sqrt df.adws
|
[Just FORM-FLAT-TOP] : AdviceStroke CwFineOuterStraight : Math.sqrt df.adws
|
||||||
[Just FORM-ASYMMETRIC] : AdviceStroke CwDoubleV : Math.sqrt df.adws
|
[Just FORM-DOUBLE-V] : AdviceStroke CwDoubleV : Math.sqrt df.adws
|
||||||
[Just FORM-CYRL-OMEGA] : AdviceStroke CwCyrlOmega : Math.sqrt df.adws
|
[Just FORM-ASYMMETRIC] : AdviceStroke CwDoubleV : Math.sqrt df.adws
|
||||||
|
[Just FORM-CYRL-OMEGA] : AdviceStroke CwCyrlOmega : Math.sqrt df.adws
|
||||||
local fineInner : match bodyType
|
local fineInner : match bodyType
|
||||||
[Just FORM-CURLY] : AdviceStroke CwFineInner df.adws
|
[Just FORM-CURLY] : AdviceStroke CwFineInner df.adws
|
||||||
[Just FORM-STRAIGHT] : AdviceStroke CwFineInnerStraight : Math.sqrt df.adws
|
[Just FORM-STRAIGHT] : AdviceStroke CwFineInnerStraight : Math.sqrt df.adws
|
||||||
[Just FORM-FLAT-TOP] : AdviceStroke CwFineInnerStraight : Math.sqrt df.adws
|
[Just FORM-ALMOST-FLAT-TOP] : AdviceStroke CwFineInnerStraight : Math.sqrt df.adws
|
||||||
[Just FORM-DOUBLE-V] : AdviceStroke CwFineInnerDoubleV : Math.sqrt df.adws
|
[Just FORM-FLAT-TOP] : AdviceStroke CwFineInnerStraight : Math.sqrt df.adws
|
||||||
[Just FORM-ASYMMETRIC] : AdviceStroke CwDoubleV : Math.sqrt df.adws
|
[Just FORM-DOUBLE-V] : AdviceStroke CwFineInnerDoubleV : Math.sqrt df.adws
|
||||||
[Just FORM-CYRL-OMEGA] : AdviceStroke CwCyrlOmega : Math.sqrt df.adws
|
[Just FORM-ASYMMETRIC] : AdviceStroke CwDoubleV : Math.sqrt df.adws
|
||||||
|
[Just FORM-CYRL-OMEGA] : AdviceStroke CwCyrlOmega : Math.sqrt df.adws
|
||||||
local fineHeight : (fineOuter + fineInner) / 2
|
local fineHeight : (fineOuter + fineInner) / 2
|
||||||
|
|
||||||
local wCo : match bodyType
|
local wCo : match bodyType
|
||||||
[Just FORM-CURLY] : AdviceStroke CwWCoCurly df.adws
|
[Just FORM-CURLY] : AdviceStroke CwWCoCurly df.adws
|
||||||
[Just FORM-STRAIGHT] : AdviceStroke CwWCoStraight df.adws
|
[Just FORM-STRAIGHT] : AdviceStroke CwWCoStraight df.adws
|
||||||
[Just FORM-FLAT-TOP] : AdviceStroke CwWCoStraight df.adws
|
[Just FORM-ALMOST-FLAT-TOP] : AdviceStroke CwWCoStraight df.adws
|
||||||
[Just FORM-DOUBLE-V] : AdviceStroke CwWCoDoubleV df.adws
|
[Just FORM-FLAT-TOP] : AdviceStroke CwWCoStraight df.adws
|
||||||
[Just FORM-ASYMMETRIC] : AdviceStroke CwWCoDoubleV df.adws
|
[Just FORM-DOUBLE-V] : AdviceStroke CwWCoDoubleV df.adws
|
||||||
[Just FORM-CYRL-OMEGA] : AdviceStroke CwWCoDoubleV df.adws
|
[Just FORM-ASYMMETRIC] : AdviceStroke CwWCoDoubleV df.adws
|
||||||
|
[Just FORM-CYRL-OMEGA] : AdviceStroke CwWCoDoubleV df.adws
|
||||||
local wCo2 : match bodyType
|
local wCo2 : match bodyType
|
||||||
[Just FORM-CYRL-OMEGA] : AdviceStroke CwCyrlOmega df.adws
|
[Just FORM-CYRL-OMEGA] : AdviceStroke CwCyrlOmega df.adws
|
||||||
_ wCo
|
_ wCo
|
||||||
|
|
||||||
local kWCoShrink CThin
|
local kWCoShrink CThin
|
||||||
local pxBot1 : match bodyType
|
local pxBot1 : match bodyType
|
||||||
[Just FORM-CURLY] 0.25
|
[Just FORM-CURLY] 0.25
|
||||||
[Just FORM-STRAIGHT] 0.235
|
[Just FORM-STRAIGHT] 0.235
|
||||||
[Just FORM-FLAT-TOP] 0.235
|
[Just FORM-ALMOST-FLAT-TOP] 0.235
|
||||||
[Just FORM-DOUBLE-V] 0.315
|
[Just FORM-FLAT-TOP] 0.235
|
||||||
[Just FORM-ASYMMETRIC] 0.3
|
[Just FORM-DOUBLE-V] 0.315
|
||||||
[Just FORM-CYRL-OMEGA] 0.265
|
[Just FORM-ASYMMETRIC] 0.3
|
||||||
|
[Just FORM-CYRL-OMEGA] 0.265
|
||||||
|
|
||||||
local botMixOffset : HSwToV : 0.5 * wCo2
|
local botMixOffset : HSwToV : 0.5 * wCo2
|
||||||
local xBot1 : [if bodyType O 0] + [mix (df.leftSB + botMixOffset) (df.rightSB - botMixOffset) pxBot1]
|
local xBot1 : [if bodyType O 0] + [mix (df.leftSB + botMixOffset) (df.rightSB - botMixOffset) pxBot1]
|
||||||
local xBot2 : df.width - xBot1
|
local xBot2 : df.width - xBot1
|
||||||
local topWithoutSerif : if SLAB (top - Stroke) top
|
|
||||||
local wMidHeight : match bodyType
|
local wMidHeight : match bodyType
|
||||||
[Just FORM-CURLY] : top * 0.6
|
[Just FORM-CURLY] : top * 0.6
|
||||||
[Just FORM-STRAIGHT] : topWithoutSerif * 0.72
|
[Just FORM-STRAIGHT] : top * 0.72
|
||||||
[Just FORM-FLAT-TOP] topWithoutSerif
|
[Just FORM-ALMOST-FLAT-TOP] : top - Stroke
|
||||||
[Just FORM-DOUBLE-V] top
|
[Just FORM-FLAT-TOP] top
|
||||||
[Just FORM-ASYMMETRIC] top
|
[Just FORM-DOUBLE-V] top
|
||||||
[Just FORM-CYRL-OMEGA] top
|
[Just FORM-ASYMMETRIC] top
|
||||||
|
[Just FORM-CYRL-OMEGA] top
|
||||||
|
|
||||||
local xRight1 : match bodyType
|
local xRight1 : match bodyType
|
||||||
([Just FORM-DOUBLE-V] || [Just FORM-ASYMMETRIC] || [Just FORM-CYRL-OMEGA])
|
([Just FORM-DOUBLE-V] || [Just FORM-ASYMMETRIC] || [Just FORM-CYRL-OMEGA])
|
||||||
|
@ -133,7 +139,7 @@ glyph-block Letter-Latin-W : begin
|
||||||
|
|
||||||
### W and w
|
### W and w
|
||||||
define [WShapeImpl df top bodyType slabType] : glyph-proc
|
define [WShapeImpl df top bodyType slabType] : glyph-proc
|
||||||
local dim : WDim df top bodyType
|
local dim : WDim df top bodyType slabType
|
||||||
|
|
||||||
include : tagged 'strokeDown1' : match bodyType
|
include : tagged 'strokeDown1' : match bodyType
|
||||||
([Just FORM-CURLY] || [Just FORM-CYRL-OMEGA]) : dispiro
|
([Just FORM-CURLY] || [Just FORM-CYRL-OMEGA]) : dispiro
|
||||||
|
@ -221,10 +227,10 @@ glyph-block Letter-Latin-W : begin
|
||||||
HSerif.mtAsymmetric (df.leftSB + [HSwToV : 0.5 * dim.strokeOuter]) dim.wMidHeight jut jut
|
HSerif.mtAsymmetric (df.leftSB + [HSwToV : 0.5 * dim.strokeOuter]) dim.wMidHeight jut jut
|
||||||
HSerif.mtAsymmetric dim.xLeft2 dim.wMidHeight jut jut
|
HSerif.mtAsymmetric dim.xLeft2 dim.wMidHeight jut jut
|
||||||
|
|
||||||
define [WHooktopShape df top bodyType serifsType] : glyph-proc
|
define [WHooktopShape df top bodyType slabType] : glyph-proc
|
||||||
include : WShapeImpl df top bodyType serifsType
|
include : WShapeImpl df top bodyType slabType
|
||||||
|
|
||||||
local dim : WDim df top bodyType
|
local dim : WDim df top bodyType slabType
|
||||||
|
|
||||||
# Eject unnecessary contours
|
# Eject unnecessary contours
|
||||||
eject-contour 'strokeUp2'
|
eject-contour 'strokeUp2'
|
||||||
|
@ -255,8 +261,8 @@ glyph-block Letter-Latin-W : begin
|
||||||
[Just SERIFS-MOTION] : begin sf.lt.outer
|
[Just SERIFS-MOTION] : begin sf.lt.outer
|
||||||
___ : glyph-proc
|
___ : glyph-proc
|
||||||
|
|
||||||
define [WVSHookTopShape df top bodyType serifsType] : glyph-proc
|
define [WVSHookTopShape df top bodyType slabType] : glyph-proc
|
||||||
include : WVertSides df top bodyType serifsType
|
include : WVertSides df top bodyType slabType
|
||||||
|
|
||||||
# Eject unnecessary contours
|
# Eject unnecessary contours
|
||||||
eject-contour 'strokeLeftBar'
|
eject-contour 'strokeLeftBar'
|
||||||
|
@ -342,21 +348,22 @@ glyph-block Letter-Latin-W : begin
|
||||||
[Just SERIFS-MOTION] : begin sf.lt.outer
|
[Just SERIFS-MOTION] : begin sf.lt.outer
|
||||||
___ : glyph-proc
|
___ : glyph-proc
|
||||||
|
|
||||||
define [WCursiveImpl df top bodyType serifsType] : WCursiveImplImpl false df top bodyType serifsType
|
define [WCursiveImpl df top bodyType slabType] : WCursiveImplImpl false df top bodyType slabType
|
||||||
define [WHookTopCursive df top bodyType serifsType] : WCursiveImplImpl true df top bodyType serifsType
|
define [WHookTopCursive df top bodyType slabType] : WCursiveImplImpl true df top bodyType slabType
|
||||||
|
|
||||||
define WConfig : SuffixCfg.weave
|
define WConfig : SuffixCfg.weave
|
||||||
# Body
|
# Body
|
||||||
object
|
object
|
||||||
straight { WShapeImpl WHooktopShape FORM-STRAIGHT para.advanceScaleM para.advanceScaleM }
|
straight { WShapeImpl WHooktopShape FORM-STRAIGHT para.advanceScaleM para.advanceScaleM }
|
||||||
straightAsymmetric { WShapeImpl WHooktopShape FORM-ASYMMETRIC para.advanceScaleM para.advanceScaleM }
|
straightAsymmetric { WShapeImpl WHooktopShape FORM-ASYMMETRIC para.advanceScaleM para.advanceScaleM }
|
||||||
straightDoubleV { WShapeImpl WHooktopShape FORM-DOUBLE-V para.advanceScaleM para.advanceScaleM }
|
straightDoubleV { WShapeImpl WHooktopShape FORM-DOUBLE-V para.advanceScaleM para.advanceScaleM }
|
||||||
straightFlatTop { WShapeImpl WHooktopShape FORM-FLAT-TOP para.advanceScaleMM para.advanceScaleM }
|
straightAlmostFlatTop { WShapeImpl WHooktopShape FORM-ALMOST-FLAT-TOP para.advanceScaleMM para.advanceScaleM }
|
||||||
straightVerticalSides { WVertSides WVSHookTopShape FORM-STRAIGHT para.advanceScaleM para.advanceScaleT }
|
straightFlatTop { WShapeImpl WHooktopShape FORM-FLAT-TOP para.advanceScaleMM para.advanceScaleM }
|
||||||
roundedVerticalSides { WRounded WHookTopRounded FORM-CURLY para.advanceScaleMM para.advanceScaleM }
|
straightVerticalSides { WVertSides WVSHookTopShape FORM-STRAIGHT para.advanceScaleM para.advanceScaleT }
|
||||||
curly { WShapeImpl WHooktopShape FORM-CURLY para.advanceScaleM para.advanceScaleM }
|
roundedVerticalSides { WRounded WHookTopRounded FORM-CURLY para.advanceScaleMM para.advanceScaleM }
|
||||||
cursive { WCursiveImpl WHookTopCursive FORM-CURLY para.advanceScaleM para.advanceScaleM }
|
curly { WShapeImpl WHooktopShape FORM-CURLY para.advanceScaleM para.advanceScaleM }
|
||||||
cyrlOmega { WShapeImpl WHooktopShape FORM-CYRL-OMEGA para.advanceScaleMM para.advanceScaleM }
|
cursive { WCursiveImpl WHookTopCursive FORM-CURLY para.advanceScaleM para.advanceScaleM }
|
||||||
|
cyrlOmega { WShapeImpl WHooktopShape FORM-CYRL-OMEGA para.advanceScaleMM para.advanceScaleM }
|
||||||
|
|
||||||
# Serifs
|
# Serifs
|
||||||
function [body] : if (body == 'cyrlOmega')
|
function [body] : if (body == 'cyrlOmega')
|
||||||
|
|
|
@ -1794,53 +1794,70 @@ next = "serifs"
|
||||||
|
|
||||||
[prime.capital-w.variants-buildup.stages.body.straight]
|
[prime.capital-w.variants-buildup.stages.body.straight]
|
||||||
rank = 1
|
rank = 1
|
||||||
|
groupRank = 1
|
||||||
descriptionAffix = "standard, straight body"
|
descriptionAffix = "standard, straight body"
|
||||||
selectorAffix.W = "straight"
|
selectorAffix.W = "straight"
|
||||||
selectorAffix."W/sansSerif" = "straight"
|
selectorAffix."W/sansSerif" = "straight"
|
||||||
selectorAffix.WHookTop = "straight"
|
selectorAffix.WHookTop = "straight"
|
||||||
|
|
||||||
[prime.capital-w.variants-buildup.stages.body.curly]
|
[prime.capital-w.variants-buildup.stages.body.straight-almost-flat-top]
|
||||||
rank = 2
|
rank = 2
|
||||||
descriptionAffix = "curly body"
|
groupRank = 1
|
||||||
selectorAffix.W = "curly"
|
descriptionAffix = "straight body shape that the middle is forced to be aligned the top"
|
||||||
selectorAffix."W/sansSerif" = "curly"
|
selectorAffix.W = "straightAlmostFlatTop"
|
||||||
selectorAffix.WHookTop = "curly"
|
selectorAffix."W/sansSerif" = "straightAlmostFlatTop"
|
||||||
|
selectorAffix.WHookTop = "straightAlmostFlatTop"
|
||||||
[prime.capital-w.variants-buildup.stages.body.straight-vertical-sides]
|
|
||||||
rank = 3
|
|
||||||
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 = 4
|
|
||||||
descriptionAffix = "rounded body shape with vertical sides"
|
|
||||||
selectorAffix.W = "roundedVerticalSides"
|
|
||||||
selectorAffix."W/sansSerif" = "roundedVerticalSides"
|
|
||||||
selectorAffix.WHookTop = "roundedVerticalSides"
|
|
||||||
|
|
||||||
[prime.capital-w.variants-buildup.stages.body.straight-flat-top]
|
[prime.capital-w.variants-buildup.stages.body.straight-flat-top]
|
||||||
rank = 5
|
rank = 3
|
||||||
|
groupRank = 1
|
||||||
descriptionAffix = "straight body shape that the middle is forced to be aligned the top"
|
descriptionAffix = "straight body shape that the middle is forced to be aligned the top"
|
||||||
selectorAffix.W = "straightFlatTop"
|
selectorAffix.W = "straightFlatTop"
|
||||||
selectorAffix."W/sansSerif" = "straightFlatTop"
|
selectorAffix."W/sansSerif" = "straightFlatTop"
|
||||||
selectorAffix.WHookTop = "straightFlatTop"
|
selectorAffix.WHookTop = "straightFlatTop"
|
||||||
|
|
||||||
[prime.capital-w.variants-buildup.stages.body.straight-double-v]
|
[prime.capital-w.variants-buildup.stages.body.straight-double-v]
|
||||||
rank = 6
|
rank = 4
|
||||||
|
groupRank = 2
|
||||||
descriptionAffix = "body shape like double V"
|
descriptionAffix = "body shape like double V"
|
||||||
selectorAffix.W = "straightDoubleV"
|
selectorAffix.W = "straightDoubleV"
|
||||||
selectorAffix."W/sansSerif" = "straightDoubleV"
|
selectorAffix."W/sansSerif" = "straightDoubleV"
|
||||||
selectorAffix.WHookTop = "straightDoubleV"
|
selectorAffix.WHookTop = "straightDoubleV"
|
||||||
|
|
||||||
[prime.capital-w.variants-buildup.stages.body.straight-asymmetric]
|
[prime.capital-w.variants-buildup.stages.body.straight-asymmetric]
|
||||||
rank = 7
|
rank = 5
|
||||||
|
groupRank = 2
|
||||||
descriptionAffix = "asymmetric shape"
|
descriptionAffix = "asymmetric shape"
|
||||||
selectorAffix.W = "straightAsymmetric"
|
selectorAffix.W = "straightAsymmetric"
|
||||||
selectorAffix."W/sansSerif" = "straightAsymmetric"
|
selectorAffix."W/sansSerif" = "straightAsymmetric"
|
||||||
selectorAffix.WHookTop = "straightAsymmetric"
|
selectorAffix.WHookTop = "straightAsymmetric"
|
||||||
|
|
||||||
|
|
||||||
|
[prime.capital-w.variants-buildup.stages.body.straight-vertical-sides]
|
||||||
|
rank = 6
|
||||||
|
groupRank = 3
|
||||||
|
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
|
||||||
|
groupRank = 3
|
||||||
|
descriptionAffix = "rounded body shape with vertical sides"
|
||||||
|
selectorAffix.W = "roundedVerticalSides"
|
||||||
|
selectorAffix."W/sansSerif" = "roundedVerticalSides"
|
||||||
|
selectorAffix.WHookTop = "roundedVerticalSides"
|
||||||
|
|
||||||
|
[prime.capital-w.variants-buildup.stages.body.curly]
|
||||||
|
rank = 8
|
||||||
|
groupRank = 3
|
||||||
|
descriptionAffix = "curly body"
|
||||||
|
selectorAffix.W = "curly"
|
||||||
|
selectorAffix."W/sansSerif" = "curly"
|
||||||
|
selectorAffix.WHookTop = "curly"
|
||||||
|
|
||||||
|
|
||||||
[prime.capital-w.variants-buildup.stages.serifs.serifless]
|
[prime.capital-w.variants-buildup.stages.serifs.serifless]
|
||||||
rank = 1
|
rank = 1
|
||||||
descriptionAffix = "serifs"
|
descriptionAffix = "serifs"
|
||||||
|
@ -4719,40 +4736,24 @@ selectorAffix.w = "straight"
|
||||||
selectorAffix."w/sansSerif" = "straight"
|
selectorAffix."w/sansSerif" = "straight"
|
||||||
selectorAffix.wHookTop = "straight"
|
selectorAffix.wHookTop = "straight"
|
||||||
|
|
||||||
[prime.w.variants-buildup.stages.body.curly]
|
[prime.w.variants-buildup.stages.body.straight-almost-flat-top]
|
||||||
rank = 2
|
rank = 2
|
||||||
groupRank = 1
|
groupRank = 1
|
||||||
descriptionAffix = "curly body"
|
descriptionAffix = "straight body shape that the middle is forced to be aligned the top"
|
||||||
selectorAffix.w = "curly"
|
selectorAffix.w = "straightAlmostFlatTop"
|
||||||
selectorAffix."w/sansSerif" = "curly"
|
selectorAffix."w/sansSerif" = "straightAlmostFlatTop"
|
||||||
selectorAffix.wHookTop = "curly"
|
selectorAffix.wHookTop = "straightAlmostFlatTop"
|
||||||
|
|
||||||
[prime.w.variants-buildup.stages.body.straight-vertical-sides]
|
|
||||||
rank = 3
|
|
||||||
groupRank = 1
|
|
||||||
descriptionAffix = "straight body shape with vertical sides"
|
|
||||||
selectorAffix.w = "straightVerticalSides"
|
|
||||||
selectorAffix."w/sansSerif" = "straightVerticalSides"
|
|
||||||
selectorAffix.wHookTop = "straightVerticalSides"
|
|
||||||
|
|
||||||
[prime.w.variants-buildup.stages.body.rounded-vertical-sides]
|
|
||||||
rank = 4
|
|
||||||
groupRank = 1
|
|
||||||
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]
|
[prime.w.variants-buildup.stages.body.straight-flat-top]
|
||||||
rank = 5
|
rank = 3
|
||||||
groupRank = 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 forced to be aligned the top"
|
||||||
selectorAffix.w = "straightFlatTop"
|
selectorAffix.w = "straightFlatTop"
|
||||||
selectorAffix."w/sansSerif" = "straightFlatTop"
|
selectorAffix."w/sansSerif" = "straightFlatTop"
|
||||||
selectorAffix.wHookTop = "straightFlatTop"
|
selectorAffix.wHookTop = "straightFlatTop"
|
||||||
|
|
||||||
[prime.w.variants-buildup.stages.body.straight-double-v]
|
[prime.w.variants-buildup.stages.body.straight-double-v]
|
||||||
rank = 6
|
rank = 4
|
||||||
groupRank = 2
|
groupRank = 2
|
||||||
descriptionAffix = "body shape like double V"
|
descriptionAffix = "body shape like double V"
|
||||||
selectorAffix.w = "straightDoubleV"
|
selectorAffix.w = "straightDoubleV"
|
||||||
|
@ -4760,21 +4761,46 @@ selectorAffix."w/sansSerif" = "straightDoubleV"
|
||||||
selectorAffix.wHookTop = "straightDoubleV"
|
selectorAffix.wHookTop = "straightDoubleV"
|
||||||
|
|
||||||
[prime.w.variants-buildup.stages.body.straight-asymmetric]
|
[prime.w.variants-buildup.stages.body.straight-asymmetric]
|
||||||
rank = 7
|
rank = 5
|
||||||
groupRank = 2
|
groupRank = 2
|
||||||
descriptionAffix = "asymmetric shape"
|
descriptionAffix = "asymmetric shape"
|
||||||
selectorAffix.w = "straightAsymmetric"
|
selectorAffix.w = "straightAsymmetric"
|
||||||
selectorAffix."w/sansSerif" = "straightAsymmetric"
|
selectorAffix."w/sansSerif" = "straightAsymmetric"
|
||||||
selectorAffix.wHookTop = "straightAsymmetric"
|
selectorAffix.wHookTop = "straightAsymmetric"
|
||||||
|
|
||||||
[prime.w.variants-buildup.stages.body.cursive]
|
[prime.w.variants-buildup.stages.body.straight-vertical-sides]
|
||||||
rank = 8
|
rank = 6
|
||||||
groupRank = 3
|
groupRank = 3
|
||||||
|
descriptionAffix = "straight body shape with vertical sides"
|
||||||
|
selectorAffix.w = "straightVerticalSides"
|
||||||
|
selectorAffix."w/sansSerif" = "straightVerticalSides"
|
||||||
|
selectorAffix.wHookTop = "straightVerticalSides"
|
||||||
|
|
||||||
|
[prime.w.variants-buildup.stages.body.rounded-vertical-sides]
|
||||||
|
rank = 7
|
||||||
|
groupRank = 3
|
||||||
|
descriptionAffix = "rounded body shape with vertical sides"
|
||||||
|
selectorAffix.w = "roundedVerticalSides"
|
||||||
|
selectorAffix."w/sansSerif" = "roundedVerticalSides"
|
||||||
|
selectorAffix.wHookTop = "roundedVerticalSides"
|
||||||
|
|
||||||
|
[prime.w.variants-buildup.stages.body.curly]
|
||||||
|
rank = 8
|
||||||
|
groupRank = 4
|
||||||
|
descriptionAffix = "curly body"
|
||||||
|
selectorAffix.w = "curly"
|
||||||
|
selectorAffix."w/sansSerif" = "curly"
|
||||||
|
selectorAffix.wHookTop = "curly"
|
||||||
|
|
||||||
|
[prime.w.variants-buildup.stages.body.cursive]
|
||||||
|
rank = 9
|
||||||
|
groupRank = 4
|
||||||
descriptionAffix = "cursive shape"
|
descriptionAffix = "cursive shape"
|
||||||
selectorAffix.w = "cursive"
|
selectorAffix.w = "cursive"
|
||||||
selectorAffix."w/sansSerif" = "cursive"
|
selectorAffix."w/sansSerif" = "cursive"
|
||||||
selectorAffix.wHookTop = "cursive"
|
selectorAffix.wHookTop = "cursive"
|
||||||
|
|
||||||
|
|
||||||
[prime.w.variants-buildup.stages.serifs.serifless]
|
[prime.w.variants-buildup.stages.serifs.serifless]
|
||||||
rank = 1
|
rank = 1
|
||||||
descriptionAffix = "serifs"
|
descriptionAffix = "serifs"
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue