Skip to content

Commit

Permalink
Add motion-serifed variants of T (#815).
Browse files Browse the repository at this point in the history
  • Loading branch information
be5invis committed Jan 23, 2021
1 parent 1b3157b commit f6b53f8
Show file tree
Hide file tree
Showing 4 changed files with 139 additions and 100 deletions.
6 changes: 3 additions & 3 deletions changes/5.0.0-beta.1.md
Original file line number Diff line number Diff line change
@@ -1,14 +1,14 @@
* **Breaking** Iosevka Aile and Iosevka Etoile now support `cv##` and `ss##` features.
* **Breaking** Iosevka Sparkle is removed from prebuilt packages.
* Add IBM Plex Mono style set (#796).
* Spilt out variant selector for `A`, `V`, `W`, `Z` (#806).
* **Breaking** Spilt out variant selector for `A`, `V`, `W`, `Z` (#806).
* Add diagonal-tailed variants of `f`, `i`, `j`, `k`, `l`, `q`, `t` (#795).
* Add motion-serifed variants of `A`, `B`, `D`, `E`, `F`, `P`, `R`, `V`, `W`, `Z`, `v`, `w`, `y`, `z` (#806).
* Add motion-serifed variants of `A`, `B`, `D`, `E`, `F`, `P`, `R`, `T`, `V`, `W`, `Z`, `v`, `w`, `y`, `z` (#806, #815).
* Add open-contour variants of `P` and `R` (#810).
* Add symmetric-legged variants of `K` and `k` (#807).
* Add standing variants of `R` (#810).
* Add toothed and motion-serifed `U` (#811).
* Add motion-serifed toothless `u` (#813).
* Add IBM Plex Mono style set (#796).
* Fix broken geometry of `K` and `%` under ultra-wide (#800).
* Add straight-bar AE (`Æ`), follows variant selector for `A` (#800).
* Refine the shape of Slab `S` and `s` to add serifs at both terminals (#800).
Expand Down
2 changes: 1 addition & 1 deletion font-src/glyphs/letter/latin/lower-m.ptl
Original file line number Diff line number Diff line change
Expand Up @@ -330,7 +330,7 @@ glyph-block Letter-Latin-Lower-M : begin
select-variant 'cyrl/te.italic' (shapeFrom -- 'm')
alias 'cyrl/te.BGR' null 'cyrl/te.italic'

create-glyph 'cyrl/tedescender.italic' : composite-proc [MarkSet.e]
create-glyph 'cyrl/teDescender.italic' : composite-proc [MarkSet.e]
refer-glyph 'm.normal'
CyrDescender (Width * para.diversityM - SB)

Expand Down
78 changes: 50 additions & 28 deletions font-src/glyphs/letter/latin/upper-t.ptl
Original file line number Diff line number Diff line change
Expand Up @@ -10,60 +10,82 @@ glyph-block Letter-Latin-Upper-T : begin
glyph-block-import CommonShapes
glyph-block-import Common-Derivatives
glyph-block-import Letter-Blackboard : BBS BBD
glyph-block-import Letter-Latin-Lower-M

define TLeftX : SB + OX * 1.5
define TRightX : RightSB - OX * 1.5
define [TShape top] : glyph-proc
define [TShape top doTopSerifs doBottomSerifs] : glyph-proc
include : VBar Middle 0 top
local l TLeftX
local r TRightX
include : tagged 'strokeLT' : HBarTop l Middle top
include : tagged 'strokeRT' : HBarTop Middle r top
if SLAB : begin

if doTopSerifs : begin
include : tagged 'serifRT' : DownwardRightSerif r top VJut
include : tagged 'serifLT' : DownwardLeftSerif l top VJut
if doBottomSerifs : begin
include : tagged 'serifMB' : RightwardBottomSerif Middle 0 MidJutCenter
include : tagged 'serifMB' : LeftwardBottomSerif Middle 0 MidJutCenter

create-glyph 'T' 'T' : glyph-proc
include : MarkSet.capital
set-base-anchor 'bottomright' (Middle + HalfStroke * HVContrast) 0
include : TShape CAP
define TConfig : object
standard { SLAB SLAB }
motionSerifed { true false }

create-derived 'cyrl/Tedescender' 0x4AC : glyph-proc
include : CyrDescender (Middle + HalfStroke * HVContrast) (sideJut -- MidJutCenter - HalfStroke * HVContrast)
foreach { suffix { doST doSB } } [Object.entries TConfig] : do
create-glyph "T.\(suffix)" : glyph-proc
include : MarkSet.capital
set-base-anchor 'bottomright' (Middle + HalfStroke * HVContrast) 0
include : TShape CAP doST doSB

create-glyph "cyrl/TeDescender.\(suffix)" : glyph-proc
include : MarkSet.if
set-base-anchor 'bottomright' (Middle + HalfStroke * HVContrast) 0
include : TShape CAP doST doSB
include : CyrDescender (Middle + HalfStroke * HVContrast) (sideJut -- MidJutCenter - HalfStroke * HVContrast)

create-derived 'Tbar' 0x166
HOverlayBar [mix Middle SB 0.8] [mix Middle RightSB 0.8] [mix 0 CAP 0.45]
create-glyph "TBar.\(suffix)" : glyph-proc
include [refer-glyph "T.\(suffix)"] AS_BASE ALSO_METRICS
include : HOverlayBar [mix Middle SB 0.8] [mix Middle RightSB 0.8] [mix 0 CAP 0.45]

create-derived 'Thookleft' 0x1AC : glyph-proc
create-glyph "Thookleft.\(suffix)" : glyph-proc
include [refer-glyph "T.\(suffix)"] AS_BASE ALSO_METRICS
eject-contour 'serifLT'
eject-contour 'strokeLT'
include : LeftHook (SB + LeftHook.extension) CAP Middle

create-glyph 'mathbb/T' 0x1D54B : glyph-proc
include : MarkSet.capital
include : HBarTop TLeftX TRightX CAP BBS
include : VBar (Middle - BBD / 2) 0 CAP BBS
include : VBar (Middle + BBD / 2) 0 CAP BBS
include : HBarBottom (Middle - BBD / 2) (Middle + BBD / 2) 0 BBS
create-glyph "smcpT.\(suffix)" : glyph-proc
include : MarkSet.capital
set-base-anchor 'bottomright' (Middle + HalfStroke * HVContrast) 0
include : TShape XH doST doSB

create-glyph "cyrl/teDescender.upright.\(suffix)" : glyph-proc
include : MarkSet.p
include : TShape XH doST doSB
include : CyrDescender (Middle + HalfStroke * HVContrast) (sideJut -- MidJutCenter - HalfStroke * HVContrast)

select-variant 'T' 'T'
select-variant 'smcpT' 0x1D1B (follow -- 'T')
select-variant "TBar" 0x166 (follow -- 'T')
select-variant "Thookleft" 0x1AC (follow -- 'T')
select-variant "cyrl/TeDescender" 0x4AC (follow -- 'T')


alias 'grek/Tau' 0x3A4 'T'
alias 'cyrl/Te' 0x422 'T'
turned 'turnT' 0xA7B1 'T' Middle (CAP / 2)

create-glyph 'cyrl/te.upright' : glyph-proc
include : MarkSet.e
include : TShape XH

create-derived 'cyrl/tedescender.upright' : glyph-proc
include : MarkSet.p
include : CyrDescender (Middle + HalfStroke * HVContrast) (sideJut -- MidJutCenter - HalfStroke * HVContrast)

orthographic-italic 'cyrl/tedescender' 0x4AD
alias 'cyrl/te.upright' null 'smcpT'
select-variant 'cyrl/teDescender.upright' (follow -- 'T')
orthographic-italic 'cyrl/teDescender' 0x4AD

create-glyph 'grek/tau' 0x3C4 : glyph-proc
include : MarkSet.e
include : HBar SB RightSB (XH - HalfStroke)
include : VBar Middle 0 XH
include : TShape XH false false

create-glyph 'mathbb/T' 0x1D54B : glyph-proc
include : MarkSet.capital
include : HBarTop TLeftX TRightX CAP BBS
include : VBar (Middle - BBD / 2) 0 CAP BBS
include : VBar (Middle + BBD / 2) 0 CAP BBS
include : HBarBottom (Middle - BBD / 2) (Middle + BBD / 2) 0 BBS

0 comments on commit f6b53f8

Please sign in to comment.