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
|
@ -1,3 +1,4 @@
|
|||
* Fix broken curly variants of `x` and `X` (#824).
|
||||
* Add compact-serifed and compact-top-serifed variants of `r` (#826).
|
||||
* Allow Zeta to share variants with `Z` (#827).
|
||||
* Add serifed and top-serifed variants for `S` and `s` (#822).
|
|
@ -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
|
||||
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
|
||||
if SLAB : include : ArcStartSerif RightSB CAP Stroke Hook
|
||||
if SLAB : include : ArcEndSerif SB 0 Stroke Hook
|
||||
include : [if SLAB SlabSStroke SStroke]
|
||||
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
|
||||
|
|
|
@ -535,9 +535,33 @@ selector.T = "motionSerifed"
|
|||
|
||||
|
||||
|
||||
[prime.capital-s]
|
||||
sampler = 'S'
|
||||
tag = 'cv18'
|
||||
|
||||
[prime.capital-s.variants.serifless]
|
||||
rank = 1
|
||||
description = "Serifless `S`"
|
||||
selector.S = "serifless"
|
||||
selector.SSwash = "serifless"
|
||||
|
||||
[prime.capital-s.variants.serifed]
|
||||
rank = 2
|
||||
description = "`S` with serifs at both end"
|
||||
selector.S = "serifed"
|
||||
selector.SSwash = "topSerifed"
|
||||
|
||||
[prime.capital-s.variants.top-serifed]
|
||||
rank = 3
|
||||
description = "`S` with single serif at top"
|
||||
selector.S = "topSerifed"
|
||||
selector.SSwash = "topSerifed"
|
||||
|
||||
|
||||
|
||||
[prime.capital-u]
|
||||
sampler = 'U'
|
||||
tag = 'cv18'
|
||||
tag = 'cv19'
|
||||
|
||||
[prime.capital-u.variants.toothed]
|
||||
rank = 1
|
||||
|
@ -593,7 +617,7 @@ selector.U = "toothlessRoundedBilateralMotionSerifed"
|
|||
|
||||
[prime.capital-v]
|
||||
sampler = 'V'
|
||||
tag = 'cv19'
|
||||
tag = 'cv20'
|
||||
|
||||
[prime.capital-v.variants.straight]
|
||||
rank = 1
|
||||
|
@ -623,7 +647,7 @@ selector.Vhooktop = "curly"
|
|||
|
||||
[prime.capital-w]
|
||||
sampler = 'W'
|
||||
tag = 'cv20'
|
||||
tag = 'cv21'
|
||||
|
||||
[prime.capital-w.variants.straight]
|
||||
rank = 1
|
||||
|
@ -689,7 +713,7 @@ selector.Whooktop = "straightFlatTop"
|
|||
|
||||
[prime.capital-x]
|
||||
sampler = 'X'
|
||||
tag = 'cv21'
|
||||
tag = 'cv22'
|
||||
|
||||
[prime.capital-x.variants.straight]
|
||||
rank = 1
|
||||
|
@ -715,7 +739,7 @@ selector.X = "curlyMotionSerifed"
|
|||
|
||||
[prime.capital-y]
|
||||
sampler = 'Y'
|
||||
tag = 'cv22'
|
||||
tag = 'cv23'
|
||||
|
||||
[prime.capital-y.variants.straight]
|
||||
rank = 1
|
||||
|
@ -741,7 +765,7 @@ selector.Y = "curlyMotionSerifed"
|
|||
|
||||
[prime.capital-z]
|
||||
sampler = 'Z'
|
||||
tag = 'cv23'
|
||||
tag = 'cv24'
|
||||
|
||||
[prime.capital-z.variants.standard]
|
||||
rank = 1
|
||||
|
@ -811,7 +835,7 @@ selector."grek/Zeta" = 'curlyTopMotionSerifed'
|
|||
|
||||
[prime.a]
|
||||
sampler = 'a'
|
||||
tag = 'cv24'
|
||||
tag = 'cv25'
|
||||
|
||||
[prime.a.variants.double-storey]
|
||||
rank = 1
|
||||
|
@ -886,7 +910,7 @@ selector.a = 'singleStoreyEarlessRoundedMotionSerifed'
|
|||
|
||||
[prime.b]
|
||||
sampler = 'b'
|
||||
tag = 'cv25'
|
||||
tag = 'cv26'
|
||||
|
||||
[prime.b.variants.toothed]
|
||||
rank = 1
|
||||
|
@ -928,7 +952,7 @@ selector.bhooktop = "toothlessRounded"
|
|||
|
||||
[prime.d]
|
||||
sampler = 'd'
|
||||
tag = 'cv26'
|
||||
tag = 'cv27'
|
||||
|
||||
[prime.d.variants.toothed]
|
||||
rank = 1
|
||||
|
@ -982,7 +1006,7 @@ selector.dhooktop = "tailed"
|
|||
|
||||
[prime.e]
|
||||
sampler = 'e'
|
||||
tag = 'cv27'
|
||||
tag = 'cv28'
|
||||
|
||||
[prime.e.variants.flat-crossbar]
|
||||
rank = 1
|
||||
|
@ -998,7 +1022,7 @@ selector.e = 'rounded'
|
|||
|
||||
[prime.f]
|
||||
sampler = 'f'
|
||||
tag = 'cv28'
|
||||
tag = 'cv29'
|
||||
|
||||
[prime.f.variants.serifless]
|
||||
rank = 1
|
||||
|
@ -1102,7 +1126,7 @@ selector.f = "flatHookDiagonalTailedCrossbarAtXHeight"
|
|||
|
||||
[prime.g]
|
||||
sampler = 'g'
|
||||
tag = 'cv29'
|
||||
tag = 'cv30'
|
||||
|
||||
[prime.g.variants.double-storey]
|
||||
rank = 1
|
||||
|
@ -1158,7 +1182,7 @@ selector.g = 'singleStoreyMotionSerifedFlatHook'
|
|||
|
||||
[prime.h]
|
||||
sampler = 'h'
|
||||
tag = 'cv30'
|
||||
tag = 'cv31'
|
||||
|
||||
[prime.h.variants.straight]
|
||||
rank = 1
|
||||
|
@ -1192,7 +1216,7 @@ selector.heng = 'straightMotionSerifed'
|
|||
|
||||
[prime.i]
|
||||
sampler = 'i'
|
||||
tag = 'cv31'
|
||||
tag = 'cv32'
|
||||
|
||||
[prime.i.variants.serifed]
|
||||
rank = 1
|
||||
|
@ -1258,7 +1282,7 @@ selector.dotlessi = 'serifedDiagonalTailed'
|
|||
|
||||
[prime.j]
|
||||
sampler = 'j'
|
||||
tag = 'cv32'
|
||||
tag = 'cv33'
|
||||
|
||||
[prime.j.variants.serifed]
|
||||
rank = 1
|
||||
|
@ -1299,7 +1323,7 @@ selector.dotlessj = 'diagonalTailedSerifed'
|
|||
|
||||
[prime.k]
|
||||
sampler = 'k'
|
||||
tag = 'cv33'
|
||||
tag = 'cv34'
|
||||
|
||||
[prime.k.variants.straight]
|
||||
rank = 1
|
||||
|
@ -1388,7 +1412,7 @@ selector.kDescender = 'symmetricConnectedMotionSerifed'
|
|||
|
||||
[prime.l]
|
||||
sampler = 'l'
|
||||
tag = 'cv34'
|
||||
tag = 'cv35'
|
||||
|
||||
[prime.l.variants.serifed]
|
||||
rank = 1
|
||||
|
@ -1453,7 +1477,7 @@ selector.l = 'serifedDiagonalTailed'
|
|||
|
||||
[prime.m]
|
||||
sampler = 'm'
|
||||
tag = 'cv35'
|
||||
tag = 'cv36'
|
||||
|
||||
[prime.m.variants.normal]
|
||||
rank = 1
|
||||
|
@ -1579,7 +1603,7 @@ selector."cyrl/te.italic" = "motionSerifedTailed"
|
|||
|
||||
[prime.n]
|
||||
sampler = 'n'
|
||||
tag = 'cv36'
|
||||
tag = 'cv37'
|
||||
|
||||
[prime.n.variants.straight]
|
||||
rank = 1
|
||||
|
@ -1641,7 +1665,7 @@ selector."cyrl/pe.italic" = "motionSerifedTailed"
|
|||
|
||||
[prime.p]
|
||||
sampler = 'p'
|
||||
tag = 'cv37'
|
||||
tag = 'cv38'
|
||||
|
||||
[prime.p.variants.eared]
|
||||
rank = 1
|
||||
|
@ -1670,7 +1694,7 @@ selector."cyrl/er" = "motionSerifed"
|
|||
|
||||
[prime.q]
|
||||
sampler = 'q'
|
||||
tag = 'cv38'
|
||||
tag = 'cv39'
|
||||
|
||||
[prime.q.variants.straight]
|
||||
rank = 1
|
||||
|
@ -1735,7 +1759,7 @@ selector.q = 'motionSerifedDiagonalTailed'
|
|||
|
||||
[prime.r]
|
||||
sampler = 'r'
|
||||
tag = 'cv39'
|
||||
tag = 'cv40'
|
||||
|
||||
[prime.r.variants.serifless]
|
||||
rank = 1
|
||||
|
@ -1819,9 +1843,33 @@ selector."rflap" = "compact"
|
|||
|
||||
|
||||
|
||||
[prime.s]
|
||||
sampler = 's'
|
||||
tag = 'cv41'
|
||||
|
||||
[prime.s.variants.serifless]
|
||||
rank = 1
|
||||
description = "Serifless `s`"
|
||||
selector.s = "serifless"
|
||||
selector.sSwash = "serifless"
|
||||
|
||||
[prime.s.variants.serifed]
|
||||
rank = 2
|
||||
description = "`s` with serifs at both end"
|
||||
selector.s = "serifed"
|
||||
selector.sSwash = "topSerifed"
|
||||
|
||||
[prime.s.variants.top-serifed]
|
||||
rank = 3
|
||||
description = "`s` with single serif at top"
|
||||
selector.s = "topSerifed"
|
||||
selector.sSwash = "topSerifed"
|
||||
|
||||
|
||||
|
||||
[prime.t]
|
||||
sampler = 't'
|
||||
tag = 'cv40'
|
||||
tag = 'cv42'
|
||||
|
||||
[prime.t.variants.standard]
|
||||
rank = 1
|
||||
|
@ -1862,7 +1910,7 @@ selector.t = 'diagonalTailed'
|
|||
|
||||
[prime.u]
|
||||
sampler = 'u'
|
||||
tag = 'cv41'
|
||||
tag = 'cv43'
|
||||
|
||||
[prime.u.variants.toothed]
|
||||
rank = 1
|
||||
|
@ -1940,7 +1988,7 @@ selector."cyrl/tse.italic" = "motionSerifed"
|
|||
|
||||
[prime.v]
|
||||
sampler = 'v'
|
||||
tag = 'cv42'
|
||||
tag = 'cv44'
|
||||
|
||||
[prime.v.variants.straight]
|
||||
rank = 1
|
||||
|
@ -1970,7 +2018,7 @@ selector.vhooktop = "curly"
|
|||
|
||||
[prime.w]
|
||||
sampler = 'w'
|
||||
tag = 'cv43'
|
||||
tag = 'cv45'
|
||||
|
||||
[prime.w.variants.straight]
|
||||
rank = 1
|
||||
|
@ -2036,7 +2084,7 @@ selector.whooktop = "straightFlatTop"
|
|||
|
||||
[prime.x]
|
||||
sampler = 'x'
|
||||
tag = 'cv44'
|
||||
tag = 'cv46'
|
||||
|
||||
[prime.x.variants.straight]
|
||||
rank = 1
|
||||
|
@ -2066,7 +2114,7 @@ selector."grek/chi" = "curly"
|
|||
|
||||
[prime.y]
|
||||
sampler = 'y'
|
||||
tag = 'cv45'
|
||||
tag = 'cv47'
|
||||
|
||||
[prime.y.variants.straight]
|
||||
rank = 1
|
||||
|
@ -2142,7 +2190,7 @@ selector.yhooktop = "cursiveFlatHook"
|
|||
|
||||
[prime.z]
|
||||
sampler = 'z'
|
||||
tag = 'cv46'
|
||||
tag = 'cv48'
|
||||
|
||||
[prime.z.variants.standard]
|
||||
rank = 1
|
||||
|
@ -2203,7 +2251,7 @@ selector.z = 'curlyTopMotionSerifed'
|
|||
[prime.eszet]
|
||||
sampler = 'ß'
|
||||
samplerExplain = 'Eszet'
|
||||
tag = 'cv47'
|
||||
tag = 'cv49'
|
||||
|
||||
[prime.eszet.variants.traditional]
|
||||
rank = 1
|
||||
|
@ -2224,7 +2272,7 @@ selector.eszet = 'longsslig'
|
|||
|
||||
[prime.turn-v]
|
||||
sampler = 'ΛΔ'
|
||||
tag = 'cv48'
|
||||
tag = 'cv50'
|
||||
|
||||
[prime.turn-v.variants.straight]
|
||||
rank = 1
|
||||
|
@ -2243,7 +2291,7 @@ selector."grek/Delta" = "curly"
|
|||
[prime.lambda]
|
||||
sampler = 'λ'
|
||||
samplerExplain = 'Greek small Lambda'
|
||||
tag = 'cv49'
|
||||
tag = 'cv51'
|
||||
|
||||
[prime.lambda.variants.straight]
|
||||
rank = 1
|
||||
|
@ -2260,7 +2308,7 @@ selector."grek/lambda" = "curly"
|
|||
[prime.cyrl-capital-u]
|
||||
sampler = 'У'
|
||||
samplerExplain = 'Cyrillic Capital U'
|
||||
tag = 'cv50'
|
||||
tag = 'cv52'
|
||||
|
||||
[prime.cyrl-capital-u.variants.straight]
|
||||
rank = 1
|
||||
|
@ -2296,7 +2344,7 @@ selector."cyrl/U" = "cursiveFlatHook"
|
|||
|
||||
[prime.zero]
|
||||
sampler = '0'
|
||||
tag = 'cv51'
|
||||
tag = 'cv53'
|
||||
|
||||
[prime.zero.variants.slashed]
|
||||
rank = 1
|
||||
|
@ -2327,7 +2375,7 @@ selector.zero = 'longDotted'
|
|||
|
||||
[prime.one]
|
||||
sampler = '1'
|
||||
tag = 'cv52'
|
||||
tag = 'cv54'
|
||||
|
||||
[prime.one.variants.nobase]
|
||||
rank = 1
|
||||
|
@ -2368,7 +2416,7 @@ selector.one = "baseFlatTopSerif"
|
|||
|
||||
[prime.two]
|
||||
sampler = '2'
|
||||
tag = 'cv53'
|
||||
tag = 'cv55'
|
||||
|
||||
[prime.two.variants.straight-neck]
|
||||
rank = 1
|
||||
|
@ -2384,7 +2432,7 @@ selector.two = "curlyNeck"
|
|||
|
||||
[prime.three]
|
||||
sampler = '3'
|
||||
tag = 'cv54'
|
||||
tag = 'cv56'
|
||||
|
||||
[prime.three.variants.flattop]
|
||||
rank = 1
|
||||
|
@ -2400,7 +2448,7 @@ selector.three = 'twoarcs'
|
|||
|
||||
[prime.four]
|
||||
sampler = '4'
|
||||
tag = 'cv55'
|
||||
tag = 'cv57'
|
||||
|
||||
[prime.four.variants.closed]
|
||||
rank = 1
|
||||
|
@ -2436,7 +2484,7 @@ selector.four = 'openNonCrossing'
|
|||
|
||||
[prime.six]
|
||||
sampler = '6'
|
||||
tag = 'cv56'
|
||||
tag = 'cv58'
|
||||
|
||||
[prime.six.variants.closed-contour]
|
||||
rank = 1
|
||||
|
@ -2457,7 +2505,7 @@ selector.six = "straightBar"
|
|||
|
||||
[prime.seven]
|
||||
sampler = '7'
|
||||
tag = 'cv57'
|
||||
tag = 'cv59'
|
||||
|
||||
[prime.seven.variants.noserif]
|
||||
rank = 1
|
||||
|
@ -2483,7 +2531,7 @@ selector.seven = "crossbarSerifed"
|
|||
|
||||
[prime.eight]
|
||||
sampler = '8'
|
||||
tag = 'cv58'
|
||||
tag = 'cv60'
|
||||
|
||||
[prime.eight.variants.crossing]
|
||||
rank = 1
|
||||
|
@ -2499,7 +2547,7 @@ selector.eight = 'twoCircles'
|
|||
|
||||
[prime.nine]
|
||||
sampler = '9'
|
||||
tag = 'cv59'
|
||||
tag = 'cv61'
|
||||
|
||||
[prime.nine.variants.closed-contour]
|
||||
rank = 1
|
||||
|
@ -2520,7 +2568,7 @@ selector.nine = "straightBar"
|
|||
|
||||
[prime.tilde]
|
||||
sampler = '~'
|
||||
tag = 'cv60'
|
||||
tag = 'cv62'
|
||||
|
||||
[prime.tilde.variants.high]
|
||||
rank = 1
|
||||
|
@ -2536,7 +2584,7 @@ selector.asciiTilde = 'low'
|
|||
|
||||
[prime.asterisk]
|
||||
sampler = '*'
|
||||
tag = 'cv61'
|
||||
tag = 'cv63'
|
||||
|
||||
[prime.asterisk.variants.high]
|
||||
rank = 1
|
||||
|
@ -2578,7 +2626,7 @@ selector."asterisk/lowered" = 'turnPentaLow'
|
|||
|
||||
[prime.underscore]
|
||||
sampler = '_'
|
||||
tag = 'cv62'
|
||||
tag = 'cv64'
|
||||
|
||||
[prime.underscore.variants.high]
|
||||
rank = 1
|
||||
|
@ -2599,7 +2647,7 @@ selector.underscore = 'aboveBaseline'
|
|||
|
||||
[prime.paragraph-sign]
|
||||
sampler = '¶'
|
||||
tag = 'cv63'
|
||||
tag = 'cv65'
|
||||
|
||||
[prime.paragraph-sign.variants.high]
|
||||
rank = 1
|
||||
|
@ -2617,7 +2665,7 @@ selector.revertParagraph = 'low'
|
|||
|
||||
[prime.caret]
|
||||
sampler = '^'
|
||||
tag = 'cv64'
|
||||
tag = 'cv66'
|
||||
|
||||
[prime.caret.variants.high]
|
||||
rank = 1
|
||||
|
@ -2633,7 +2681,7 @@ selector.asciiCaret = 'low'
|
|||
|
||||
[prime.paren]
|
||||
sampler = '( )'
|
||||
tag = 'cv65'
|
||||
tag = 'cv67'
|
||||
|
||||
[prime.paren.variants.normal]
|
||||
rank = 1
|
||||
|
@ -2651,7 +2699,7 @@ selector.parenRight = 'largeContour'
|
|||
|
||||
[prime.brace]
|
||||
sampler = '{ }'
|
||||
tag = 'cv66'
|
||||
tag = 'cv68'
|
||||
|
||||
[prime.brace.variants.straight]
|
||||
rank = 1
|
||||
|
@ -2669,7 +2717,7 @@ selector.braceRight = 'curly'
|
|||
|
||||
[prime.number-sign]
|
||||
sampler = '#'
|
||||
tag = 'cv67'
|
||||
tag = 'cv69'
|
||||
|
||||
[prime.number-sign.variants.upright]
|
||||
rank = 1
|
||||
|
@ -2695,7 +2743,7 @@ selector.numberSign = 'slantedOpen'
|
|||
|
||||
[prime.ampersand]
|
||||
sampler = '&'
|
||||
tag = 'cv68'
|
||||
tag = 'cv70'
|
||||
|
||||
[prime.ampersand.variants.closed]
|
||||
rank = 1
|
||||
|
@ -2736,7 +2784,7 @@ selector.ampersand = 'flatTop'
|
|||
|
||||
[prime.at]
|
||||
sampler = '@'
|
||||
tag = 'cv69'
|
||||
tag = 'cv71'
|
||||
|
||||
[prime.at.variants.threefold]
|
||||
rank = 1
|
||||
|
@ -2757,7 +2805,7 @@ selector.at = 'short'
|
|||
|
||||
[prime.dollar]
|
||||
sampler = '$'
|
||||
tag = 'cv70'
|
||||
tag = 'cv72'
|
||||
|
||||
[prime.dollar.variants.open]
|
||||
rank = 1
|
||||
|
@ -2783,7 +2831,7 @@ selector.dollar = "throughcap"
|
|||
|
||||
[prime.percent]
|
||||
sampler = '%'
|
||||
tag = 'cv71'
|
||||
tag = 'cv73'
|
||||
|
||||
[prime.percent.variants.dots]
|
||||
rank = 1
|
||||
|
@ -2804,7 +2852,7 @@ selector.percent = "ringsConnected"
|
|||
|
||||
[prime.bar]
|
||||
sampler = '|'
|
||||
tag = 'cv72'
|
||||
tag = 'cv74'
|
||||
slopeDependent = true
|
||||
|
||||
[prime.bar.variants.natural-slope]
|
||||
|
@ -2821,7 +2869,7 @@ selector."bar.italic" = "forceUpright"
|
|||
|
||||
[prime.lig-ltgteq]
|
||||
sampler = '<= >='
|
||||
tag = 'cv73'
|
||||
tag = 'cv75'
|
||||
|
||||
[prime.lig-ltgteq.variants.flat]
|
||||
rank = 1
|
||||
|
@ -2839,7 +2887,7 @@ selector."eq.at-gteq.lig2" = "slanted"
|
|||
|
||||
[prime.ascii-single-quote]
|
||||
sampler = "'"
|
||||
tag = 'cv74'
|
||||
tag = 'cv76'
|
||||
|
||||
[prime.ascii-single-quote.variants.straight]
|
||||
rank = 1
|
||||
|
@ -2855,7 +2903,7 @@ selector.asciiSingleQuote = 'raisedComma'
|
|||
|
||||
[prime.ascii-grave]
|
||||
sampler = '`'
|
||||
tag = 'cv75'
|
||||
tag = 'cv77'
|
||||
|
||||
[prime.ascii-grave.variants.straight]
|
||||
rank = 1
|
||||
|
@ -2901,6 +2949,7 @@ capital-n = 'standard'
|
|||
capital-p = 'closed'
|
||||
capital-q = 'curly-tailed'
|
||||
capital-r = 'straight'
|
||||
capital-s = 'serifless'
|
||||
capital-t = 'standard'
|
||||
capital-u = 'toothless-rounded'
|
||||
capital-v = 'straight'
|
||||
|
@ -2914,6 +2963,7 @@ g = 'single-storey'
|
|||
p = 'eared'
|
||||
q = 'straight'
|
||||
r = 'serifless'
|
||||
s = 'serifless'
|
||||
t = 'standard'
|
||||
v = 'straight'
|
||||
w = 'straight'
|
||||
|
@ -2986,6 +3036,8 @@ y = 'cursive'
|
|||
###################################################################################################
|
||||
|
||||
[composite.slab.design]
|
||||
capital-s = 'serifed'
|
||||
s = 'serifed'
|
||||
one = 'base'
|
||||
seven = 'serifed'
|
||||
cyrl-capital-u = 'straight-turn'
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue