* cleanup * add variants * doc * remove nonbreakingtags * update style sets
This commit is contained in:
parent
c661de7403
commit
485c21ee7c
5 changed files with 77 additions and 20 deletions
|
@ -3,6 +3,9 @@
|
|||
- Adjustable via metric override
|
||||
* \[**Breaking**\] Reordered variants for `W`, `a`, `b`, `g`, `q`, `w`, `α`, Cyrillic `а`, Cyrillic `ф`, and `$`.
|
||||
* \[**Breaking**\] Add variants for Capital Thorn (`Þ`) with symmetric/asymmetric bowl position.
|
||||
* \[**Breaking**\] Add variant selector for Greek Lower Theta (#2630).
|
||||
- As a result, feature tags for `cv71` ... `cv99`, `VAAA` are shifted by one place to `cv72` ... `cv99`, `VSAA`, `VSAB`.
|
||||
* Add `closed-contour` variant for Partial derivative symbol (#2148).
|
||||
* Refine shape of the following characters:
|
||||
- GREEK CAPITAL LETTER HETA (`U+0370`).
|
||||
- GREEK SMALL LETTER HETA (`U+0371`).
|
||||
|
|
|
@ -1,10 +1,6 @@
|
|||
$$include '../meta/macros.ptl'
|
||||
|
||||
import [mix linreg clamp fallback boole boolePn] from "@iosevka/util"
|
||||
import [Transform] from "@iosevka/geometry/transform"
|
||||
import [Point] from "@iosevka/geometry/point"
|
||||
import [FunctionInterpolator AfCombine] from "@iosevka/geometry/spiro-control"
|
||||
import [RadicalGeometry StrokeGeometry RemoveHolesGeometry] from "@iosevka/geometry"
|
||||
import [mix clamp fallback] from "@iosevka/util"
|
||||
|
||||
glyph-module
|
||||
|
||||
|
|
|
@ -8,11 +8,31 @@ glyph-module
|
|||
glyph-block Letter-Greek-Lower-Theta : begin
|
||||
glyph-block-import CommonShapes
|
||||
glyph-block-import Common-Derivatives
|
||||
glyph-block-import Common-OShape-Variants : OvalShapeT DiamondShapeT
|
||||
|
||||
create-glyph 'grek/theta' 0x3B8 : glyph-proc
|
||||
include : MarkSet.b
|
||||
include : OShape Ascender 0 (SB - O) (RightSB + O) Stroke (SmallArchDepthA * 100) (SmallArchDepthB * 100)
|
||||
include : HBar.m (SB + HalfStroke) (RightSB - HalfStroke) (0.5 * Ascender)
|
||||
define [ThetaShapeBase shapeT] : namespace
|
||||
define [outlineT sink offsetX offsetY top] : shapeT sink (top - offsetY) (offsetY) (SB + offsetX) (RightSB - offsetX)
|
||||
export : define [Shape top] : outlineT dispiro 0 0 top
|
||||
export : define [Mask top] : outlineT spiro-outline 1 1 top
|
||||
|
||||
define Capsule : ThetaShapeBase OShapeT
|
||||
define Oval : ThetaShapeBase OvalShapeT
|
||||
define Diamond : ThetaShapeBase DiamondShapeT
|
||||
|
||||
define ThetaConfig : object
|
||||
'capsule' Capsule
|
||||
'oval' Oval
|
||||
'diamond' Diamond
|
||||
|
||||
foreach { suffix ShapeBase } [pairs-of ThetaConfig] : begin
|
||||
create-glyph "grek/theta.\(suffix)" : glyph-proc
|
||||
include : MarkSet.b
|
||||
include : ShapeBase.Shape Ascender
|
||||
include : intersection
|
||||
ShapeBase.Mask Ascender
|
||||
HBar.m SB RightSB (0.5 * Ascender)
|
||||
|
||||
select-variant 'grek/theta' 0x3B8
|
||||
|
||||
glyph-block Letter-Greek-Lower-Theta-Var : begin
|
||||
glyph-block-import CommonShapes
|
||||
|
|
|
@ -15,14 +15,14 @@ glyph-block Letter-Latin-Eth : begin
|
|||
define yMid2 : YSmoothMidR yMid 0 SmallArchDepthA SmallArchDepthB
|
||||
define yMid3 : mix yMid yMid2 0.875
|
||||
|
||||
define [ArcStartKnots] : list
|
||||
define [ArcStartKnots _flatY1 _flatY2] : list
|
||||
widths.lhs fine
|
||||
straight.up.mid (RightSB - OX - [HSwToV : Stroke - fine]) yMid2
|
||||
arch.lhs yMid (swBefore -- fine)
|
||||
g4 (SB + OX) [YSmoothMidL yMid 0 SmallArchDepthA SmallArchDepthB]
|
||||
arch.lhs 0
|
||||
flat (RightSB - OX) yMid2
|
||||
curl (RightSB - OX) yMid3
|
||||
flat (RightSB - OX) [fallback _flatY1 yMid2]
|
||||
curl (RightSB - OX) [fallback _flatY2 yMid3]
|
||||
|
||||
create-glyph 'dInsular.curly-bar' : glyph-proc
|
||||
include : MarkSet.b
|
||||
|
@ -41,6 +41,13 @@ glyph-block Letter-Latin-Eth : begin
|
|||
flat [mix Width xTerminal pStraightBarStart] [mix yMockBarStart CAP pStraightBarStart] [widths.lhs]
|
||||
curl [mix Width xTerminal 2] [mix yMockBarStart CAP 2]
|
||||
|
||||
create-glyph 'dInsular.closed-contour' : glyph-proc
|
||||
include : MarkSet.b
|
||||
include : dispiro
|
||||
ArcStartKnots SmallArchDepthA (Ascender - SmallArchDepthB)
|
||||
hookend Ascender
|
||||
g4 (SB + OX) (Ascender - Hook)
|
||||
|
||||
select-variant 'dInsular' 0xA77A (follow -- 'eth')
|
||||
select-variant 'partial' 0x2202 (shapeFrom -- 'dInsular')
|
||||
|
||||
|
|
|
@ -5595,7 +5595,6 @@ selectorAffix."grek/alpha/sansSerif" = "tailed"
|
|||
[prime.lower-beta]
|
||||
sampler = "β"
|
||||
samplerExplain = "Greek lower Beta"
|
||||
nonBreakingTagForNewVariantSelector = "VXAC" # REMOVE IN NEXT MAJOR VERSION CHANGE
|
||||
tagKind = "letter"
|
||||
|
||||
[prime.lower-beta.variants.standard]
|
||||
|
@ -5668,7 +5667,6 @@ selector."cyrl/enghe/ghePart" = "topRightSerifed"
|
|||
[prime.lower-gamma]
|
||||
sampler = "γ"
|
||||
samplerExplain = "Greek lower Gamma"
|
||||
nonBreakingTagForNewVariantSelector = "VXAD" # REMOVE IN NEXT MAJOR VERSION CHANGE
|
||||
tagKind = "letter"
|
||||
|
||||
[prime.lower-gamma.variants.straight]
|
||||
|
@ -5722,6 +5720,28 @@ selector."grek/delta" = "flatTop"
|
|||
|
||||
|
||||
|
||||
[prime.lower-theta]
|
||||
sampler = "θ"
|
||||
samplerExplain = "Greek lower Theta"
|
||||
tagKind = "letter"
|
||||
|
||||
[prime.lower-theta.variants.capsule]
|
||||
rank = 1
|
||||
description = "Greek lower Theta (`θ`) with a capsule (O-like) body shape"
|
||||
selector."grek/theta" = "capsule"
|
||||
|
||||
[prime.lower-theta.variants.oval]
|
||||
rank = 2
|
||||
description = "Greek lower Theta (`θ`) with a standard (oval) body shape"
|
||||
selector."grek/theta" = "oval"
|
||||
|
||||
[prime.lower-theta.variants.diamond]
|
||||
rank = 3
|
||||
description = "Greek lower Theta (`θ`) with a diamond body shape"
|
||||
selector."grek/theta" = "diamond"
|
||||
|
||||
|
||||
|
||||
[prime.lower-iota]
|
||||
sampler = "ι"
|
||||
samplerExplain = "Greek lower Iota"
|
||||
|
@ -5980,7 +6000,6 @@ selectorAffix."grek/mu/sansSerif" = "serifless"
|
|||
[prime.lower-nu]
|
||||
sampler = "ν"
|
||||
samplerExplain = "Greek lower Nu"
|
||||
nonBreakingTagForNewVariantSelector = "VXAE" # REMOVE IN NEXT MAJOR VERSION CHANGE
|
||||
tagKind = "letter"
|
||||
|
||||
[prime.lower-nu.variants.straight]
|
||||
|
@ -6085,7 +6104,6 @@ selector."grek/tau/tailed" = "tau/semiTailed"
|
|||
[prime.lower-upsilon]
|
||||
sampler = "υ"
|
||||
samplerExplain = "Greek lower Upsilon"
|
||||
nonBreakingTagForNewVariantSelector = "VXAF" # REMOVE IN NEXT MAJOR VERSION CHANGE
|
||||
tagKind = "letter"
|
||||
|
||||
[prime.lower-upsilon.variants-buildup]
|
||||
|
@ -6125,7 +6143,6 @@ selectorAffix."grek/upsilon/sansSerif" = "serifless"
|
|||
[prime.lower-phi]
|
||||
sampler = "φ"
|
||||
samplerExplain = "Greek lower Phi"
|
||||
nonBreakingTagForNewVariantSelector = "VXAG" # REMOVE IN NEXT MAJOR VERSION CHANGE
|
||||
tagKind = "letter"
|
||||
|
||||
[prime.lower-phi.variants.straight]
|
||||
|
@ -6230,7 +6247,6 @@ selectorAffix."grek/chi/sansSerif" = "serifless"
|
|||
[prime.lower-psi]
|
||||
sampler = "ψ"
|
||||
samplerExplain = "Greek lower Psi"
|
||||
nonBreakingTagForNewVariantSelector = "VXAH" # REMOVE IN NEXT MAJOR VERSION CHANGE
|
||||
tagKind = "letter"
|
||||
|
||||
[prime.lower-psi.variants-buildup]
|
||||
|
@ -6921,7 +6937,6 @@ selectorAffix."cyrl/em" = "smallCyrl"
|
|||
[prime.cyrl-capital-en]
|
||||
sampler = "Н"
|
||||
samplerExplain = "Cyrillic Capital En"
|
||||
nonBreakingTagForNewVariantSelector = "VXAA" # REMOVE IN NEXT MAJOR VERSION CHANGE
|
||||
tagKind = "letter"
|
||||
|
||||
[prime.cyrl-capital-en.variants.serifless]
|
||||
|
@ -7041,7 +7056,6 @@ selectorAffix."cyrl/njeKomi" = "serifedExceptBottomRight"
|
|||
[prime.cyrl-capital-er]
|
||||
sampler = "Р"
|
||||
samplerExplain = "Cyrillic Capital Er"
|
||||
nonBreakingTagForNewVariantSelector = "VXAB" # REMOVE IN NEXT MAJOR VERSION CHANGE
|
||||
tagKind = "letter"
|
||||
|
||||
[prime.cyrl-capital-er.variants-buildup]
|
||||
|
@ -8490,6 +8504,11 @@ rank = 2
|
|||
description = "The upper bar of the partial derivative symbol is curly"
|
||||
selector."partial" = "curly-bar"
|
||||
|
||||
[prime.partial-derivative.variants.closed-contour]
|
||||
rank = 3
|
||||
description = "The upper part of the partial derivative symbol is a full hook"
|
||||
selector."partial" = "closed-contour"
|
||||
|
||||
|
||||
|
||||
[prime.micro-sign]
|
||||
|
@ -8821,6 +8840,7 @@ capital-gamma = "serifless"
|
|||
lower-gamma = "casual"
|
||||
capital-delta = "straight"
|
||||
lower-delta = "rounded"
|
||||
lower-theta = "oval"
|
||||
lower-iota = "serifed-semi-tailed"
|
||||
capital-lambda = "straight-serifless"
|
||||
lower-lambda = "straight"
|
||||
|
@ -9113,6 +9133,7 @@ number-sign = "slanted"
|
|||
at = "fourfold"
|
||||
percent = "rings-continuous-slash"
|
||||
pilcrow = "low"
|
||||
partial-derivative = "closed-contour"
|
||||
micro-sign = "toothed-serifless"
|
||||
|
||||
[composite.ss01.slab-override.design]
|
||||
|
@ -9321,6 +9342,7 @@ cent = "slanted-through-cap"
|
|||
percent = "rings-continuous-slash"
|
||||
pilcrow = "curved"
|
||||
question = "corner-flat-hooked"
|
||||
partial-derivative = "closed-contour"
|
||||
micro-sign = "tailed-serifless"
|
||||
|
||||
[composite.ss03.italic]
|
||||
|
@ -9456,6 +9478,7 @@ ampersand = "upper-open"
|
|||
at = "threefold"
|
||||
percent = "rings-continuous-slash"
|
||||
bar = "force-upright"
|
||||
partial-derivative = "closed-contour"
|
||||
micro-sign = "tailed-serifless"
|
||||
|
||||
[composite.ss04.slab-override.design]
|
||||
|
@ -9663,6 +9686,7 @@ cent = "open-cap"
|
|||
percent = "rings-continuous-slash"
|
||||
bar = "force-upright"
|
||||
pilcrow = "low"
|
||||
partial-derivative = "closed-contour"
|
||||
micro-sign = "toothed-serifless"
|
||||
|
||||
[composite.ss06.slab-override.design]
|
||||
|
@ -9845,6 +9869,7 @@ capital-lambda = "curly-serifless"
|
|||
lower-lambda = "curly-tailed-turn"
|
||||
lower-mu = "toothed-serifless"
|
||||
lower-chi = "semi-chancery-curly-serifless"
|
||||
lower-theta = "diamond"
|
||||
cyrl-a = "double-storey-serifless"
|
||||
cyrl-capital-zhe = "curly"
|
||||
cyrl-zhe = "curly"
|
||||
|
@ -9873,6 +9898,7 @@ at = "threefold"
|
|||
dollar = "open"
|
||||
cent = "open"
|
||||
percent = "dots"
|
||||
partial-derivative = "closed-contour"
|
||||
micro-sign = "toothed-serifless"
|
||||
lig-ltgteq = "slanted"
|
||||
lig-neq = "slightly-slanted-dotted"
|
||||
|
@ -9993,6 +10019,7 @@ dollar = "open"
|
|||
cent = "through-cap"
|
||||
percent = "rings-segmented-slash"
|
||||
bar = "force-upright"
|
||||
partial-derivative = "closed-contour"
|
||||
micro-sign = "tailed-serifless"
|
||||
|
||||
[composite.ss09.italic]
|
||||
|
@ -10255,6 +10282,7 @@ dollar = "open"
|
|||
cent = "open"
|
||||
percent = "rings-continuous-slash"
|
||||
pilcrow = "low"
|
||||
partial-derivative = "closed-contour"
|
||||
micro-sign = "toothless-corner-serifless"
|
||||
|
||||
[composite.ss12.italic]
|
||||
|
@ -10380,6 +10408,7 @@ at = "threefold"
|
|||
cent = "through-cap"
|
||||
percent = "rings-continuous-slash"
|
||||
pilcrow = "low"
|
||||
partial-derivative = "closed-contour"
|
||||
micro-sign = "toothed-serifless"
|
||||
|
||||
[composite.ss13.slab-override.design]
|
||||
|
@ -10454,6 +10483,7 @@ lower-alpha = "barred"
|
|||
lower-gamma = "straight"
|
||||
lower-delta = "flat-top"
|
||||
lower-iota = "serifed-flat-tailed"
|
||||
lower-theta = "capsule"
|
||||
lower-lambda = "straight"
|
||||
lower-mu = "toothed-serifless"
|
||||
lower-nu = "straight"
|
||||
|
@ -11005,6 +11035,7 @@ long-s = "bent-hook-middle-serifed-xh"
|
|||
eszet = "longs-s-lig-serifless"
|
||||
lower-alpha = "barred-tailed"
|
||||
lower-gamma = "straight"
|
||||
lower-theta = "capsule"
|
||||
lower-lambda = "straight-turn"
|
||||
lower-tau = "short-tailed"
|
||||
lower-upsilon = "straight-serifless"
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue