Skip to content

Commit

Permalink
Make the central part of Cyrillic Twe to follow lowercase Tau variants (
Browse files Browse the repository at this point in the history
  • Loading branch information
be5invis committed Dec 17, 2023
1 parent 1aa091e commit 68a5add
Show file tree
Hide file tree
Showing 4 changed files with 38 additions and 20 deletions.
1 change: 1 addition & 0 deletions changes/28.0.1.md
Original file line number Diff line number Diff line change
@@ -1,2 +1,3 @@
* Add italic form of CYRILLIC SMALL LETTER TE WITH MIDDLE HOOK (`U+A68B`) (#2119).
* Add missing feature tag to chaining plus ligation (#2118).
* Make the central part of Cyrillic Twe to follow lowercase Tau variants (#2122).
18 changes: 17 additions & 1 deletion packages/font-glyphs/src/letter/latin/lower-il.ptl
Original file line number Diff line number Diff line change
Expand Up @@ -130,10 +130,12 @@ glyph-block Letter-Latin-Lower-I : begin
set-base-anchor 'trailing' (xMiddle + [HSwToV : 0.75 * df.mvs]) 0
set-base-anchor 'palatalHookMask' currentGlyph.baseAnchors.trailing.x (HalfStroke + O)

local depth : [DiagTail.StdDepth df df.mvs] * (df.rightSB - xMiddle) / (df.rightSB - [XMiddle.FlatTailed df])

include : dispiro
widths.center df.mvs
flat xMiddle top [heading Downward]
DiagTail.R xMiddle 0 [DiagTail.StdDepth df df.mvs] df.mvs
DiagTail.R xMiddle 0 depth df.mvs

export : define [PhoneticLeft df top xMiddle] : glyph-proc
include : dispiro
Expand Down Expand Up @@ -282,6 +284,18 @@ glyph-block Letter-Latin-Lower-I : begin

currentGlyph.deleteBaseAnchor 'trailing'

create-glyph "cyrl/Twe/middle.\(suffix)" : glyph-proc
local df : include : DivFrame div
include : Body df CAP [XMiddle.Center df]
currentGlyph.deleteBaseAnchor 'trailing'
set-mark-anchor 'cvDecompose' (df.width / 2) CAP

create-glyph "cyrl/twe/middle.\(suffix)" : glyph-proc
local df : include : DivFrame div
include : Body df XH [XMiddle.Center df]
currentGlyph.deleteBaseAnchor 'trailing'
set-mark-anchor 'cvDecompose' (df.width / 2) XH

do "i glyphs"
select-variant 'dotlessi' 0x131
link-reduced-variant 'dotlessi/sansSerif' 'dotlessi' MathSansSerif
Expand Down Expand Up @@ -397,6 +411,8 @@ glyph-block Letter-Latin-Lower-I : begin

do "Tau"
select-variant 'grek/tau' 0x3C4
select-variant 'cyrl/Twe/middle' (follow -- 'grek/tau/tailed')
select-variant 'cyrl/twe/middle' (follow -- 'grek/tau/tailed')

do "Blackboard"
glyph-block-import Letter-Blackboard : BBS BBD BBBarCenter
Expand Down
33 changes: 14 additions & 19 deletions packages/font-glyphs/src/letter/latin/upper-t.ptl
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ glyph-block Letter-Latin-Upper-T : begin
define [TLeftX df] : df.leftSB + 0.75 * OX
define [TRightX df] : df.rightSB - 0.75 * OX
define [TShape df top doTopSerifs doBottomSerifs] : glyph-proc
include : VBar.m df.middle 0 top
include : tagged 'strokeV' : VBar.m df.middle 0 top
local l : TLeftX df
local r : TRightX df
include : tagged 'strokeLT' : HBar.t l df.middle top
Expand Down Expand Up @@ -53,18 +53,9 @@ glyph-block Letter-Latin-Upper-T : begin
local sf2 : [SerifFrame.fromDf df (top / 2) 0].slice 1 2
if SLAB : include sf2.rt.full

define [TweShape df top doTopSerifs] : glyph-proc
local hd : FlatHookDepth df
include : difference
TShape df top doTopSerifs false
MaskBelow hd.y

include : dispiro
widths.center
straight.down.start df.middle hd.y [heading Downward]
arcvh.superness DesignParameters.tightHookSuperness
flat (df.middle + hd.x - [HSwToV HalfStroke]) HalfStroke
curl (df.middle + [Math.max (hd.x - [HSwToV HalfStroke] + 1) (LongJut * 1.05)] + HalfStroke * TanSlope) HalfStroke
define [TweUpperShape df top doTopSerifs] : glyph-proc
include : TShape df top doTopSerifs false
eject-contour 'strokeV'

define [CyrlTallTeShape df top doTopSerifs doBottomSerifs] : glyph-proc
local xRight : df.width - 1.5 * df.leftSB
Expand Down Expand Up @@ -120,15 +111,17 @@ glyph-block Letter-Latin-Upper-T : begin
set-base-anchor 'bottomRight' (df.middle + [HSwToV HalfStroke]) 0
include : TShape df XH doST doSB

create-glyph "cyrl/Twe.\(suffix)" : glyph-proc
create-glyph "cyrl/Twe/upper.\(suffix)" : glyph-proc
set-width df.width
include : df.markSet.capital
include : TweShape df CAP doST doSB
include : TweUpperShape df CAP doST doSB
set-base-anchor 'cvDecompose' (df.width / 2) CAP

create-glyph "cyrl/twe.\(suffix)" : glyph-proc
create-glyph "cyrl/twe/upper.\(suffix)" : glyph-proc
set-width df.width
include : df.markSet.e
include : TweShape df XH doST doSB
include : TweUpperShape df XH doST doSB
set-base-anchor 'cvDecompose' (df.width / 2) XH

create-glyph "currency/tengeSign.\(suffix)" : glyph-proc
set-width df.width
Expand Down Expand Up @@ -187,8 +180,10 @@ glyph-block Letter-Latin-Upper-T : begin

select-variant 'cyrl/TjeKomi' 0x50E (follow -- 'T/rtailBase')
select-variant 'cyrl/tjeKomi.upright' null (follow -- 'T/rtailBase')
select-variant 'cyrl/Twe' 0xA68C (follow -- 'T/rtailBase')
select-variant 'cyrl/twe' 0xA68D (follow -- 'T/rtailBase')
select-variant 'cyrl/Twe/upper' (follow -- 'T/rtailBase')
select-variant 'cyrl/twe/upper' (follow -- 'T/rtailBase')
derive-composites 'cyrl/Twe' 0xA68C 'cyrl/Twe/upper' 'cyrl/Twe/middle'
derive-composites 'cyrl/twe' 0xA68D 'cyrl/twe/upper' 'cyrl/twe/middle'

select-variant 'currency/tengeSign' 0x20B8 (follow -- 'T')

Expand Down
6 changes: 6 additions & 0 deletions params/variants.toml
Original file line number Diff line number Diff line change
Expand Up @@ -5033,31 +5033,37 @@ tagKind = "letter"
rank = 1
description = "Greek lower Tau (`τ`) with a tailless shape"
selector."grek/tau" = "tau/tailless"
selector."grek/tau/tailed" = "tau/flatTailed"

[prime.lower-tau.variants.short-tailed]
rank = 2
description = "Greek lower Tau (`τ`) with a very short tail"
selector."grek/tau" = "tau/shortTailed"
selector."grek/tau/tailed" = "tau/flatTailed"

[prime.lower-tau.variants.tailed]
rank = 3
description = "Greek lower Tau (`τ`) with curly tail"
selector."grek/tau" = "tau/tailed"
selector."grek/tau/tailed" = "tau/tailed"

[prime.lower-tau.variants.flat-tailed]
rank = 4
description = "Greek lower Tau (`τ`) with a flat tail"
selector."grek/tau" = "tau/flatTailed"
selector."grek/tau/tailed" = "tau/flatTailed"

[prime.lower-tau.variants.diagonal-tailed]
rank = 5
description = "Greek lower Tau (`τ`) with a diagonal tail"
selector."grek/tau" = "tau/diagonalTailed"
selector."grek/tau/tailed" = "tau/diagonalTailed"

[prime.lower-tau.variants.semi-tailed]
rank = 6
description = "Greek lower Tau (`τ`) with a slightly curly tail"
selector."grek/tau" = "tau/semiTailed"
selector."grek/tau/tailed" = "tau/semiTailed"



Expand Down

0 comments on commit 68a5add

Please sign in to comment.