Skip to content

Commit

Permalink
Merge branch 'prerelease'
Browse files Browse the repository at this point in the history
  • Loading branch information
be5invis committed Oct 7, 2023
2 parents 9e36fef + 4aa384c commit 0a15fe9
Show file tree
Hide file tree
Showing 185 changed files with 3,122 additions and 2,595 deletions.
29 changes: 29 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,34 @@
## Modifications since last major version

### 27.2.0

* Add characters
- TELEPHONE RECORDER (`U+2315`) (#2020).
- COUNTERSINK (`U+2335`) (#2020).
- BROKEN CIRCLE WITH NORTHWEST ARROW (`U+238B`) (#2020).
- TRIPLE PLUS (`U+29FB`) (#2020).
* Correction of letter assignments for stylistic styles:
- Fix `cv10` and `cv30` for `ss14`.
- Fix `cv12`, `cv36`, and `cv82` for `ss16`.
- Fix `cv22`, `cv31`, `cv47`, and `cv91` for `ss07`.
- Fix `cv26` for `ss07`, `ss14`, and `ss15`.
- Fix `cv28`, `cv43`, and `cv70` for `ss01`, `ss04`, `ss05`, `ss06`, `ss07`, `ss13`, and `ss16`.
- Fix `cv55` for `ss03`, `ss09`, `cv12`, and `ss14`.
- Fix `cv53` and `cv84` for `ss10`.
- Fix `cv58` for `ss06` and `ss10`.
- Fix `cv59` for `ss09` and `ss18`.
- Fix `cv61` for `ss08` and `ss20`.
- Fix `cv62` for `ss01`.
- Fix `cv63` for `ss02`, `ss05`, and `ss12`.
- Fix `cv68` for `ss03`.
- Fix `cv72` for `ss03`, `ss05`, `ss06`, `cv07`, and `ss13`.
- Fix `cv77` for `ss03`, `ss04`, `ss06`, `ss07`, `ss08`, `ss12`, `ss13`, and `ss18`.
- Fix `cv79` and `cv80` for `ss01`, `ss02`, `ss04`, `ss05`, `ss06`, `ss07`, `ss09`, `ss12`, `ss13`, `ss14`, `ss16`, `ss18`, and Aile.
- Fix `cv88` for `ss18`.
- Fix `vsAA` and `vsAM` for `ss06`.
- Fix `vsAG` for `ss03` and Etoile.


### 27.1.0

* \[**Breaking**\] Change of variant names:
Expand Down
5 changes: 5 additions & 0 deletions build-plans.toml
Original file line number Diff line number Diff line change
Expand Up @@ -710,6 +710,8 @@ cyrl-em = "flat-bottom-serifless"
cyrl-capital-u = "straight-serifless"
cyrl-u = "straight-serifless"
cyrl-ef = "serifless"
cyrl-yeri = "corner"
cyrl-yery = "corner"
at = "fourfold"
percent = "rings-continuous-slash"
micro-sign = "toothed-serifless"
Expand Down Expand Up @@ -745,6 +747,8 @@ cyrl-em = "flat-bottom-serifless"
cyrl-capital-u = "straight-serifless"
cyrl-u = "straight-serifless"
cyrl-ef = "serifless"
cyrl-yeri = "corner"
cyrl-yery = "corner"
at = "fourfold"
percent = "rings-continuous-slash"
micro-sign = "toothed-serifless"
Expand Down Expand Up @@ -772,6 +776,7 @@ j = "flat-hook-serifed"
t = "flat-hook"
w = "straight-flat-top-serifed"
at = "fourfold"
percent = "rings-continuous-slash"

[buildPlans.iosevka-etoile.variants.italic]
f = "flat-hook-tailed"
Expand Down
25 changes: 25 additions & 0 deletions changes/27.2.0.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
* Add characters
- TELEPHONE RECORDER (`U+2315`) (#2020).
- COUNTERSINK (`U+2335`) (#2020).
- BROKEN CIRCLE WITH NORTHWEST ARROW (`U+238B`) (#2020).
- TRIPLE PLUS (`U+29FB`) (#2020).
* Correction of letter assignments for stylistic styles:
- Fix `cv10` and `cv30` for `ss14`.
- Fix `cv12`, `cv36`, and `cv82` for `ss16`.
- Fix `cv22`, `cv31`, `cv47`, and `cv91` for `ss07`.
- Fix `cv26` for `ss07`, `ss14`, and `ss15`.
- Fix `cv28`, `cv43`, and `cv70` for `ss01`, `ss04`, `ss05`, `ss06`, `ss07`, `ss13`, and `ss16`.
- Fix `cv55` for `ss03`, `ss09`, `cv12`, and `ss14`.
- Fix `cv53` and `cv84` for `ss10`.
- Fix `cv58` for `ss06` and `ss10`.
- Fix `cv59` for `ss09` and `ss18`.
- Fix `cv61` for `ss08` and `ss20`.
- Fix `cv62` for `ss01`.
- Fix `cv63` for `ss02`, `ss05`, and `ss12`.
- Fix `cv68` for `ss03`.
- Fix `cv72` for `ss03`, `ss05`, `ss06`, `cv07`, and `ss13`.
- Fix `cv77` for `ss03`, `ss04`, `ss06`, `ss07`, `ss08`, `ss12`, `ss13`, and `ss18`.
- Fix `cv79` and `cv80` for `ss01`, `ss02`, `ss04`, `ss05`, `ss06`, `ss07`, `ss09`, `ss12`, `ss13`, `ss14`, `ss16`, `ss18`, and Aile.
- Fix `cv88` for `ss18`.
- Fix `vsAA` and `vsAM` for `ss06`.
- Fix `vsAG` for `ss03` and Etoile.
282 changes: 141 additions & 141 deletions doc/PACKAGE-LIST.md

Large diffs are not rendered by default.

912 changes: 456 additions & 456 deletions doc/packages-sha.txt

Large diffs are not rendered by default.

4 changes: 2 additions & 2 deletions font-src/glyphs/index.ptl
Original file line number Diff line number Diff line change
Expand Up @@ -138,12 +138,12 @@ export : define [buildGlyphs para recursive] : begin
run-glyph-module "./symbol/punctuation.mjs"
run-glyph-module "./symbol/arrow.mjs"
run-glyph-module "./symbol/geometric.mjs"
run-glyph-module "./symbol/mosaic.mjs"
run-glyph-module "./symbol/enclosure.mjs"
run-glyph-module "./symbol/pictograph.mjs"
run-glyph-module "./symbol/math.mjs"
run-glyph-module "./symbol/letter.mjs"
run-glyph-module "./symbol/braille.mjs"
run-glyph-module "./symbol/mosaic.mjs"
run-glyph-module "./symbol/pictograph.mjs"
run-glyph-module "./symbol/ligation.mjs"

# Auto-builds
Expand Down
40 changes: 21 additions & 19 deletions font-src/glyphs/letter/cyrillic/zhe.ptl
Original file line number Diff line number Diff line change
Expand Up @@ -55,20 +55,22 @@ glyph-block Letter-Cyrillic-Zhe : begin
corner (df.width - attach1X) (attach1Y + 0.1)
corner (df.rightSB - overshoot - 0.1) top

local rightShape : union
local rightHalf : union
intersection [MaskRight df.middle]
ExtLineRhs 4 fine (df.rightSB - overshoot) top (df.width - attach1X) attach1Y
intersection [MaskRight df.middle] : difference
ExtLineLhs 4 fine (df.rightSB - overshoot) bot (df.width - attach1X) attach2Y
mask

local fullShape : if fHalf rightShape : union rightShape
local leftHalf : union
intersection [MaskLeft df.middle]
ExtLineLhs 4 fine (df.leftSB + overshoot) top attach1X attach1Y
intersection [MaskLeft df.middle] : difference
ExtLineRhs 4 fine (df.leftSB + overshoot) bot attach1X attach2Y
mask

local fullShape : if fHalf rightHalf : union rightHalf leftHalf

return : intersection [MaskBelow top] [MaskAbove bot] fullShape

export : define [CurlyLegs fSlab fHalf df bot top] : begin
Expand All @@ -83,7 +85,7 @@ glyph-block Letter-Cyrillic-Zhe : begin
define [upperCurvature] : bezControls 0 0.3 0.5 0.75 8
define [lowerCurvature] : quadControls 0 0.3 8

local rightShape : union
local rightHalf : union
dispiro
g4.down.start (df.rightSB - overshoot) top [widths.rhs.heading fine Downward]
upperCurvature
Expand All @@ -99,7 +101,7 @@ glyph-block Letter-Cyrillic-Zhe : begin
corner (df.width - attach1X) (attach1Y + 0.1)
corner df.middle top

local fullShape : if fHalf rightShape : union rightShape
local leftHalf : union
dispiro
g4.down.start (df.leftSB + overshoot) top [widths.lhs.heading fine Downward]
upperCurvature
Expand All @@ -115,6 +117,8 @@ glyph-block Letter-Cyrillic-Zhe : begin
corner attach1X (attach1Y + 0.1)
corner df.middle top

local fullShape : if fHalf rightHalf : union rightHalf leftHalf

return : intersection [MaskBelow top] [MaskAbove bot] fullShape

export : define [TouchingLegs fSlab fHalf df bot top] : ConnectedLegsImpl 1.00 fSlab fHalf df bot top
Expand All @@ -126,18 +130,20 @@ glyph-block Letter-Cyrillic-Zhe : begin
define midY : mix bot top 0.5
define overshoot : Overshoot fSlab df

local rightShape : union
local rightHalf : union
intersection [MaskBelow midY] [MaskAbove bot]
ExtLineLhs 4 fine (df.rightSB - overshoot) bot (df.width - midX) midY
intersection [MaskBelow top] [MaskAbove midY]
ExtLineRhs 4 fine (df.rightSB - overshoot) top (df.width - midX) midY

local fullShape : if fHalf rightShape : union rightShape
local leftHalf : union
intersection [MaskBelow midY] [MaskAbove bot]
ExtLineRhs 4 fine (df.leftSB + overshoot) bot midX midY
intersection [MaskBelow top] [MaskAbove midY]
ExtLineLhs 4 fine (df.leftSB + overshoot) top midX midY

local fullShape : if fHalf rightHalf : union rightHalf leftHalf

return : union fullShape : HBar.m [if fHalf df.middle midX] (df.width - midX) midY fine

export : define [CursiveLegs fSlab fHalf df bot top] : begin
Expand All @@ -147,20 +153,16 @@ glyph-block Letter-Cyrillic-Zhe : begin
define midY : mix bot top 0.5
define overshoot : Overshoot fSlab df

local rightShape : dispiro
g4.left.start (df.rightSB - overshoot) (top - fine) [widths.rhs.heading fine Leftward]
archv
g4.down.mid (df.width - midX + OX) midY [widths.rhs.heading fine2 Downward]
arcvh
g4.right.end (df.rightSB - overshoot) (bot + fine) [widths.rhs.heading fine Rightward]
local rightHalf : dispiro
straight.left.start (df.rightSB - overshoot) (top - fine) [widths.rhs.heading fine Leftward]
archv
g4.down.mid (df.width - midX + OX) midY [widths.rhs.heading fine2 Downward]
arcvh
straight.right.end (df.rightSB - overshoot) (bot + fine) [widths.rhs.heading fine Rightward]

local fullShape : if fHalf rightShape : union rightShape
dispiro
g4.right.start (df.leftSB + overshoot) (top - fine) [widths.lhs.heading fine Rightward]
archv
g4.down.mid (midX - OX) midY [widths.lhs.heading fine2 Downward]
arcvh
g4.left.end (df.leftSB + overshoot) (bot + fine) [widths.lhs.heading fine Leftward]
local leftHalf : with-transform [FlipAround df.middle (0.5 * top)] rightHalf

local fullShape : if fHalf rightHalf : union rightHalf leftHalf

return : union fullShape : HBar.m [if fHalf df.middle (midX + 0.5 * fine)] (df.width - (midX + 0.5 * fine)) midY fine

Expand Down
86 changes: 38 additions & 48 deletions font-src/glyphs/letter/latin/x.ptl
Original file line number Diff line number Diff line change
Expand Up @@ -49,6 +49,42 @@ glyph-block Letter-Latin-X : begin
include : HalfXStrand stb slab _leftx lefty middlex middley turn pStraight tension
include : HalfXStrand stb slab _rightx righty middlex middley turn pStraight tension

glyph-block-export XCursiveHalfShape
define [XCursiveHalfShape] : with-params [top bottom left right [swEnd : AdviceStroke 2.75] [swMid : AdviceStroke 3] [kThin 0.55] [setMark false]] : glyph-proc
local ada : ArchDepthAOf (ArchDepth * 0.8) (Width / 2)
local adb : ArchDepthBOf (ArchDepth * 0.8) (Width / 2)

define xCenterRight : left + [HSwToV swMid] / 2
define xCenterLeft : left - [HSwToV swMid] / 2
define xTurn : mix (right - [HSwToV swEnd]) xCenterRight 0.5
define hook1Depth : Hook + Stroke * 0.125
define hook1StraightDepth : Math.min
hook1Depth - swEnd * 1.125
Math.max 1 : hook1Depth / 5 - swEnd / 4

define fineMid : swMid * kThin
define rIn : Math.max (0.4 * (right - left) - [HSwToV : 0.7 * Stroke]) [AdviceStroke 16]
define flatHookDepth : 1.4 * (right - left) - swEnd - 1.5 * rIn

define upperHalf : include : dispiro
flat (xCenterRight - [HSwToV fineMid]) ([mix bottom top 0.5] + O) [widths.rhs.heading fineMid Upward]
curl (xCenterRight - [HSwToV fineMid]) (top - ada)
arcvh
ShoulderMidKnotRhs xTurn (top - O) fineMid swEnd (+1) (-1)
archv
flat (right - OX) (top - hook1Depth + hook1StraightDepth) [heading Downward]
curl (right - OX) (top - hook1Depth) [heading Downward]

define lowerHalf : include : dispiro
flat (xCenterRight - [HSwToV : 0.5 * fineMid]) ([mix bottom top 0.5] - O) [widths.center fineMid]
curl (xCenterRight - [HSwToV : 0.5 * fineMid]) (bottom + [Math.min adb (swMid + rIn)])
arcvh 16
DiagonalTailF 1 [DivFrame 1] (xCenterRight - [HSwToV : 0.5 * Stroke] + TanSlope * rIn) bottom rIn 50 flatHookDepth Stroke

if setMark : begin
define lowerHalfLastKnot lowerHalf.rhsKnots.(lowerHalf.rhsKnots.length - 1)
set-base-anchor 'cyrlDescenderAttach' lowerHalfLastKnot.x lowerHalfLastKnot.y

define Shape : namespace
define [XBase fStraight fSlab top bottom turn tension] : composite-proc
XStrand fStraight fSlab SB bottom RightSB top turn 0.4 tension
Expand All @@ -59,56 +95,10 @@ glyph-block Letter-Latin-X : begin
export : define [CurlyBase fSlab top bottom turn tension]
XBase false fSlab top bottom turn tension

define [XCursiveHalfShape top bottom] : glyph-proc
local ada : ArchDepthAOf (ArchDepth * 0.8) (Width / 2)
local adb : ArchDepthBOf (ArchDepth * 0.8) (Width / 2)

define kThin 0.550
define swEnd : AdviceStroke 2.75
define swMid : AdviceStroke 3
define xCenterRight : Middle + [HSwToV swMid] / 2
define xCenterLeft : Middle - [HSwToV swMid] / 2
define xTurn : mix (RightSB - [HSwToV swEnd]) xCenterRight 0.5
define hook1Depth : Hook + Stroke * 0.125
define hook1StraightDepth : Math.min
hook1Depth - swEnd * 1.125
Math.max 1 : hook1Depth / 5 - swEnd / 4

define fineMid : swMid * kThin
define rIn : Math.max (0.2 * (RightSB - SB) - [HSwToV : 0.7 * Stroke]) [AdviceStroke 16]
define flatHookDepth : 0.7 * (RightSB - SB) - swEnd - 1.5 * rIn

define upperHalf : include : dispiro
flat (xCenterRight - [HSwToV fineMid]) ([mix bottom top 0.5] + O) [widths.rhs.heading fineMid Upward]
curl (xCenterRight - [HSwToV fineMid]) (top - ada)
arcvh
ShoulderMidKnotRhs xTurn (top - O) fineMid swEnd (+1) (-1)
archv
flat (RightSB - OX) (top - hook1Depth + hook1StraightDepth) [heading Downward]
curl (RightSB - OX) (top - hook1Depth) [heading Downward]

# define upperHalf : include : dispiro
# curl (RightSB - OX) (top - hook1Depth) [widths.lhs.heading swEnd Upward]
# flat (RightSB - OX) (top - hook1Depth + hook1StraightDepth) [heading Upward]
# arcvh 16
# ShoulderMidKnotLhsRev (xTurn) (top - O) fineMid swEnd (-1) (-1)
# archv 16
# flat (xCenterRight - [HSwToV fineMid]) (top - ada) [widths.lhs fineMid]
# curl (xCenterRight - [HSwToV fineMid]) ([mix bottom top 0.5] + O)

define lowerHalf : include : dispiro
flat (xCenterRight - [HSwToV : 0.5 * fineMid]) ([mix bottom top 0.5] - O) [widths.center fineMid]
curl (xCenterRight - [HSwToV : 0.5 * fineMid]) (bottom + [Math.min adb (swMid + rIn)])
arcvh 16
DiagonalTailF 1 [DivFrame 1] (xCenterRight - [HSwToV : 0.5 * Stroke] + TanSlope * rIn) bottom rIn 50 flatHookDepth Stroke

define lowerHalfLastKnot lowerHalf.rhsKnots.(lowerHalf.rhsKnots.length - 1)
set-base-anchor 'cyrlDescenderAttach' lowerHalfLastKnot.x lowerHalfLastKnot.y

export : define [CursiveBase fSerifs top bottom turn tension] : glyph-proc
include : XCursiveHalfShape top bottom
include : XCursiveHalfShape top bottom Middle RightSB
include : FlipAround Middle [mix bottom top 0.5]
include : XCursiveHalfShape top bottom
include : XCursiveHalfShape top bottom Middle RightSB (setMark -- true)

# Serifs
export : define [FullSerifs top bot] : let [sf : SerifFrame.fromDf [DivFrame 1] top bot]
Expand Down
26 changes: 25 additions & 1 deletion font-src/glyphs/symbol/geometric/masked.ptl
Original file line number Diff line number Diff line change
Expand Up @@ -139,7 +139,7 @@ glyph-block Symbol-Geometric-Masked : for-width-kinds WideWidth1
list 0x2B17 0 0 1 1
list 0x2B18 1 0 1 0
list 0x2B19 0 1 0 1
foreach [{u LT LB RT RB LTh LBh RTh RBh} : items-of diamondParts] : begin
foreach [{u LT LB RT RB} : items-of diamondParts] : begin
create-glyph [MangleName : NameUni u] [MangleUnicode u] : glyph-proc
set-width Geom.Width
include : union
Expand Down Expand Up @@ -295,3 +295,27 @@ glyph-block Symbol-Geometric-Masked : for-width-kinds WideWidth1
include : intersection
refer-glyph : MangleName 'blackCircleO'
refer-glyph : MangleName 'whiteEqualTriangleDown'

create-glyph [MangleName 'uni238B'] [MangleUnicode 0x238B] : glyph-proc
set-width Geom.Width
include : difference
refer-glyph : MangleName 'whiteCircle'
intersection [MaskAbove Geom.MidY] [MaskLeft Geom.MidX]
include : intersection
MaskBelow (Geom.MidY + Geom.Size)
MaskRight (Geom.MidX - Geom.Size)
dispiro
flat Geom.MidX Geom.MidY [widths.center GeometryStroke]
curl (Geom.MidX - Geom.Size) (Geom.MidY + Geom.Size)
include : spiro-outline
corner (Geom.MidX - Geom.Size) (Geom.MidY + Geom.Size)
corner (Geom.MidX - 0.375 * Geom.Size) (Geom.MidY + Geom.Size)
corner (Geom.MidX - Geom.Size) (Geom.MidY + 0.375 * Geom.Size)

create-glyph [MangleName 'uni2335'] [MangleUnicode 0x2335] : glyph-proc
set-width Geom.Width
include : intersection
refer-glyph : MangleName 'blackDiamond'
union
ExtLineLhs 4 OperatorStroke (Geom.MidX - Geom.Size) Geom.MidY Geom.MidX (Geom.MidY - Geom.Size)
ExtLineLhs 4 OperatorStroke Geom.MidX (Geom.MidY - Geom.Size) (Geom.MidX + Geom.Size) Geom.MidY
11 changes: 8 additions & 3 deletions font-src/glyphs/symbol/math/apl.ptl
Original file line number Diff line number Diff line change
Expand Up @@ -70,9 +70,9 @@ glyph-block Symbol-Math-APL : begin
create-glyph 'apl/iBar' 0x2336 : glyph-proc
local l [mix 0 SB (1 / 3)]
local r [mix Width RightSB (1 / 3)]
include : HBar.t l r OperTop aplBoxSW
include : HBar.b l r OperBot aplBoxSW
include : VBar.m Middle OperTop OperBot aplBoxSW
include : HBar.t l r OperTop OperatorStroke
include : HBar.b l r OperBot OperatorStroke
include : VBar.m Middle OperTop OperBot OperatorStroke

create-glyph 'apl/squish' 0x2337 : glyph-proc
local l : mix SB RightSB (1 / 8)
Expand Down Expand Up @@ -264,3 +264,8 @@ glyph-block Symbol-Math-APL : begin
LinkAplFormForNwidWwid 'uni238A'
LinkAplFormForNwidWwid 'uni25F6'
LinkAplFormForNwidWwid 'uni2687'

# Uiua symbols
LinkAplFormForNwidWwid 'uni238B'
LinkAplFormForNwidWwid 'uni2335'
LinkAplFormForNwidWwid 'telephoneRecorder'
12 changes: 12 additions & 0 deletions font-src/glyphs/symbol/math/arith.ptl
Original file line number Diff line number Diff line change
Expand Up @@ -67,6 +67,18 @@ glyph-block Symbol-Math-Arith : begin
refer-glyph 'circumflexAbove'
clear-anchors

create-glyph 'doublePlus' 0x29FA : glyph-proc
include : HBar.m SB RightSB SymbolMid OperatorStroke
include : VBar.m ([mix SB RightSB (1/3)] - (1/6) * [HSwToV OperatorStroke]) PlusTop PlusBot OperatorStroke
include : VBar.m ([mix SB RightSB (2/3)] + (1/6) * [HSwToV OperatorStroke]) PlusTop PlusBot OperatorStroke

create-glyph 'triplePlus' 0x29FB : glyph-proc
local fine : AdviceStroke 4
include : HBar.m SB RightSB SymbolMid OperatorStroke
include : VBar.m ([mix SB RightSB (1/4)] - (1/8) * [HSwToV OperatorStroke]) PlusTop PlusBot fine
include : VBar.m [mix SB RightSB (1/2)] PlusTop PlusBot fine
include : VBar.m ([mix SB RightSB (3/4)] + (1/8) * [HSwToV OperatorStroke]) PlusTop PlusBot fine

do "Multiply"
define Size : 0.5 * (RightSB - SB) + 0.25 * SB
define swBowtie : AdviceStroke 4.25
Expand Down
1 change: 1 addition & 0 deletions font-src/glyphs/symbol/pictograph.ptl
Original file line number Diff line number Diff line change
Expand Up @@ -20,3 +20,4 @@ export : define [apply] : begin
run-glyph-module "./pictograph/powerline-and-gui.mjs"
run-glyph-module "./pictograph/stick-figure.mjs"
run-glyph-module "./pictograph/suit.mjs"
run-glyph-module "./pictograph/telephone-recorder.mjs"
Loading

0 comments on commit 0a15fe9

Please sign in to comment.