Add Pi and Tau variant selectors (#1940)

* Add Pi and Tau variant selectors

closes #1924

* fix numeric order
This commit is contained in:
John McWilliams 2023-08-18 14:08:58 -04:00 committed by GitHub
parent 3309d24ab9
commit 2f5a31cf46
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
5 changed files with 94 additions and 10 deletions

View file

@ -57,9 +57,21 @@ glyph-block Letter-Greek-Pi : begin
derive-composites 'cyrl/PeDescender' 0x524 'cyrl/Pe' [CyrDescender.rSideJut RightSB 0]
derive-composites 'cyrl/peDescender.upright' null 'cyrl/pe.upright' [CyrDescender.rSideJut RightSB 0]
create-glyph 'grek/pi' 0x3C0 : glyph-proc
include : MarkSet.e
include : PiShape [DivFrame 1] XH 0 (doSerif -- false) (shrinkRate -- (1/6 - [HSwToV : 0.25 * Stroke] / (RightSB - SB))) (tailed -- true)
define SmallPiShrink : 1/6 - [HSwToV : 0.25 * Stroke] / (RightSB - SB)
define SmallPiConfig : object
smallCap { {0 SLAB } false }
tailless { {SmallPiShrink false } false }
tailed { {SmallPiShrink false } true }
foreach { suffix { { shrink slab } tail } } [pairs-of SmallPiConfig] : do
create-glyph "grek/pi.\(suffix)" : glyph-proc
define df : DivFrame 1
set-width df.width
include : df.markSet.e
include : PiShape df XH 0 (shrinkRate -- shrink) (doSerif -- slab) (tailed -- tail)
select-variant 'grek/pi' 0x3C0
create-glyph 'mathbb/grek/pi' 0x213C : glyph-proc
include : MarkSet.e

View file

@ -188,7 +188,7 @@ glyph-block Letter-Latin-Lower-T : begin
include : Body df sym top bot
include : HBar.b xLeft RightSB 0
define SmallTConfig :SuffixCfg.weave
define SmallTConfig : SuffixCfg.weave
object # body
bentHook { [DivFrame 1] BentHook }
diagonalTailed { dfNarrowT DiagTail }
@ -198,7 +198,7 @@ glyph-block Letter-Latin-Lower-T : begin
"" SYM-BALANCED
"asymmetric" SYM-LEFT
object # height
"" Ascender
"" Ascender
shortNeck yShortNeck1
shortNeck2 yShortNeck2
@ -301,7 +301,21 @@ glyph-block Letter-Latin-Lower-T : begin
select-variant "tHookTopRTail" 0x1DF09
# U+01BE is catually "t" and "s" combined together
define SmallTauConfig : object
tailed { [DivFrame 1] BentHook }
flatTailed { dfNarrowT Flat }
diagonalTailed { dfNarrowT DiagTail }
tailless { dfNarrowT Hookless }
foreach { suffix { df Style } } [pairs-of SmallTauConfig] : do
create-glyph "grek/tau.\(suffix)" : glyph-proc
set-width df.width
include : df.markSet.e
include : Style.Body df SYM-BALANCED XH 0
select-variant 'grek/tau' 0x3C4
# U+01BE is actually "t" and "s" combined together
define SLAB-NONE 0
define SLAB-CLASSICAL 1
define SLAB-INWARD 2

View file

@ -53,7 +53,7 @@ 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 [TauShape df top doTopSerifs] : glyph-proc
define [TweShape df top doTopSerifs] : glyph-proc
local hd : FlatHookDepth df
include : difference
TShape df top doTopSerifs false
@ -122,12 +122,12 @@ glyph-block Letter-Latin-Upper-T : begin
create-glyph "cyrl/Twe.\(suffix)" : glyph-proc
set-width df.width
include : df.markSet.capital
include : TauShape df CAP doST doSB
include : TweShape df CAP doST doSB
create-glyph "cyrl/twe.\(suffix)" : glyph-proc
set-width df.width
include : df.markSet.e
include : TauShape df XH doST doSB
include : TweShape df XH doST doSB
create-glyph "currency/tengeSign.\(suffix)" : glyph-proc
set-width df.width
@ -179,7 +179,6 @@ glyph-block Letter-Latin-Upper-T : begin
select-variant 'turnT' 0xA7B1 (follow -- 'T')
alias 'grek/Tau' 0x3A4 'T'
alias 'grek/tau' 0x3C4 'cyrl/twe.serifless'
alias-reduced-variant 'grek/Tau/sansSerif' 'grek/Tau' 'T/sansSerif' MathSansSerif
alias 'cyrl/Te' 0x422 'T'