Add serifed and top-serifed variants for S
and s
(#822).
This commit is contained in:
parent
4aff8d3ed1
commit
ae4d19f1c3
7 changed files with 190 additions and 123 deletions
|
@ -1103,15 +1103,15 @@ glyph-block Autobuild-Pnonetic-Ligatures : if [not recursive] : begin
|
|||
createPhoneticLigatures stdShrink stdShrink 1 1 : list
|
||||
list 0x02A3 'd' 'z' 'b'
|
||||
list 0x02A4 'd' 'ezh' 'if'
|
||||
list 0x02A5 'd' 'zcurlytail' 'if'
|
||||
list 0x02A5 'd' 'zCurlyTail' 'if'
|
||||
list 0x02A6 't.phoneticLeft' 's.phoneticRight' 'b'
|
||||
list 0x02A7 't.phoneticLeft.extended' 'esh' 'if'
|
||||
list 0x02A8 't.phoneticLeft' 'ccurlytail' 'b'
|
||||
list 0x02A8 't.phoneticLeft' 'cCurlyTail' 'b'
|
||||
list 0x02A9 'f.phoneticLeft' 'eng' 'if'
|
||||
list 0x02AA 'l.phoneticLeft' 's.phoneticRight' 'b'
|
||||
list 0x02AB 'l.phoneticLeft' 'z' 'b'
|
||||
list 0xAB66 'd' 'zrtailBR' 'if'
|
||||
list 0xAB67 't.phoneticLeft' 'srtail' 'if'
|
||||
list 0xAB67 't.phoneticLeft' 'sRTail' 'if'
|
||||
|
||||
glyph-block Autobuild-Grouped-Digits : if [not recursive] : begin
|
||||
glyph-block-import CommonShapes
|
||||
|
|
|
@ -255,7 +255,7 @@ glyph-block Autobuild-Transformed : begin
|
|||
list 0x1D78 'smcpH'
|
||||
list 0x1D9B 'turnscripta'
|
||||
list 0x1D9C 'c'
|
||||
list 0x1D9D 'ccurlytail'
|
||||
list 0x1D9D 'cCurlyTail'
|
||||
list 0x1D9E 'eth'
|
||||
list 0x1D9F 'revLatinEpsilon'
|
||||
list 0x1DA0 'f'
|
||||
|
@ -276,7 +276,7 @@ glyph-block Autobuild-Transformed : begin
|
|||
list 0x1DB0 'smcpN'
|
||||
list 0x1DB1 'obar'
|
||||
list 0x1DB2 'latinphi'
|
||||
list 0x1DB3 'srtail'
|
||||
list 0x1DB3 'sRTail'
|
||||
list 0x1DB4 'esh'
|
||||
list 0x1DB5 'tltail'
|
||||
list 0x1DB6 'ulongBarOver'
|
||||
|
@ -285,7 +285,7 @@ glyph-block Autobuild-Transformed : begin
|
|||
list 0x1DB9 'latinupsilon2'
|
||||
list 0x1DBA 'turnv'
|
||||
list 0x1DBC 'zrtailBR'
|
||||
list 0x1DBD 'zcurlytail'
|
||||
list 0x1DBD 'zCurlyTail'
|
||||
list 0x1DBE 'ezh'
|
||||
list 0x1DBF 'grek/theta'
|
||||
list 0x1DBB 'z'
|
||||
|
|
|
@ -157,7 +157,7 @@ glyph-block Letter-Latin-C : begin
|
|||
include [refer-glyph 'c'] AS_BASE
|
||||
include : HOverlayBar (SB * 0.3) [mix (SB + Stroke) (RightSB - Stroke) 0.55] (XH * OverlayPos)
|
||||
|
||||
create-glyph 'ccurlytail' 0x255 : glyph-proc
|
||||
create-glyph 'cCurlyTail' 0x255 : glyph-proc
|
||||
include : MarkSet.e
|
||||
local stroke : AdviceStroke2 2 3 XH
|
||||
local fine : AdviceStroke2 3 3 XH
|
||||
|
|
|
@ -149,20 +149,78 @@ glyph-block Letter-Latin-S : begin
|
|||
hookend O (sw -- stroke) (swItalicAdj -- Stroke)
|
||||
g4 (RightSB + OX - SOBot) SHook
|
||||
|
||||
create-glyph 'S' 'S' : glyph-proc
|
||||
include : MarkSet.capital
|
||||
if SLAB : include : ArcStartSerif RightSB CAP Stroke Hook
|
||||
if SLAB : include : ArcEndSerif SB 0 Stroke Hook
|
||||
include : [if SLAB SlabSStroke SStroke]
|
||||
define SConfig : object
|
||||
'serifless' { SStroke SmallSStroke 0 0 }
|
||||
'serifed' { SlabSStroke SlabSmallSStroke 1 1 }
|
||||
'topSerifed' { HalfSlabSStroke HalfSlabSmallSStroke 1 0 }
|
||||
|
||||
foreach { suffix { upperShape lowerShape doTS doBS } } [Object.entries SConfig] : do
|
||||
create-glyph "S.\(suffix)" : glyph-proc
|
||||
include : MarkSet.capital
|
||||
include : upperShape
|
||||
if doTS : include : ArcStartSerif RightSB CAP Stroke Hook
|
||||
if doBS : include : ArcEndSerif SB 0 Stroke Hook
|
||||
|
||||
create-glyph "s.\(suffix)" : glyph-proc
|
||||
include : MarkSet.e
|
||||
include : lowerShape
|
||||
if doTS : include : ArcStartSerif RightSB XH [AdviceStroke2 2 3 XH] Hook
|
||||
if doBS : include : ArcEndSerif SB 0 [AdviceStroke2 2 3 XH] Hook
|
||||
|
||||
if [not doBS] : create-glyph "SSwash.\(suffix)" : glyph-proc
|
||||
include : MarkSet.if
|
||||
|
||||
if doTS : include : ArcStartSerif RightSB CAP Stroke Hook
|
||||
local stroke : include : upperShape
|
||||
local start : currentGlyph.gizmo.unapply stroke.lhsKnots.(stroke.lhsKnots.length - 1)
|
||||
|
||||
local sw : AdviceStroke2 2 3 CAP
|
||||
include : dispiro
|
||||
widths.lhs [AdviceStroke 4.5]
|
||||
g4 start.x start.y
|
||||
alsoThru 0.15 0.6 important
|
||||
flat (RightSB - 1) Descender [widths sw 0]
|
||||
curl RightSB Descender
|
||||
|
||||
if [not doBS] : create-glyph "sSwash.\(suffix)" : glyph-proc
|
||||
include : MarkSet.p
|
||||
|
||||
if doTS : include : ArcStartSerif RightSB XH [AdviceStroke2 2 3 XH] Hook
|
||||
local stroke : include : lowerShape
|
||||
local start : currentGlyph.gizmo.unapply stroke.lhsKnots.(stroke.lhsKnots.length - 1)
|
||||
|
||||
local sw : AdviceStroke2 2 3 XH
|
||||
include : dispiro
|
||||
widths.lhs [AdviceStroke 4.5]
|
||||
g4 start.x start.y
|
||||
alsoThru 0.15 0.6 important
|
||||
flat (RightSB - 1) Descender [widths sw 0]
|
||||
curl RightSB Descender
|
||||
|
||||
|
||||
if [not doBS] : create-glyph "sRTail.\(suffix)" : glyph-proc
|
||||
include : MarkSet.p
|
||||
|
||||
if doTS : include : ArcStartSerif RightSB XH [AdviceStroke2 2 3 XH] Hook
|
||||
local stroke : include : lowerShape
|
||||
local start : currentGlyph.gizmo.unapply stroke.lhsKnots.(stroke.lhsKnots.length - 1)
|
||||
|
||||
include : new-glyph : glyph-proc
|
||||
local sw : AdviceStroke2 2 3 XH
|
||||
include : refer-glyph "rtailBR"
|
||||
include : Upright
|
||||
include : Translate (start.x + sw * HVContrast) 0
|
||||
include : Italify
|
||||
|
||||
include : VBarLeft start.x 0 start.y
|
||||
|
||||
select-variant 'S' 'S'
|
||||
select-variant 's' 's'
|
||||
select-variant 'SSwash' 0x2C7E
|
||||
select-variant 'sSwash' 0x23F
|
||||
select-variant 'sRTail' 0x282 (follow -- 'sSwash')
|
||||
|
||||
alias 'cyrl/Dze' 0x405 'S'
|
||||
|
||||
create-glyph 's' 's' : glyph-proc
|
||||
include : MarkSet.e
|
||||
if SLAB : include : ArcStartSerif RightSB XH [AdviceStroke2 2 3 XH] Hook
|
||||
if SLAB : include : ArcEndSerif SB 0 [AdviceStroke2 2 3 XH] Hook
|
||||
include : [if SLAB SlabSmallSStroke SmallSStroke]
|
||||
|
||||
alias 'cyrl/dze' 0x455 's'
|
||||
|
||||
create-glyph 's.phoneticRight' : glyph-proc
|
||||
|
@ -239,50 +297,6 @@ glyph-block Letter-Latin-S : begin
|
|||
local start : currentGlyph.gizmo.unapply stroke.rhsKnots.(0)
|
||||
include : VBarRight start.x (-Accent) start.y
|
||||
|
||||
create-glyph 'srtail' 0x282 : glyph-proc
|
||||
include : MarkSet.p
|
||||
|
||||
if SLAB : include : ArcStartSerif RightSB XH [AdviceStroke2 2 3 XH] Hook
|
||||
local stroke : include : [if SLAB HalfSlabSmallSStroke SmallSStroke]
|
||||
local start : currentGlyph.gizmo.unapply stroke.lhsKnots.(stroke.lhsKnots.length - 1)
|
||||
|
||||
include : new-glyph : glyph-proc
|
||||
local sw : AdviceStroke2 2 3 XH
|
||||
include : refer-glyph "rtailBR"
|
||||
include : Upright
|
||||
include : Translate (start.x + sw * HVContrast) 0
|
||||
include : Italify
|
||||
|
||||
include : VBarLeft start.x 0 start.y
|
||||
create-glyph 'Sswash' 0x2C7E : glyph-proc
|
||||
include : MarkSet.if
|
||||
|
||||
if SLAB : include : ArcStartSerif RightSB CAP Stroke Hook
|
||||
local stroke : include : [if SLAB HalfSlabSStroke SStroke]
|
||||
local start : currentGlyph.gizmo.unapply stroke.lhsKnots.(stroke.lhsKnots.length - 1)
|
||||
|
||||
local sw : AdviceStroke2 2 3 CAP
|
||||
include : dispiro
|
||||
widths.lhs [AdviceStroke 4.5]
|
||||
g4 start.x start.y
|
||||
alsoThru 0.15 0.6 important
|
||||
flat (RightSB - 1) Descender [widths sw 0]
|
||||
curl RightSB Descender
|
||||
|
||||
create-glyph 'sswash' 0x23F : glyph-proc
|
||||
include : MarkSet.p
|
||||
|
||||
if SLAB : include : ArcStartSerif RightSB XH [AdviceStroke2 2 3 XH] Hook
|
||||
local stroke : include : [if SLAB HalfSlabSmallSStroke SmallSStroke]
|
||||
local start : currentGlyph.gizmo.unapply stroke.lhsKnots.(stroke.lhsKnots.length - 1)
|
||||
|
||||
local sw : AdviceStroke2 2 3 XH
|
||||
include : dispiro
|
||||
widths.lhs [AdviceStroke 4.5]
|
||||
g4 start.x start.y
|
||||
alsoThru 0.15 0.6 important
|
||||
flat (RightSB - 1) Descender [widths sw 0]
|
||||
curl RightSB Descender
|
||||
|
||||
create-glyph 'dollar.open' : glyph-proc
|
||||
include : MarkSet.capital
|
||||
|
|
|
@ -236,7 +236,7 @@ glyph-block Letter-Latin-Z : begin
|
|||
with-related-glyphs 'Zdesc' 0x2C6B 'Z' ZDescCtor
|
||||
with-related-glyphs 'zdesc' 0x2C6C 'z' ZDescCtor
|
||||
|
||||
with-related-glyphs 'zcurlytail' 0x291 'z' : lambda [src sel] : glyph-proc
|
||||
with-related-glyphs 'zCurlyTail' 0x291 'z' : lambda [src sel] : glyph-proc
|
||||
include [refer-glyph src] AS_BASE ALSO_METRICS
|
||||
|
||||
local fine : AdviceStroke2 5 4 XH
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue