* Add Characters
- LATIN SMALL LIGATURE FI (`U+FB01`) (#1497). - LATIN SMALL LIGATURE FFI (`U+FB03`) (#1497). - LATIN SMALL LIGATURE FFL (`U+FB04`) (#1497). - LATIN SMALL LIGATURE LONG S T (`U+FB05`) (#1497). - LATIN SMALL LIGATURE ST (`U+FB06`) (#1497).
This commit is contained in:
parent
8311194896
commit
da10f30b65
11 changed files with 253 additions and 94 deletions
|
@ -996,8 +996,8 @@ from = ["iosevka-etoile"]
|
||||||
# Shape weight : affects the shape of the glyphs
|
# Shape weight : affects the shape of the glyphs
|
||||||
# Menu weight : affects the font menu name
|
# Menu weight : affects the font menu name
|
||||||
# CSS weight : affects the webfont CSS "font-weight" property
|
# CSS weight : affects the webfont CSS "font-weight" property
|
||||||
# IMPORTANT : Currently "menu" property only support 100, 200, 300, 400, 500, 600, 700, 800, 900.
|
# IMPORTANT : Currently "menu" property only support 100, 200, 300, 350, 400, 450, 500, 600, 700,
|
||||||
# and "shape" properly only supports number between 100 and 900 (inclusive).
|
# 800, 900, and "shape" properly only supports number between 100 and 900 (inclusive).
|
||||||
|
|
||||||
[weights.thin]
|
[weights.thin]
|
||||||
shape = 100
|
shape = 100
|
||||||
|
|
6
changes/22.1.1.md
Normal file
6
changes/22.1.1.md
Normal file
|
@ -0,0 +1,6 @@
|
||||||
|
* Add Characters
|
||||||
|
- LATIN SMALL LIGATURE FI (`U+FB01`) (#1497).
|
||||||
|
- LATIN SMALL LIGATURE FFI (`U+FB03`) (#1497).
|
||||||
|
- LATIN SMALL LIGATURE FFL (`U+FB04`) (#1497).
|
||||||
|
- LATIN SMALL LIGATURE LONG S T (`U+FB05`) (#1497).
|
||||||
|
- LATIN SMALL LIGATURE ST (`U+FB06`) (#1497).
|
|
@ -159,10 +159,6 @@ function nameFontImpl(records, platformID, encodingID, languageID, nameID, value
|
||||||
records.push({ platformID, encodingID, languageID, nameID, value });
|
records.push({ platformID, encodingID, languageID, nameID, value });
|
||||||
}
|
}
|
||||||
|
|
||||||
function isRBIZ(weight, slope) {
|
|
||||||
return (weight === 400 || weight === 700) && (slope === "normal" || slope === "italic");
|
|
||||||
}
|
|
||||||
|
|
||||||
function getStyle(weight, width, slope) {
|
function getStyle(weight, width, slope) {
|
||||||
const weightPart = weightToMenuStyleMap[weight] ?? "W" + weight;
|
const weightPart = weightToMenuStyleMap[weight] ?? "W" + weight;
|
||||||
const widthPart = widthToMenuStyleMap[width] ?? "Wd" + width;
|
const widthPart = widthToMenuStyleMap[width] ?? "Wd" + width;
|
||||||
|
@ -182,6 +178,7 @@ const weightToMenuStyleMap = {
|
||||||
100: "Thin",
|
100: "Thin",
|
||||||
200: "Extralight",
|
200: "Extralight",
|
||||||
300: "Light",
|
300: "Light",
|
||||||
|
350: "SemiLight",
|
||||||
400: "",
|
400: "",
|
||||||
450: "Book",
|
450: "Book",
|
||||||
500: "Medium",
|
500: "Medium",
|
||||||
|
@ -210,6 +207,7 @@ const weightToMenuStyleMapShort = {
|
||||||
100: "Th",
|
100: "Th",
|
||||||
200: "XLt",
|
200: "XLt",
|
||||||
300: "Lt",
|
300: "Lt",
|
||||||
|
350: "SmLt",
|
||||||
400: "",
|
400: "",
|
||||||
450: "Bk",
|
450: "Bk",
|
||||||
500: "Md",
|
500: "Md",
|
||||||
|
|
|
@ -1242,72 +1242,96 @@ glyph-block Autobuild-Pnonetic-Ligatures : begin
|
||||||
glyph-block-import Autobuild-Enclosure-Shared : CollectJobs CreateDerivedFontFromJobs EnsureComponentGlyphT applyRelations
|
glyph-block-import Autobuild-Enclosure-Shared : CollectJobs CreateDerivedFontFromJobs EnsureComponentGlyphT applyRelations
|
||||||
glyph-block-import Autobuild-Transformed-Shared : ToSuperscript ToSubscript
|
glyph-block-import Autobuild-Transformed-Shared : ToSuperscript ToSubscript
|
||||||
|
|
||||||
define [createPhoneticLigatures tfm prefix div _shrink1 _shrink2 wadj1 wadj2 kKern demands] : begin
|
define [createPhoneticLigatures tfm prefix div mockNParts _shrink kKern demands] : begin
|
||||||
define CWidth : Width * div
|
local ww0 : Width * div
|
||||||
define MockWidth : CWidth / [fallback tfm.crowdAdjScale 1]
|
local wwM : ww0 / [fallback tfm.crowdAdjScale 1]
|
||||||
define jobs : CollectJobs NON-DECOMPOSABLE NOT-CENTERED ALLOW-PROPORTIONAL prefix "" demands
|
local jobs : CollectJobs DECOMPOSABLE NOT-CENTERED ALLOW-PROPORTIONAL prefix "" demands
|
||||||
local shrink1 : clamp 0 1 _shrink1
|
local shrink : clamp 0 1 _shrink
|
||||||
local shrink2 : clamp 0 1 _shrink2
|
|
||||||
local kern 0
|
local kern 0
|
||||||
foreach [cycle : range 0 4] : begin
|
foreach [cycle : range 0 8] : begin
|
||||||
set kern : kKern * (SB * shrink1 + SB * shrink2 + 0.5 * Stroke * [mix shrink1 shrink2 0.5] - OX * 2)
|
set kern : kKern * (2 * SB * shrink + (0.5 * Stroke * shrink * HVContrast - OX * 2))
|
||||||
local tmp-shrink1 : (shrink1 * MockWidth + kern * shrink1 / (shrink1 + shrink2)) / MockWidth
|
local tmpShrink : (wwM + kern * (mockNParts - 1)) / (mockNParts * Width)
|
||||||
local tmp-shrink2 : (shrink2 * MockWidth + kern * shrink2 / (shrink1 + shrink2)) / MockWidth
|
set shrink : Math.max _shrink : clamp 0 1 tmpShrink
|
||||||
set shrink1 : clamp 0 1 tmp-shrink1
|
|
||||||
set shrink2 : clamp 0 1 tmp-shrink2
|
|
||||||
|
|
||||||
local df1 : CreateDerivedFontFromJobs jobs {} : lambda [gs] : Thinner gs shrink1 true tfm.crowd tfm.crowdAdjScale
|
local thinFont : CreateDerivedFontFromJobs jobs {} : function [gs]
|
||||||
local df2 : CreateDerivedFontFromJobs jobs {} : lambda [gs] : Thinner gs shrink2 true tfm.crowd tfm.crowdAdjScale
|
Thinner gs shrink true tfm.crowd tfm.crowdAdjScale
|
||||||
|
|
||||||
# TODO: we need a better geometry to do such minkovski sums
|
define [LigaturePlaceholderImpl aw markPlacement mak] : begin
|
||||||
define [createMaskout c1 c2 s] : begin
|
define gni : '.phonetic-ligature-placeholder@' + [{aw markPlacement}.join '/']
|
||||||
define dfg1 : df1.queryByNameEnsured c1
|
if [query-glyph gni] : return gni
|
||||||
define dfg2 : df2.queryByNameEnsured c2
|
create-glyph gni : glyph-proc
|
||||||
return : WithTransform [Translate (s + dfg1.advanceWidth * wadj1 - kern) 0] dfg2
|
set-width aw
|
||||||
|
if mak : include : [DivFrame div].markSet.(mak)
|
||||||
|
set-base-anchor 'enclosureInner' markPlacement 0
|
||||||
|
set-base-anchor 'slash' (aw / 2) (Ascender / 2)
|
||||||
|
include : tfm div
|
||||||
|
return gni
|
||||||
|
|
||||||
foreach [{gn unicode { c1 c2 } mak} : items-of jobs.nonDecomposable] : if [not : query-glyph gn] : begin
|
define [LigaturePartImpl thinFont compress markDist maskPos] : lambda [gidPart] : begin
|
||||||
|
define gni : '.phonetic-ligature-part.' + gidPart + '@' + [{ prefix compress markDist maskPos }.join '/']
|
||||||
|
if [query-glyph gni] : return gni
|
||||||
|
create-glyph gni : glyph-proc
|
||||||
|
set-width 0
|
||||||
|
include : difference
|
||||||
|
thinFont.queryByNameEnsured gidPart
|
||||||
|
MaskRight maskPos
|
||||||
|
include : Ungizmo
|
||||||
|
include : Scale compress 1
|
||||||
|
include : Regizmo
|
||||||
|
set-mark-anchor 'enclosureInner' 0 0 markDist 0
|
||||||
|
include : tfm div
|
||||||
|
return gni
|
||||||
|
|
||||||
local step (-OX)
|
define [LigatureImpl job decomposable] : if [not : query-glyph gn] : begin
|
||||||
local s step
|
local { gn unicode components mak } job
|
||||||
local dist (Stroke * 2)
|
|
||||||
|
|
||||||
local maskOuts : list
|
local sumChildrenWidth 0
|
||||||
createMaskout c1 c2 0.01
|
local effectiveGlyphCount 0
|
||||||
createMaskout c1 c2 (dist - 0.01)
|
local originals {}
|
||||||
while (s < dist) : begin
|
local dfgs {}
|
||||||
maskOuts.push : createMaskout c1 c2 s
|
foreach { i component } [components.entries] : begin
|
||||||
set s : s + step
|
set originals.(i) : query-glyph component
|
||||||
|
set dfgs.(i) : thinFont.queryByNameEnsured component
|
||||||
|
if (originals.(i).advanceWidth > 0) : inc effectiveGlyphCount
|
||||||
|
set sumChildrenWidth : sumChildrenWidth + dfgs.(i).advanceWidth
|
||||||
|
|
||||||
|
local refW : sumChildrenWidth - kern * (effectiveGlyphCount - 1)
|
||||||
|
local compRefWw wwM
|
||||||
|
local compress : clamp 0 1 (compRefWw / refW)
|
||||||
|
|
||||||
create-glyph gn unicode : glyph-proc
|
create-glyph gn unicode : glyph-proc
|
||||||
set-width CWidth
|
local decomposition { }
|
||||||
if mak : include : [DivFrame (MockWidth / Width)].markSet.(mak)
|
local baseOffset : ww0 / 2 - refW * compress / 2
|
||||||
define dfg1 : df1.queryByNameEnsured c1
|
foreach { i component } [components.entries] : do
|
||||||
define dfg2 : df2.queryByNameEnsured c2
|
local currentIsMark : 0 == originals.(i).advanceWidth
|
||||||
local sumChildrenWidth : dfg1.advanceWidth * wadj1 + dfg2.advanceWidth * wadj2
|
|
||||||
local refW : sumChildrenWidth - kern
|
|
||||||
include dfg2
|
|
||||||
include : Translate (dfg1.advanceWidth * wadj1 - kern) 0
|
|
||||||
local leftHalf : intersection dfg1
|
|
||||||
Rect (CAP * 2) (Descender * 2) (-MockWidth) (dfg1.advanceWidth * wadj1 - kern + dfg2.advanceWidth * wadj2 / 2)
|
|
||||||
include leftHalf
|
|
||||||
# include : difference.apply null { leftHalf :: maskOuts }
|
|
||||||
include : Ungizmo
|
|
||||||
include : Translate (-refW / 2) 0
|
|
||||||
include : Scale [clamp 0 1 ((MockWidth - SB * 1.25) / (MockWidth - SB * 2) * MockWidth / refW)] 1
|
|
||||||
include : Translate (CWidth / 2) 0
|
|
||||||
include : Regizmo
|
|
||||||
|
|
||||||
include : tfm div
|
local componentAdvance : if currentIsMark 0 : compress * (dfgs.(i).advanceWidth - kern)
|
||||||
|
local maskPos : dfgs.(i).advanceWidth - kern + [if ((i + 1) < effectiveGlyphCount) (dfgs.(i + 1).advanceWidth / 2) ww0]
|
||||||
|
|
||||||
|
if (i === 0) : begin
|
||||||
|
local placeholder : LigaturePlaceholderImpl ww0 baseOffset
|
||||||
|
decomposition.push placeholder
|
||||||
|
include [refer-glyph placeholder] AS_BASE ALSO_METRICS
|
||||||
|
|
||||||
|
if currentIsMark : then : begin
|
||||||
|
include [refer-glyph component]
|
||||||
|
: else : begin
|
||||||
|
local part : EnsureComponentGlyphT component
|
||||||
|
LigaturePartImpl thinFont compress componentAdvance maskPos
|
||||||
|
decomposition.push part
|
||||||
|
include [refer-glyph part]
|
||||||
|
|
||||||
|
if decomposable : CvDecompose.set currentGlyph decomposition
|
||||||
|
|
||||||
|
foreach job [items-of jobs.nonDecomposable] : LigatureImpl job false
|
||||||
|
foreach job [items-of jobs.decomposableJobs] : LigatureImpl job true
|
||||||
|
|
||||||
applyRelations jobs.relApplications
|
applyRelations jobs.relApplications
|
||||||
|
|
||||||
define [ToLetter] : glyph-proc
|
define [ToLetter] : glyph-proc
|
||||||
|
|
||||||
define [AddSlash] : glyph-proc
|
define stdShrink : clamp 0.625 0.9 : StrokeWidthBlend 0.625 0.9
|
||||||
include [refer-glyph 'wideSlashOver']
|
createPhoneticLigatures ToLetter 'phonetic' para.diversityM 2 stdShrink 1 : list
|
||||||
|
|
||||||
define stdShrink : clamp 0.75 0.9 : StrokeWidthBlend 0.75 0.9
|
|
||||||
createPhoneticLigatures ToLetter 'phonetic' para.diversityM stdShrink stdShrink 1 1 1 : list
|
|
||||||
list 0x02A3 { 'd/phoneticLeft' 'z' } 'b'
|
list 0x02A3 { 'd/phoneticLeft' 'z' } 'b'
|
||||||
list 0x02A4 { 'd/phoneticLeft' 'ezh' } 'if'
|
list 0x02A4 { 'd/phoneticLeft' 'ezh' } 'if'
|
||||||
list 0x02A5 { 'd/phoneticLeft' 'zCurlyTail' } 'if'
|
list 0x02A5 { 'd/phoneticLeft' 'zCurlyTail' } 'if'
|
||||||
|
@ -1319,10 +1343,17 @@ glyph-block Autobuild-Pnonetic-Ligatures : begin
|
||||||
list 0x02AB { 'l/phoneticLeft' 'z' } 'b'
|
list 0x02AB { 'l/phoneticLeft' 'z' } 'b'
|
||||||
list 0xAB66 { 'd/phoneticLeft' 'zRTailBR' } 'if'
|
list 0xAB66 { 'd/phoneticLeft' 'zRTailBR' } 'if'
|
||||||
list 0xAB67 { 't/phoneticLeft1' 'sRTail' } 'p'
|
list 0xAB67 { 't/phoneticLeft1' 'sRTail' } 'p'
|
||||||
|
list 0xFB00 { 'f' 'f' } null
|
||||||
list 0xFB01 { 'f/compLigLeft1' 'dotlessi/compLigRight' } null
|
list 0xFB01 { 'f/compLigLeft1' 'dotlessi/compLigRight' } null
|
||||||
list 0xFB02 { 'f/compLigLeft2' 'l/compLigRight' } null
|
list 0xFB02 { 'f/compLigLeft2' 'l/compLigRight' } null
|
||||||
|
list 0xFB05 { 'longs/flatExt' 't/phoneticLeft2' } null
|
||||||
|
list 0xFB06 { 's/compLigLeft' 't/phoneticLeft3' } null
|
||||||
|
|
||||||
createPhoneticLigatures ToSuperscript 'phoneticSuperscript' 1 stdShrink stdShrink 1 1 1 : list
|
createPhoneticLigatures ToLetter 'phonetic2' para.diversityM 3 stdShrink 1 : list
|
||||||
|
list 0xFB03 { 'f/compLigLeft1' 'f/compLigLeft1' 'dotlessi/compLigRight' } null
|
||||||
|
list 0xFB04 { 'f/compLigLeft3' 'f/compLigLeft2' 'l/compLigRight' } null
|
||||||
|
|
||||||
|
createPhoneticLigatures ToSuperscript 'phoneticSuperscript' 1 2 stdShrink 1 : list
|
||||||
list 0x10787 { 'd/phoneticLeft' 'z' } 'b'
|
list 0x10787 { 'd/phoneticLeft' 'z' } 'b'
|
||||||
list 0x1078A { 'd/phoneticLeft' 'ezh' } 'if'
|
list 0x1078A { 'd/phoneticLeft' 'ezh' } 'if'
|
||||||
list 0x10789 { 'd/phoneticLeft' 'zCurlyTail' } 'if'
|
list 0x10789 { 'd/phoneticLeft' 'zCurlyTail' } 'if'
|
||||||
|
@ -1335,11 +1366,11 @@ glyph-block Autobuild-Pnonetic-Ligatures : begin
|
||||||
list 0x10788 { 'd/phoneticLeft' 'zRTailBR' } 'if'
|
list 0x10788 { 'd/phoneticLeft' 'zRTailBR' } 'if'
|
||||||
list 0x107AD { 't/phoneticLeft1' 'sRTail' } 'p'
|
list 0x107AD { 't/phoneticLeft1' 'sRTail' } 'p'
|
||||||
|
|
||||||
createPhoneticLigatures ToSubscript 'tenSubscript' 1 1 1 1 1 0.5 : list
|
createPhoneticLigatures ToSubscript 'tenSubscript' 1 2 1 0.5 : list
|
||||||
list 0x23E8 { 'one.lnum' 'zero.lnum' } 'capital'
|
list 0x23E8 { 'one.lnum' 'zero.lnum' } 'capital'
|
||||||
|
|
||||||
createPhoneticLigatures AddSlash 'thSlash' 1 stdShrink stdShrink 1 1 1 : list
|
createPhoneticLigatures ToLetter 'thSlash' 1 2 stdShrink 1 : list
|
||||||
list 0x1D7A { 't/phoneticLeft1' 'h' } 'b'
|
list 0x1D7A { 't/phoneticLeft1' 'h' 'wideSlashOver' } 'b'
|
||||||
|
|
||||||
glyph-block Autobuild-Double-Emotions : begin
|
glyph-block Autobuild-Double-Emotions : begin
|
||||||
glyph-block-import CommonShapes
|
glyph-block-import CommonShapes
|
||||||
|
|
|
@ -124,7 +124,25 @@ glyph-block Letter-Latin-Long-S : begin
|
||||||
|
|
||||||
create-forked-glyph 'longsbar.flatHookTailed' : LongSSymmetricOverlayBar Middle
|
create-forked-glyph 'longsbar.flatHookTailed' : LongSSymmetricOverlayBar Middle
|
||||||
|
|
||||||
|
create-glyph 'longs.flatHookExt' : glyph-proc
|
||||||
|
include : MarkSet.b
|
||||||
|
local m : Middle - JBalance - HalfStroke * HVContrast
|
||||||
|
include : LongSFlatHookNoTailShape m 0 SLAB
|
||||||
|
include : HBar.t RightSB (2 * Width) Ascender
|
||||||
|
|
||||||
|
create-glyph 'longs.flatHookDescendingExt' : glyph-proc
|
||||||
|
include : MarkSet.if
|
||||||
|
local m : Middle - JBalance - HalfStroke * HVContrast
|
||||||
|
include : LongSFlatHookNoTailShape m Descender false
|
||||||
|
include : HBar.t RightSB (2 * Width) Ascender
|
||||||
|
|
||||||
|
create-glyph 'longs.flatHookTailedExt' : glyph-proc
|
||||||
|
include : MarkSet.if
|
||||||
|
include : LongSShape Ascender Descender (HookX + 0.25 * Stroke) Hook
|
||||||
|
include : HBar.t (Middle + HookX + (0.25 - TanSlope) * Stroke) (2 * Width) Ascender
|
||||||
|
|
||||||
select-variant 'longs' 0x17F
|
select-variant 'longs' 0x17F
|
||||||
|
select-variant 'longs/flatExt' (shapeFrom -- 'longs')
|
||||||
select-variant 'longsbar' 0x1E9D (follow -- 'longs')
|
select-variant 'longsbar' 0x1E9D (follow -- 'longs')
|
||||||
alias 'esh' 0x283 'longs.flatHookTailed'
|
alias 'esh' 0x283 'longs.flatHookTailed'
|
||||||
|
|
||||||
|
|
|
@ -84,11 +84,15 @@ glyph-block Letter-Latin-Lower-F : begin
|
||||||
local topHookExt : match clcStyle
|
local topHookExt : match clcStyle
|
||||||
[Just 1] Width
|
[Just 1] Width
|
||||||
[Just 2] Jut
|
[Just 2] Jut
|
||||||
|
[Just 3] Jut
|
||||||
__ 0
|
__ 0
|
||||||
local topHookHdExt : match clcStyle
|
local topHookHdExt : match clcStyle
|
||||||
[Just 1] 1
|
[Just 1] 1
|
||||||
__ 0
|
__ 0
|
||||||
local crossBarExt : if (clcStyle === 1) Jut 0
|
local crossBarExt : match clcStyle
|
||||||
|
[Just 1] Jut
|
||||||
|
[Just 3] Jut
|
||||||
|
__ 0
|
||||||
|
|
||||||
local barAtCenter : (counterHook === CH-HOOK) || (counterHook === CH-DIAGONAL-HOOK)
|
local barAtCenter : (counterHook === CH-HOOK) || (counterHook === CH-DIAGONAL-HOOK)
|
||||||
local crossLeft : mix 0 df.leftSB m
|
local crossLeft : mix 0 df.leftSB m
|
||||||
|
@ -163,6 +167,12 @@ glyph-block Letter-Latin-Lower-F : begin
|
||||||
'flatHookTailedCLC2' { { [NarrowFShape 2] dfNarrowF } { pNarrowSide fbar CH-HOOK } 'if' }
|
'flatHookTailedCLC2' { { [NarrowFShape 2] dfNarrowF } { pNarrowSide fbar CH-HOOK } 'if' }
|
||||||
'flatHookDiagonalTailedCLC2' { { [NarrowFShape 2] dfNarrowF } { pNarrowSide fbar CH-DIAGONAL-HOOK } 'if' }
|
'flatHookDiagonalTailedCLC2' { { [NarrowFShape 2] dfNarrowF } { pNarrowSide fbar CH-DIAGONAL-HOOK } 'if' }
|
||||||
|
|
||||||
|
'flatHookCLC3' { { [NarrowFShape 3] dfNarrowF } { pNarrowSide fbar CH-NONE } 'b' }
|
||||||
|
'flatHookSerifedCLC3' { { [NarrowFShape 3] dfNarrowF } { pNarrowSide fbar CH-SERIF } 'b' }
|
||||||
|
'flatHookExtendedCLC3' { { [NarrowFShape 3] dfNarrowF } { pNarrowSide fbar CH-EXTENSION } 'if' }
|
||||||
|
'flatHookTailedCLC3' { { [NarrowFShape 3] dfNarrowF } { pNarrowSide fbar CH-HOOK } 'if' }
|
||||||
|
'flatHookDiagonalTailedCLC3' { { [NarrowFShape 3] dfNarrowF } { pNarrowSide fbar CH-DIAGONAL-HOOK } 'if' }
|
||||||
|
|
||||||
foreach { suffix {{Body df} {pBar yBar ch} mk}} [Object.entries SmallFConfig] : do
|
foreach { suffix {{Body df} {pBar yBar ch} mk}} [Object.entries SmallFConfig] : do
|
||||||
create-glyph "f.\(suffix)" : glyph-proc
|
create-glyph "f.\(suffix)" : glyph-proc
|
||||||
set-width df.width
|
set-width df.width
|
||||||
|
@ -186,6 +196,7 @@ glyph-block Letter-Latin-Lower-F : begin
|
||||||
select-variant 'fLTail' 0x192 (shapeFrom -- 'f')
|
select-variant 'fLTail' 0x192 (shapeFrom -- 'f')
|
||||||
select-variant 'f/compLigLeft1' (shapeFrom -- 'f')
|
select-variant 'f/compLigLeft1' (shapeFrom -- 'f')
|
||||||
select-variant 'f/compLigLeft2' (shapeFrom -- 'f')
|
select-variant 'f/compLigLeft2' (shapeFrom -- 'f')
|
||||||
|
select-variant 'f/compLigLeft3' (shapeFrom -- 'f')
|
||||||
select-variant 'f/phoneticLeft' (shapeFrom -- 'f')
|
select-variant 'f/phoneticLeft' (shapeFrom -- 'f')
|
||||||
select-variant 'fPalatalHook' 0x1D82 (follow -- 'f/tailless')
|
select-variant 'fPalatalHook' 0x1D82 (follow -- 'f/tailless')
|
||||||
|
|
||||||
|
|
|
@ -26,8 +26,8 @@ glyph-block Letter-Latin-Lower-T : begin
|
||||||
define Standard : namespace
|
define Standard : namespace
|
||||||
export : define [BarLeftPos df] : xSmallTBarLeftT df
|
export : define [BarLeftPos df] : xSmallTBarLeftT df
|
||||||
|
|
||||||
export : define [HookShapeT sink df offset top bot sw] : begin
|
export : define [HookShapeT sink df fCross offset top bot sw] : begin
|
||||||
local xLeft : xSmallTBarLeftT df
|
local xLeft : if fCross (df.middle - HalfStroke * HVContrast) [xSmallTBarLeftT df]
|
||||||
local hookx : xLeft + [Math.max ((df.width - df.leftSB * 2) * 0.75 + Stroke * 0.25 * HVContrast) (Stroke * HVContrast * 2.25)]
|
local hookx : xLeft + [Math.max ((df.width - df.leftSB * 2) * 0.75 + Stroke * 0.25 * HVContrast) (Stroke * HVContrast * 2.25)]
|
||||||
local turn : [mix xLeft hookx 0.5] + CorrectionOMidS
|
local turn : [mix xLeft hookx 0.5] + CorrectionOMidS
|
||||||
local adb : Math.max Hook ((turn - xLeft) * 1.2)
|
local adb : Math.max Hook ((turn - xLeft) * 1.2)
|
||||||
|
@ -50,7 +50,7 @@ glyph-block Letter-Latin-Lower-T : begin
|
||||||
export : define [Body df top bot] : glyph-proc
|
export : define [Body df top bot] : glyph-proc
|
||||||
include : CrossBar df
|
include : CrossBar df
|
||||||
|
|
||||||
local g : include : HookShapeT dispiro df 0 top bot Stroke
|
local g : include : HookShapeT dispiro df false 0 top bot Stroke
|
||||||
local gEnd g.knots.(g.knots.length - 1)
|
local gEnd g.knots.(g.knots.length - 1)
|
||||||
set-base-anchor 'bottomright' gEnd.x gEnd.y
|
set-base-anchor 'bottomright' gEnd.x gEnd.y
|
||||||
|
|
||||||
|
@ -61,9 +61,13 @@ glyph-block Letter-Latin-Lower-T : begin
|
||||||
|
|
||||||
export : define [Retroflex df top bot] : Flat.Retroflex df top bot
|
export : define [Retroflex df top bot] : Flat.Retroflex df top bot
|
||||||
|
|
||||||
|
export : define [PRBody df top bot] : glyph-proc
|
||||||
|
include : CrossBar df
|
||||||
|
include : HookShapeT dispiro df true 0 top bot Stroke
|
||||||
|
|
||||||
define DiagTail : namespace
|
define DiagTail : namespace
|
||||||
define [HookShape df top bot sw] : begin
|
define [HookShape df fCross top bot sw] : begin
|
||||||
local xMid : [xSmallTBarLeftT df] + HalfStroke * HVContrast
|
local xMid : if fCross df.middle ([xSmallTBarLeftT df] + HalfStroke * HVContrast)
|
||||||
return : dispiro
|
return : dispiro
|
||||||
flat xMid top [widths.center.heading sw Downward]
|
flat xMid top [widths.center.heading sw Downward]
|
||||||
DiagonalTailR df xMid bot [DiagonalTailStdDepth [DivFrame : Math.sqrt df.div] sw] sw
|
DiagonalTailR df xMid bot [DiagonalTailStdDepth [DivFrame : Math.sqrt df.div] sw] sw
|
||||||
|
@ -75,7 +79,7 @@ glyph-block Letter-Latin-Lower-T : begin
|
||||||
export : define [Body df top] : glyph-proc
|
export : define [Body df top] : glyph-proc
|
||||||
include : Standard.CrossBar df
|
include : Standard.CrossBar df
|
||||||
|
|
||||||
local g : include : HookShape df top 0 Stroke
|
local g : include : HookShape df false top 0 Stroke
|
||||||
|
|
||||||
local gEnd g.rhsKnots.(g.rhsKnots.length - 1)
|
local gEnd g.rhsKnots.(g.rhsKnots.length - 1)
|
||||||
set-base-anchor 'bottomright' gEnd.x gEnd.y
|
set-base-anchor 'bottomright' gEnd.x gEnd.y
|
||||||
|
@ -85,39 +89,51 @@ glyph-block Letter-Latin-Lower-T : begin
|
||||||
|
|
||||||
export : define [Retroflex df top bot] : Flat.Retroflex df top bot
|
export : define [Retroflex df top bot] : Flat.Retroflex df top bot
|
||||||
|
|
||||||
|
export : define [PRBody df top] : glyph-proc
|
||||||
|
include : Standard.CrossBar df
|
||||||
|
include : HookShape df true top 0 Stroke
|
||||||
|
|
||||||
define Flat : namespace
|
define Flat : namespace
|
||||||
define [CrossLeft df] : mix 0 df.leftSB [mix 1 df.div 2]
|
define [CrossLeft df] : mix 0 df.leftSB [mix 1 df.div 2]
|
||||||
define [CrossRight df] : mix df.width df.rightSB [mix 1 df.div 2]
|
define [CrossRight df] : mix df.width df.rightSB [mix 1 df.div 2]
|
||||||
|
|
||||||
|
define NORMAL 0
|
||||||
|
define CROSS 1
|
||||||
|
define RETROFLEX 2
|
||||||
|
define PR 3
|
||||||
|
|
||||||
export : define [BarLeftPos df] : [mix [CrossLeft df] [CrossRight df] 0.42] - 0.375 * HVContrast * Stroke
|
export : define [BarLeftPos df] : [mix [CrossLeft df] [CrossRight df] 0.42] - 0.375 * HVContrast * Stroke
|
||||||
|
|
||||||
export : define [Body df top bot] : Impl false false df top bot 0
|
export : define [Body df top bot] : Impl NORMAL df top bot 0
|
||||||
export : define [Retroflex df top bot] : Impl false true df top bot 0
|
export : define [Retroflex df top bot] : Impl CROSS df top bot 0
|
||||||
export : define [CrossRTBody df top bot] : Impl true true df top bot 0
|
export : define [CrossRTBody df top bot] : Impl RETROFLEX df top bot 0
|
||||||
|
export : define [PRBody df top bot] : Impl PR df top bot 0
|
||||||
|
|
||||||
define [Impl fCross fRetroflex df top bot ext] : glyph-proc
|
|
||||||
|
define [Impl shape df top bot ext] : glyph-proc
|
||||||
local xCrossLeft : CrossLeft df
|
local xCrossLeft : CrossLeft df
|
||||||
local xCrossRight : CrossRight df
|
local xCrossRight : CrossRight df
|
||||||
|
|
||||||
local xBarLeft : if fCross [df.middle - 0.5 * HVContrast * Stroke] [BarLeftPos df]
|
local xBarLeft : match shape
|
||||||
|
([Just CROSS] || [Just PR]) : df.middle - 0.5 * HVContrast * Stroke
|
||||||
|
__ : BarLeftPos df
|
||||||
|
|
||||||
local hd : FlatHookDepth df
|
local hd : FlatHookDepth df
|
||||||
define xTailEnd : piecewise
|
define xTailEnd : match shape
|
||||||
fRetroflex : xBarLeft + HookX + HalfStroke * HVContrast
|
[Just RETROFLEX] : xBarLeft + HookX + HalfStroke * HVContrast
|
||||||
fCross : xBarLeft + hd.x
|
__ xCrossRight
|
||||||
true xCrossRight
|
|
||||||
|
|
||||||
include : union
|
include : union
|
||||||
HCrossBar.top xCrossLeft (xCrossRight + ext) yCrossBar
|
HCrossBar.top xCrossLeft (xCrossRight + ext) yCrossBar
|
||||||
dispiro
|
dispiro
|
||||||
widths.rhs
|
widths.rhs
|
||||||
if (fRetroflex || fCross)
|
if (shape === RETROFLEX || shape === CROSS)
|
||||||
straight.left.start xTailEnd bot
|
then : straight.left.start xTailEnd bot
|
||||||
list
|
else : list
|
||||||
flat xCrossRight bot
|
flat xCrossRight bot
|
||||||
curl [Math.min (xBarLeft + hd.x) (xCrossRight - 1)] bot
|
curl [Math.min (xBarLeft + hd.x) (xCrossRight - 1)] bot
|
||||||
archv.superness DesignParameters.tightHookSuperness
|
archv.superness DesignParameters.tightHookSuperness
|
||||||
flat xBarLeft [if fRetroflex (bot + Hook + HalfStroke) hd.y]
|
flat xBarLeft [if (shape === RETROFLEX) (bot + Hook + HalfStroke) hd.y]
|
||||||
curl xBarLeft top [heading Upward]
|
curl xBarLeft top [heading Upward]
|
||||||
|
|
||||||
set-base-anchor 'above' (xBarLeft + 0.5 * Stroke * HVContrast) top
|
set-base-anchor 'above' (xBarLeft + 0.5 * Stroke * HVContrast) top
|
||||||
|
@ -187,6 +203,10 @@ glyph-block Letter-Latin-Lower-T : begin
|
||||||
define xBarLeft : xSmallTBarLeftT df
|
define xBarLeft : xSmallTBarLeftT df
|
||||||
include : HBar.b xBarLeft RightSB 0
|
include : HBar.b xBarLeft RightSB 0
|
||||||
|
|
||||||
|
export : define [PRBody df top bot] : glyph-proc
|
||||||
|
include : VBar.m df.middle 0 top
|
||||||
|
include : HCrossBar.top df.middle (df.middle + df.div * LongJut) yCrossBar
|
||||||
|
|
||||||
define SmallTConfig : object
|
define SmallTConfig : object
|
||||||
standard { [DivFrame 1] Standard Ascender }
|
standard { [DivFrame 1] Standard Ascender }
|
||||||
diagonalTailed { dfNarrowT DiagTail Ascender }
|
diagonalTailed { dfNarrowT DiagTail Ascender }
|
||||||
|
@ -217,6 +237,13 @@ glyph-block Letter-Latin-Lower-T : begin
|
||||||
include : df.markSet.b
|
include : df.markSet.b
|
||||||
include : (Style.PLBody || Style.Body) df top 0
|
include : (Style.PLBody || Style.Body) df top 0
|
||||||
|
|
||||||
|
create-glyph "t/phoneticLeft3.\(suffix)" : glyph-proc
|
||||||
|
set-width df.width
|
||||||
|
include : df.markSet.b
|
||||||
|
include : difference
|
||||||
|
(Style.PRBody || Style.Body) df top 0
|
||||||
|
MaskLeft [mix df.leftSB (df.middle - HVContrast * HalfStroke) 0.5]
|
||||||
|
|
||||||
create-glyph "t/teshLeft.\(suffix)" : glyph-proc
|
create-glyph "t/teshLeft.\(suffix)" : glyph-proc
|
||||||
define df1 : DivFrame 1
|
define df1 : DivFrame 1
|
||||||
set-width df1.width
|
set-width df1.width
|
||||||
|
@ -276,6 +303,7 @@ glyph-block Letter-Latin-Lower-T : begin
|
||||||
select-variant 't/teshLeft' (follow -- 't')
|
select-variant 't/teshLeft' (follow -- 't')
|
||||||
select-variant 't/phoneticLeft1' (shapeFrom -- 't')
|
select-variant 't/phoneticLeft1' (shapeFrom -- 't')
|
||||||
select-variant 't/phoneticLeft2'
|
select-variant 't/phoneticLeft2'
|
||||||
|
select-variant 't/phoneticLeft3'
|
||||||
select-variant 'turnt' 0x287 (follow -- 't')
|
select-variant 'turnt' 0x287 (follow -- 't')
|
||||||
CreateCommaCaronComposition 'tcaron' 0x165 't'
|
CreateCommaCaronComposition 'tcaron' 0x165 't'
|
||||||
derive-glyphs 'tCedilla' 0x163 't' ConnectedCedilla
|
derive-glyphs 'tCedilla' 0x163 't' ConnectedCedilla
|
||||||
|
@ -350,10 +378,10 @@ glyph-block Letter-Latin-Lower-T : begin
|
||||||
define df : DivFrame 1
|
define df : DivFrame 1
|
||||||
define xLeft : xSmallTBarLeftT df
|
define xLeft : xSmallTBarLeftT df
|
||||||
include : HBar.t xLeft (xLeft + BBD) Ascender BBS
|
include : HBar.t xLeft (xLeft + BBD) Ascender BBS
|
||||||
include : Standard.HookShapeT dispiro df 0 Ascender 0 BBS
|
include : Standard.HookShapeT dispiro df false 0 Ascender 0 BBS
|
||||||
include : intersection
|
include : intersection
|
||||||
VBar.l (xLeft + BBD) 0 Ascender BBS
|
VBar.l (xLeft + BBD) 0 Ascender BBS
|
||||||
Standard.HookShapeT spiro-outline df 1 Ascender 0 BBS
|
Standard.HookShapeT spiro-outline df false 1 Ascender 0 BBS
|
||||||
include : difference
|
include : difference
|
||||||
HCrossBar.top
|
HCrossBar.top
|
||||||
xLeft + (BBD / 2) - LongJut + TBalance2
|
xLeft + (BBD / 2) - LongJut + TBalance2
|
||||||
|
|
|
@ -11,7 +11,8 @@ glyph-block Letter-Latin-S : begin
|
||||||
glyph-block-import Mark-Adjustment : ExtendBelowBaseAnchors
|
glyph-block-import Mark-Adjustment : ExtendBelowBaseAnchors
|
||||||
glyph-block-import Letter-Shared : CreateAccentedComposition CreateDependentComposite
|
glyph-block-import Letter-Shared : CreateAccentedComposition CreateDependentComposite
|
||||||
glyph-block-import Letter-Blackboard : BBS BBD
|
glyph-block-import Letter-Blackboard : BBS BBD
|
||||||
glyph-block-import Letter-Shared-Shapes : DToothlessRise FlatHookDepth ArcStartSerifWidth
|
glyph-block-import Letter-Shared-Shapes : DToothlessRise FlatHookDepth
|
||||||
|
glyph-block-import Letter-Shared-Shapes : ArcStartSerifWidth ArcStartSerifDepth
|
||||||
glyph-block-import Letter-Shared-Shapes : SerifedArcStart SerifedArcEnd
|
glyph-block-import Letter-Shared-Shapes : SerifedArcStart SerifedArcEnd
|
||||||
glyph-block-import Letter-Shared-Shapes : ArcStartSerif ArcEndSerif
|
glyph-block-import Letter-Shared-Shapes : ArcStartSerif ArcEndSerif
|
||||||
glyph-block-import Letter-Shared-Shapes : PalatalHook RetroflexHook CyrDescender
|
glyph-block-import Letter-Shared-Shapes : PalatalHook RetroflexHook CyrDescender
|
||||||
|
@ -337,6 +338,7 @@ glyph-block Letter-Latin-S : begin
|
||||||
select-variant 'sSwash' 0x23F
|
select-variant 'sSwash' 0x23F
|
||||||
|
|
||||||
select-variant 'S/descBase' (shapeFrom -- 'S') (follow -- 'SRTail')
|
select-variant 'S/descBase' (shapeFrom -- 'S') (follow -- 'SRTail')
|
||||||
|
select-variant 's/ascBase' (shapeFrom -- 's')
|
||||||
select-variant 's/descBase' (shapeFrom -- 's') (follow -- 'sRTail')
|
select-variant 's/descBase' (shapeFrom -- 's') (follow -- 'sRTail')
|
||||||
select-variant 'revs/descBase' (shapeFrom -- 'revs') (follow -- 'sRTail')
|
select-variant 'revs/descBase' (shapeFrom -- 'revs') (follow -- 'sRTail')
|
||||||
|
|
||||||
|
@ -361,6 +363,24 @@ glyph-block Letter-Latin-S : begin
|
||||||
y -- 0
|
y -- 0
|
||||||
yAttach -- [mix O [AdviceSArchDepth XH (-1) [AdviceStroke2 2 3 XH]] : archv.yFromX 0.75]
|
yAttach -- [mix O [AdviceSArchDepth XH (-1) [AdviceStroke2 2 3 XH]] : archv.yFromX 0.75]
|
||||||
|
|
||||||
|
derive-composites "s/compLigLeft" null "s/ascBase" : glyph-proc
|
||||||
|
eject-contour 'arcStartSerifR'
|
||||||
|
local sw : ArcStartSerifWidth [AdviceStroke2 2 3 XH]
|
||||||
|
local fine : sw * [mix CThinB 1 0.6]
|
||||||
|
local hd : FlatHookDepth [DivFrame 1]
|
||||||
|
local yStart : XH - [ArcStartSerifDepth SHook]
|
||||||
|
local neckLength : 0.5 * Stroke
|
||||||
|
local leftExt : 0.3 * (RightSB - SB) - 0.25 * HVContrast * sw
|
||||||
|
include : dispiro
|
||||||
|
widths.rhs fine
|
||||||
|
flat (RightSB - fine * HVContrast) yStart [heading Upward]
|
||||||
|
curl (RightSB - fine * HVContrast) (yStart + neckLength) [heading Upward]
|
||||||
|
alsoThru.g2 0.5 0.5 [widths.center [mix fine sw 0.35]]
|
||||||
|
g4 (RightSB - leftExt) [Math.min ([mix XH Ascender 0.5]) (Ascender - 1.375 * sw)] [widths.lhs : mix fine sw 0.7]
|
||||||
|
arcvh
|
||||||
|
flat RightSB Ascender [widths.rhs.heading sw Rightward]
|
||||||
|
curl (4 * Width) Ascender [widths.rhs.heading sw Rightward]
|
||||||
|
|
||||||
CreateAccentedComposition 'sTildeOver' 0x1D74 's' 'tildeOverWide'
|
CreateAccentedComposition 'sTildeOver' 0x1D74 's' 'tildeOverWide'
|
||||||
|
|
||||||
derive-composites 'SCedilla' 0x15E 'S' 'cedillaExtShapeBelowOArc'
|
derive-composites 'SCedilla' 0x15E 'S' 'cedillaExtShapeBelowOArc'
|
||||||
|
|
|
@ -475,26 +475,26 @@ glyph-block Letter-Shared-Shapes : begin
|
||||||
glyph-block-export : ArcStartSerif
|
glyph-block-export : ArcStartSerif
|
||||||
define ArcStartSerif : namespace
|
define ArcStartSerif : namespace
|
||||||
export : define [L cx cy stroke hook overflow] : begin
|
export : define [L cx cy stroke hook overflow] : begin
|
||||||
return : VBar.l cx (cy - hook + O * 2) (cy + [fallback overflow 0]) [ArcStartSerifWidth stroke]
|
return : tagged 'arcStartSerifL' : VBar.l cx (cy - hook + O * 2) (cy + [fallback overflow 0]) [ArcStartSerifWidth stroke]
|
||||||
export : define [R cx cy stroke hook overflow] : begin
|
export : define [R cx cy stroke hook overflow] : begin
|
||||||
return : VBar.r cx (cy - hook + O * 2) (cy + [fallback overflow 0]) [ArcStartSerifWidth stroke]
|
return : tagged 'arcStartSerifR' : VBar.r cx (cy - hook + O * 2) (cy + [fallback overflow 0]) [ArcStartSerifWidth stroke]
|
||||||
|
|
||||||
export : define [InwardL cx cy stroke hook] : begin
|
export : define [InwardL cx cy stroke hook] : begin
|
||||||
return : VBar.l cx (cy - hook - DToothlessRise / 3) (cy - DToothlessRise) [ArcStartSerifWidth stroke]
|
return : tagged 'arcStartSerifL' : VBar.l cx (cy - hook - DToothlessRise / 3) (cy - DToothlessRise) [ArcStartSerifWidth stroke]
|
||||||
export : define [InwardR cx cy stroke hook] : begin
|
export : define [InwardR cx cy stroke hook] : begin
|
||||||
return : VBar.r cx (cy - hook - DToothlessRise / 3) (cy - DToothlessRise) [ArcStartSerifWidth stroke]
|
return : tagged 'arcStartSerifR' : VBar.r cx (cy - hook - DToothlessRise / 3) (cy - DToothlessRise) [ArcStartSerifWidth stroke]
|
||||||
|
|
||||||
glyph-block-export : ArcEndSerif
|
glyph-block-export : ArcEndSerif
|
||||||
define ArcEndSerif : namespace
|
define ArcEndSerif : namespace
|
||||||
export : define [L cx cy stroke hook overflow] : begin
|
export : define [L cx cy stroke hook overflow] : begin
|
||||||
return : VBar.l cx (cy + hook - O * 2) (cy - [fallback overflow 0]) [ArcStartSerifWidth stroke]
|
return : tagged 'arcEndSerifL' : VBar.l cx (cy + hook - O * 2) (cy - [fallback overflow 0]) [ArcStartSerifWidth stroke]
|
||||||
export : define [R cx cy stroke hook overflow] : begin
|
export : define [R cx cy stroke hook overflow] : begin
|
||||||
return : VBar.r cx (cy + hook - O * 2) (cy - [fallback overflow 0]) [ArcStartSerifWidth stroke]
|
return : tagged 'arcEndSerifR' : VBar.r cx (cy + hook - O * 2) (cy - [fallback overflow 0]) [ArcStartSerifWidth stroke]
|
||||||
|
|
||||||
export : define [InwardL cx cy stroke hook] : begin
|
export : define [InwardL cx cy stroke hook] : begin
|
||||||
return : VBar.l cx (cy + hook + DToothlessRise / 2) (cy + DToothlessRise) [ArcStartSerifWidth stroke]
|
return : tagged 'arcEndSerifL' : VBar.l cx (cy + hook + DToothlessRise / 2) (cy + DToothlessRise) [ArcStartSerifWidth stroke]
|
||||||
export : define [InwardR cx cy stroke hook] : begin
|
export : define [InwardR cx cy stroke hook] : begin
|
||||||
return : VBar.r cx (cy + hook + DToothlessRise / 2) (cy + DToothlessRise) [ArcStartSerifWidth stroke]
|
return : tagged 'arcEndSerifR' : VBar.r cx (cy + hook + DToothlessRise / 2) (cy + DToothlessRise) [ArcStartSerifWidth stroke]
|
||||||
|
|
||||||
glyph-block-export ArcStartHookTop
|
glyph-block-export ArcStartHookTop
|
||||||
define [ArcStartHookTop cx cy stroke hookX hookY] : begin
|
define [ArcStartHookTop cx cy stroke hookX hookY] : begin
|
||||||
|
|
|
@ -2169,6 +2169,7 @@ selector.f = "serifless"
|
||||||
selector."f/sansSerif" = "serifless"
|
selector."f/sansSerif" = "serifless"
|
||||||
selector."f/compLigLeft1" = "flatHookCLC1"
|
selector."f/compLigLeft1" = "flatHookCLC1"
|
||||||
selector."f/compLigLeft2" = "flatHookCLC2"
|
selector."f/compLigLeft2" = "flatHookCLC2"
|
||||||
|
selector."f/compLigLeft3" = "flatHookCLC3"
|
||||||
selector."f/phoneticLeft" = "seriflessCrossbarAtXHeight"
|
selector."f/phoneticLeft" = "seriflessCrossbarAtXHeight"
|
||||||
selector."f/tailless" = "serifless"
|
selector."f/tailless" = "serifless"
|
||||||
selector.fLenis = "serifless"
|
selector.fLenis = "serifless"
|
||||||
|
@ -2182,6 +2183,7 @@ selector.f = "serifed"
|
||||||
selector."f/sansSerif" = "serifless"
|
selector."f/sansSerif" = "serifless"
|
||||||
selector."f/compLigLeft1" = "flatHookSerifedCLC1"
|
selector."f/compLigLeft1" = "flatHookSerifedCLC1"
|
||||||
selector."f/compLigLeft2" = "flatHookSerifedCLC2"
|
selector."f/compLigLeft2" = "flatHookSerifedCLC2"
|
||||||
|
selector."f/compLigLeft3" = "flatHookSerifedCLC3"
|
||||||
selector."f/phoneticLeft" = "serifedCrossbarAtXHeight"
|
selector."f/phoneticLeft" = "serifedCrossbarAtXHeight"
|
||||||
selector."f/tailless" = "serifed"
|
selector."f/tailless" = "serifed"
|
||||||
selector.fLenis = "serifless"
|
selector.fLenis = "serifless"
|
||||||
|
@ -2195,6 +2197,7 @@ selector.f = "tailed"
|
||||||
selector."f/sansSerif" = "tailed"
|
selector."f/sansSerif" = "tailed"
|
||||||
selector."f/compLigLeft1" = "flatHookTailedCLC1"
|
selector."f/compLigLeft1" = "flatHookTailedCLC1"
|
||||||
selector."f/compLigLeft2" = "flatHookTailedCLC2"
|
selector."f/compLigLeft2" = "flatHookTailedCLC2"
|
||||||
|
selector."f/compLigLeft3" = "flatHookTailedCLC3"
|
||||||
selector."f/phoneticLeft" = "tailedCrossbarAtXHeight"
|
selector."f/phoneticLeft" = "tailedCrossbarAtXHeight"
|
||||||
selector."f/tailless" = "serifless"
|
selector."f/tailless" = "serifless"
|
||||||
selector.fLenis = "serifless"
|
selector.fLenis = "serifless"
|
||||||
|
@ -2208,6 +2211,7 @@ selector.f = "extended"
|
||||||
selector."f/sansSerif" = "extended"
|
selector."f/sansSerif" = "extended"
|
||||||
selector."f/compLigLeft1" = "flatHookExtendedCLC1"
|
selector."f/compLigLeft1" = "flatHookExtendedCLC1"
|
||||||
selector."f/compLigLeft2" = "flatHookExtendedCLC2"
|
selector."f/compLigLeft2" = "flatHookExtendedCLC2"
|
||||||
|
selector."f/compLigLeft3" = "flatHookExtendedCLC3"
|
||||||
selector."f/phoneticLeft" = "extendedCrossbarAtXHeight"
|
selector."f/phoneticLeft" = "extendedCrossbarAtXHeight"
|
||||||
selector."f/tailless" = "serifless"
|
selector."f/tailless" = "serifless"
|
||||||
selector.fLenis = "serifless"
|
selector.fLenis = "serifless"
|
||||||
|
@ -2221,6 +2225,7 @@ selector.f = "diagonalTailed"
|
||||||
selector."f/sansSerif" = "diagonalTailed"
|
selector."f/sansSerif" = "diagonalTailed"
|
||||||
selector."f/compLigLeft1" = "flatHookDiagonalTailedCLC1"
|
selector."f/compLigLeft1" = "flatHookDiagonalTailedCLC1"
|
||||||
selector."f/compLigLeft2" = "flatHookDiagonalTailedCLC2"
|
selector."f/compLigLeft2" = "flatHookDiagonalTailedCLC2"
|
||||||
|
selector."f/compLigLeft3" = "flatHookDiagonalTailedCLC3"
|
||||||
selector."f/phoneticLeft" = "diagonalTailedCrossbarAtXHeight"
|
selector."f/phoneticLeft" = "diagonalTailedCrossbarAtXHeight"
|
||||||
selector."f/tailless" = "serifless"
|
selector."f/tailless" = "serifless"
|
||||||
selector.fLenis = "serifless"
|
selector.fLenis = "serifless"
|
||||||
|
@ -2234,6 +2239,7 @@ selector.f = "seriflessCrossbarAtXHeight"
|
||||||
selector."f/sansSerif" = "seriflessCrossbarAtXHeight"
|
selector."f/sansSerif" = "seriflessCrossbarAtXHeight"
|
||||||
selector."f/compLigLeft1" = "flatHookCLC1"
|
selector."f/compLigLeft1" = "flatHookCLC1"
|
||||||
selector."f/compLigLeft2" = "flatHookCLC2"
|
selector."f/compLigLeft2" = "flatHookCLC2"
|
||||||
|
selector."f/compLigLeft3" = "flatHookCLC3"
|
||||||
selector."f/phoneticLeft" = "seriflessCrossbarAtXHeight"
|
selector."f/phoneticLeft" = "seriflessCrossbarAtXHeight"
|
||||||
selector."f/tailless" = "seriflessCrossbarAtXHeight"
|
selector."f/tailless" = "seriflessCrossbarAtXHeight"
|
||||||
selector.fLenis = "seriflessCrossbarAtXHeight"
|
selector.fLenis = "seriflessCrossbarAtXHeight"
|
||||||
|
@ -2247,6 +2253,7 @@ selector.f = "serifedCrossbarAtXHeight"
|
||||||
selector."f/sansSerif" = "seriflessCrossbarAtXHeight"
|
selector."f/sansSerif" = "seriflessCrossbarAtXHeight"
|
||||||
selector."f/compLigLeft1" = "flatHookSerifedCLC1"
|
selector."f/compLigLeft1" = "flatHookSerifedCLC1"
|
||||||
selector."f/compLigLeft2" = "flatHookSerifedCLC2"
|
selector."f/compLigLeft2" = "flatHookSerifedCLC2"
|
||||||
|
selector."f/compLigLeft3" = "flatHookSerifedCLC3"
|
||||||
selector."f/phoneticLeft" = "serifedCrossbarAtXHeight"
|
selector."f/phoneticLeft" = "serifedCrossbarAtXHeight"
|
||||||
selector."f/tailless" = "serifedCrossbarAtXHeight"
|
selector."f/tailless" = "serifedCrossbarAtXHeight"
|
||||||
selector.fLenis = "seriflessCrossbarAtXHeight"
|
selector.fLenis = "seriflessCrossbarAtXHeight"
|
||||||
|
@ -2260,6 +2267,7 @@ selector.f = "tailedCrossbarAtXHeight"
|
||||||
selector."f/sansSerif" = "tailedCrossbarAtXHeight"
|
selector."f/sansSerif" = "tailedCrossbarAtXHeight"
|
||||||
selector."f/compLigLeft1" = "flatHookTailedCLC1"
|
selector."f/compLigLeft1" = "flatHookTailedCLC1"
|
||||||
selector."f/compLigLeft2" = "flatHookTailedCLC2"
|
selector."f/compLigLeft2" = "flatHookTailedCLC2"
|
||||||
|
selector."f/compLigLeft3" = "flatHookTailedCLC3"
|
||||||
selector."f/phoneticLeft" = "tailedCrossbarAtXHeight"
|
selector."f/phoneticLeft" = "tailedCrossbarAtXHeight"
|
||||||
selector."f/tailless" = "seriflessCrossbarAtXHeight"
|
selector."f/tailless" = "seriflessCrossbarAtXHeight"
|
||||||
selector.fLenis = "seriflessCrossbarAtXHeight"
|
selector.fLenis = "seriflessCrossbarAtXHeight"
|
||||||
|
@ -2273,6 +2281,7 @@ selector.f = "extendedCrossbarAtXHeight"
|
||||||
selector."f/sansSerif" = "extendedCrossbarAtXHeight"
|
selector."f/sansSerif" = "extendedCrossbarAtXHeight"
|
||||||
selector."f/compLigLeft1" = "flatHookExtendedCLC1"
|
selector."f/compLigLeft1" = "flatHookExtendedCLC1"
|
||||||
selector."f/compLigLeft2" = "flatHookExtendedCLC2"
|
selector."f/compLigLeft2" = "flatHookExtendedCLC2"
|
||||||
|
selector."f/compLigLeft3" = "flatHookExtendedCLC3"
|
||||||
selector."f/phoneticLeft" = "extendedCrossbarAtXHeight"
|
selector."f/phoneticLeft" = "extendedCrossbarAtXHeight"
|
||||||
selector."f/tailless" = "seriflessCrossbarAtXHeight"
|
selector."f/tailless" = "seriflessCrossbarAtXHeight"
|
||||||
selector.fLenis = "seriflessCrossbarAtXHeight"
|
selector.fLenis = "seriflessCrossbarAtXHeight"
|
||||||
|
@ -2286,6 +2295,7 @@ selector.f = "diagonalTailedCrossbarAtXHeight"
|
||||||
selector."f/sansSerif" = "diagonalTailedCrossbarAtXHeight"
|
selector."f/sansSerif" = "diagonalTailedCrossbarAtXHeight"
|
||||||
selector."f/compLigLeft1" = "flatHookDiagonalTailedCLC1"
|
selector."f/compLigLeft1" = "flatHookDiagonalTailedCLC1"
|
||||||
selector."f/compLigLeft2" = "flatHookDiagonalTailedCLC2"
|
selector."f/compLigLeft2" = "flatHookDiagonalTailedCLC2"
|
||||||
|
selector."f/compLigLeft3" = "flatHookDiagonalTailedCLC3"
|
||||||
selector."f/phoneticLeft" = "diagonalTailedCrossbarAtXHeight"
|
selector."f/phoneticLeft" = "diagonalTailedCrossbarAtXHeight"
|
||||||
selector."f/tailless" = "seriflessCrossbarAtXHeight"
|
selector."f/tailless" = "seriflessCrossbarAtXHeight"
|
||||||
selector.fLenis = "seriflessCrossbarAtXHeight"
|
selector.fLenis = "seriflessCrossbarAtXHeight"
|
||||||
|
@ -2299,6 +2309,7 @@ selector.f = "flatHook"
|
||||||
selector."f/sansSerif" = "flatHook"
|
selector."f/sansSerif" = "flatHook"
|
||||||
selector."f/compLigLeft1" = "flatHookCLC1"
|
selector."f/compLigLeft1" = "flatHookCLC1"
|
||||||
selector."f/compLigLeft2" = "flatHookCLC2"
|
selector."f/compLigLeft2" = "flatHookCLC2"
|
||||||
|
selector."f/compLigLeft3" = "flatHookCLC3"
|
||||||
selector."f/phoneticLeft" = "flatHookCrossbarAtXHeight"
|
selector."f/phoneticLeft" = "flatHookCrossbarAtXHeight"
|
||||||
selector."f/tailless" = "flatHook"
|
selector."f/tailless" = "flatHook"
|
||||||
selector.fLenis = "flatHook"
|
selector.fLenis = "flatHook"
|
||||||
|
@ -2312,6 +2323,7 @@ selector.f = "flatHookSerifed"
|
||||||
selector."f/sansSerif" = "flatHook"
|
selector."f/sansSerif" = "flatHook"
|
||||||
selector."f/compLigLeft1" = "flatHookSerifedCLC1"
|
selector."f/compLigLeft1" = "flatHookSerifedCLC1"
|
||||||
selector."f/compLigLeft2" = "flatHookSerifedCLC2"
|
selector."f/compLigLeft2" = "flatHookSerifedCLC2"
|
||||||
|
selector."f/compLigLeft3" = "flatHookSerifedCLC3"
|
||||||
selector."f/phoneticLeft" = "flatHookSerifedCrossbarAtXHeight"
|
selector."f/phoneticLeft" = "flatHookSerifedCrossbarAtXHeight"
|
||||||
selector."f/tailless" = "flatHookSerifed"
|
selector."f/tailless" = "flatHookSerifed"
|
||||||
selector.fLenis = "flatHook"
|
selector.fLenis = "flatHook"
|
||||||
|
@ -2325,6 +2337,7 @@ selector.f = "flatHookTailed"
|
||||||
selector."f/sansSerif" = "flatHookTailed"
|
selector."f/sansSerif" = "flatHookTailed"
|
||||||
selector."f/compLigLeft1" = "flatHookTailedCLC1"
|
selector."f/compLigLeft1" = "flatHookTailedCLC1"
|
||||||
selector."f/compLigLeft2" = "flatHookTailedCLC2"
|
selector."f/compLigLeft2" = "flatHookTailedCLC2"
|
||||||
|
selector."f/compLigLeft3" = "flatHookTailedCLC3"
|
||||||
selector."f/phoneticLeft" = "flatHookTailedCrossbarAtXHeight"
|
selector."f/phoneticLeft" = "flatHookTailedCrossbarAtXHeight"
|
||||||
selector."f/tailless" = "flatHook"
|
selector."f/tailless" = "flatHook"
|
||||||
selector.fLenis = "flatHook"
|
selector.fLenis = "flatHook"
|
||||||
|
@ -2338,6 +2351,7 @@ selector.f = "flatHookExtended"
|
||||||
selector."f/sansSerif" = "flatHookExtended"
|
selector."f/sansSerif" = "flatHookExtended"
|
||||||
selector."f/compLigLeft1" = "flatHookExtendedCLC1"
|
selector."f/compLigLeft1" = "flatHookExtendedCLC1"
|
||||||
selector."f/compLigLeft2" = "flatHookExtendedCLC2"
|
selector."f/compLigLeft2" = "flatHookExtendedCLC2"
|
||||||
|
selector."f/compLigLeft3" = "flatHookExtendedCLC3"
|
||||||
selector."f/phoneticLeft" = "flatHookExtendedCrossbarAtXHeight"
|
selector."f/phoneticLeft" = "flatHookExtendedCrossbarAtXHeight"
|
||||||
selector."f/tailless" = "flatHook"
|
selector."f/tailless" = "flatHook"
|
||||||
selector.fLenis = "flatHook"
|
selector.fLenis = "flatHook"
|
||||||
|
@ -2351,6 +2365,7 @@ selector.f = "flatHookDiagonalTailed"
|
||||||
selector."f/sansSerif" = "flatHookDiagonalTailed"
|
selector."f/sansSerif" = "flatHookDiagonalTailed"
|
||||||
selector."f/compLigLeft1" = "flatHookDiagonalTailedCLC1"
|
selector."f/compLigLeft1" = "flatHookDiagonalTailedCLC1"
|
||||||
selector."f/compLigLeft2" = "flatHookDiagonalTailedCLC2"
|
selector."f/compLigLeft2" = "flatHookDiagonalTailedCLC2"
|
||||||
|
selector."f/compLigLeft3" = "flatHookDiagonalTailedCLC3"
|
||||||
selector."f/phoneticLeft" = "flatHookDiagonalTailedCrossbarAtXHeight"
|
selector."f/phoneticLeft" = "flatHookDiagonalTailedCrossbarAtXHeight"
|
||||||
selector."f/tailless" = "flatHook"
|
selector."f/tailless" = "flatHook"
|
||||||
selector.fLenis = "flatHook"
|
selector.fLenis = "flatHook"
|
||||||
|
@ -2364,6 +2379,7 @@ selector.f = "flatHookCrossbarAtXHeight"
|
||||||
selector."f/sansSerif" = "flatHookCrossbarAtXHeight"
|
selector."f/sansSerif" = "flatHookCrossbarAtXHeight"
|
||||||
selector."f/compLigLeft1" = "flatHookCLC1"
|
selector."f/compLigLeft1" = "flatHookCLC1"
|
||||||
selector."f/compLigLeft2" = "flatHookCLC2"
|
selector."f/compLigLeft2" = "flatHookCLC2"
|
||||||
|
selector."f/compLigLeft3" = "flatHookCLC3"
|
||||||
selector."f/phoneticLeft" = "flatHookCrossbarAtXHeight"
|
selector."f/phoneticLeft" = "flatHookCrossbarAtXHeight"
|
||||||
selector."f/tailless" = "flatHookCrossbarAtXHeight"
|
selector."f/tailless" = "flatHookCrossbarAtXHeight"
|
||||||
selector.fLenis = "flatHookCrossbarAtXHeight"
|
selector.fLenis = "flatHookCrossbarAtXHeight"
|
||||||
|
@ -2377,6 +2393,7 @@ selector.f = "flatHookSerifedCrossbarAtXHeight"
|
||||||
selector."f/sansSerif" = "flatHookCrossbarAtXHeight"
|
selector."f/sansSerif" = "flatHookCrossbarAtXHeight"
|
||||||
selector."f/compLigLeft1" = "flatHookSerifedCLC1"
|
selector."f/compLigLeft1" = "flatHookSerifedCLC1"
|
||||||
selector."f/compLigLeft2" = "flatHookSerifedCLC2"
|
selector."f/compLigLeft2" = "flatHookSerifedCLC2"
|
||||||
|
selector."f/compLigLeft3" = "flatHookSerifedCLC3"
|
||||||
selector."f/phoneticLeft" = "flatHookSerifedCrossbarAtXHeight"
|
selector."f/phoneticLeft" = "flatHookSerifedCrossbarAtXHeight"
|
||||||
selector."f/tailless" = "flatHookSerifedCrossbarAtXHeight"
|
selector."f/tailless" = "flatHookSerifedCrossbarAtXHeight"
|
||||||
selector.fLenis = "flatHookCrossbarAtXHeight"
|
selector.fLenis = "flatHookCrossbarAtXHeight"
|
||||||
|
@ -2390,6 +2407,7 @@ selector.f = "flatHookTailedCrossbarAtXHeight"
|
||||||
selector."f/sansSerif" = "flatHookTailedCrossbarAtXHeight"
|
selector."f/sansSerif" = "flatHookTailedCrossbarAtXHeight"
|
||||||
selector."f/compLigLeft1" = "flatHookTailedCLC1"
|
selector."f/compLigLeft1" = "flatHookTailedCLC1"
|
||||||
selector."f/compLigLeft2" = "flatHookTailedCLC2"
|
selector."f/compLigLeft2" = "flatHookTailedCLC2"
|
||||||
|
selector."f/compLigLeft3" = "flatHookTailedCLC3"
|
||||||
selector."f/phoneticLeft" = "flatHookTailedCrossbarAtXHeight"
|
selector."f/phoneticLeft" = "flatHookTailedCrossbarAtXHeight"
|
||||||
selector."f/tailless" = "flatHookCrossbarAtXHeight"
|
selector."f/tailless" = "flatHookCrossbarAtXHeight"
|
||||||
selector.fLenis = "flatHookCrossbarAtXHeight"
|
selector.fLenis = "flatHookCrossbarAtXHeight"
|
||||||
|
@ -2403,6 +2421,7 @@ selector.f = "flatHookExtendedCrossbarAtXHeight"
|
||||||
selector."f/sansSerif" = "flatHookExtendedCrossbarAtXHeight"
|
selector."f/sansSerif" = "flatHookExtendedCrossbarAtXHeight"
|
||||||
selector."f/compLigLeft1" = "flatHookExtendedCLC1"
|
selector."f/compLigLeft1" = "flatHookExtendedCLC1"
|
||||||
selector."f/compLigLeft2" = "flatHookExtendedCLC2"
|
selector."f/compLigLeft2" = "flatHookExtendedCLC2"
|
||||||
|
selector."f/compLigLeft3" = "flatHookExtendedCLC3"
|
||||||
selector."f/phoneticLeft" = "flatHookExtendedCrossbarAtXHeight"
|
selector."f/phoneticLeft" = "flatHookExtendedCrossbarAtXHeight"
|
||||||
selector."f/tailless" = "flatHookCrossbarAtXHeight"
|
selector."f/tailless" = "flatHookCrossbarAtXHeight"
|
||||||
selector.fLenis = "flatHookCrossbarAtXHeight"
|
selector.fLenis = "flatHookCrossbarAtXHeight"
|
||||||
|
@ -2416,6 +2435,7 @@ selector.f = "flatHookDiagonalTailedCrossbarAtXHeight"
|
||||||
selector."f/sansSerif" = "flatHookDiagonalTailedCrossbarAtXHeight"
|
selector."f/sansSerif" = "flatHookDiagonalTailedCrossbarAtXHeight"
|
||||||
selector."f/compLigLeft1" = "flatHookDiagonalTailedCLC1"
|
selector."f/compLigLeft1" = "flatHookDiagonalTailedCLC1"
|
||||||
selector."f/compLigLeft2" = "flatHookDiagonalTailedCLC2"
|
selector."f/compLigLeft2" = "flatHookDiagonalTailedCLC2"
|
||||||
|
selector."f/compLigLeft3" = "flatHookDiagonalTailedCLC3"
|
||||||
selector."f/phoneticLeft" = "flatHookDiagonalTailedCrossbarAtXHeight"
|
selector."f/phoneticLeft" = "flatHookDiagonalTailedCrossbarAtXHeight"
|
||||||
selector."f/tailless" = "flatHookCrossbarAtXHeight"
|
selector."f/tailless" = "flatHookCrossbarAtXHeight"
|
||||||
selector.fLenis = "flatHookCrossbarAtXHeight"
|
selector.fLenis = "flatHookCrossbarAtXHeight"
|
||||||
|
@ -3769,6 +3789,7 @@ selector.s = "serifless"
|
||||||
selector."s/sansSerif" = "serifless"
|
selector."s/sansSerif" = "serifless"
|
||||||
selector."s/phoneticRight" = "serifless"
|
selector."s/phoneticRight" = "serifless"
|
||||||
selector."tsLig/lowerHalf" = "serifless"
|
selector."tsLig/lowerHalf" = "serifless"
|
||||||
|
selector."s/ascBase" = "unilateralSerifed"
|
||||||
selector.sSwash = "serifless"
|
selector.sSwash = "serifless"
|
||||||
selector.sRTail = "bottomSerifed"
|
selector.sRTail = "bottomSerifed"
|
||||||
|
|
||||||
|
@ -3779,6 +3800,7 @@ selector.s = "unilateralSerifed"
|
||||||
selector."s/sansSerif" = "serifless"
|
selector."s/sansSerif" = "serifless"
|
||||||
selector."s/phoneticRight" = "unilateralSerifed"
|
selector."s/phoneticRight" = "unilateralSerifed"
|
||||||
selector."tsLig/lowerHalf" = "serifless"
|
selector."tsLig/lowerHalf" = "serifless"
|
||||||
|
selector."s/ascBase" = "unilateralSerifed"
|
||||||
selector.sSwash = "unilateralSerifed"
|
selector.sSwash = "unilateralSerifed"
|
||||||
selector.sRTail = "bilateralSerifed"
|
selector.sRTail = "bilateralSerifed"
|
||||||
|
|
||||||
|
@ -3789,6 +3811,7 @@ selector.s = "bilateralSerifed"
|
||||||
selector."s/sansSerif" = "serifless"
|
selector."s/sansSerif" = "serifless"
|
||||||
selector."s/phoneticRight" = "unilateralSerifed"
|
selector."s/phoneticRight" = "unilateralSerifed"
|
||||||
selector."tsLig/lowerHalf" = "bilateralSerifed"
|
selector."tsLig/lowerHalf" = "bilateralSerifed"
|
||||||
|
selector."s/ascBase" = "bilateralSerifed"
|
||||||
selector.sSwash = "unilateralSerifed"
|
selector.sSwash = "unilateralSerifed"
|
||||||
selector.sRTail = "bilateralSerifed"
|
selector.sRTail = "bilateralSerifed"
|
||||||
|
|
||||||
|
@ -3799,6 +3822,7 @@ selector.s = "unilateralInwardSerifed"
|
||||||
selector."s/sansSerif" = "serifless"
|
selector."s/sansSerif" = "serifless"
|
||||||
selector."s/phoneticRight" = "unilateralInwardSerifed"
|
selector."s/phoneticRight" = "unilateralInwardSerifed"
|
||||||
selector."tsLig/lowerHalf" = "serifless"
|
selector."tsLig/lowerHalf" = "serifless"
|
||||||
|
selector."s/ascBase" = "unilateralInwardSerifed"
|
||||||
selector.sSwash = "unilateralInwardSerifed"
|
selector.sSwash = "unilateralInwardSerifed"
|
||||||
selector.sRTail = "hybridSerifed1"
|
selector.sRTail = "hybridSerifed1"
|
||||||
|
|
||||||
|
@ -3809,6 +3833,7 @@ selector.s = "bilateralInwardSerifed"
|
||||||
selector."s/sansSerif" = "serifless"
|
selector."s/sansSerif" = "serifless"
|
||||||
selector."s/phoneticRight" = "unilateralInwardSerifed"
|
selector."s/phoneticRight" = "unilateralInwardSerifed"
|
||||||
selector."tsLig/lowerHalf" = "bilateralInwardSerifed"
|
selector."tsLig/lowerHalf" = "bilateralInwardSerifed"
|
||||||
|
selector."s/ascBase" = "bilateralInwardSerifed"
|
||||||
selector.sSwash = "unilateralInwardSerifed"
|
selector.sSwash = "unilateralInwardSerifed"
|
||||||
selector.sRTail = "bilateralInwardSerifed"
|
selector.sRTail = "bilateralInwardSerifed"
|
||||||
|
|
||||||
|
@ -3824,6 +3849,7 @@ description = "Standard `t` shape"
|
||||||
selector.t = "standard"
|
selector.t = "standard"
|
||||||
selector."t/phoneticLeft1" = "flatHook"
|
selector."t/phoneticLeft1" = "flatHook"
|
||||||
selector."t/phoneticLeft2" = "flatHook"
|
selector."t/phoneticLeft2" = "flatHook"
|
||||||
|
selector."t/phoneticLeft3" = "standard"
|
||||||
selector.tHookTop = "standard"
|
selector.tHookTop = "standard"
|
||||||
selector.tRTail = "flatHook"
|
selector.tRTail = "flatHook"
|
||||||
selector.tLTail = "standard"
|
selector.tLTail = "standard"
|
||||||
|
@ -3836,6 +3862,7 @@ description = "`t` with flat hook"
|
||||||
selector.t = "flatHook"
|
selector.t = "flatHook"
|
||||||
selector."t/phoneticLeft1" = "flatHook"
|
selector."t/phoneticLeft1" = "flatHook"
|
||||||
selector."t/phoneticLeft2" = "flatHook"
|
selector."t/phoneticLeft2" = "flatHook"
|
||||||
|
selector."t/phoneticLeft3" = "flatHook"
|
||||||
selector.tHookTop = "flatHook"
|
selector.tHookTop = "flatHook"
|
||||||
selector.tRTail = "flatHook"
|
selector.tRTail = "flatHook"
|
||||||
selector.tLTail = "flatHook"
|
selector.tLTail = "flatHook"
|
||||||
|
@ -3848,6 +3875,7 @@ description = "`t` with diagonal tail"
|
||||||
selector.t = "diagonalTailed"
|
selector.t = "diagonalTailed"
|
||||||
selector."t/phoneticLeft1" = "flatHook"
|
selector."t/phoneticLeft1" = "flatHook"
|
||||||
selector."t/phoneticLeft2" = "flatHook"
|
selector."t/phoneticLeft2" = "flatHook"
|
||||||
|
selector."t/phoneticLeft3" = "diagonalTailed"
|
||||||
selector.tHookTop = "diagonalTailed"
|
selector.tHookTop = "diagonalTailed"
|
||||||
selector.tRTail = "flatHook"
|
selector.tRTail = "flatHook"
|
||||||
selector.tLTail = "diagonalTailed"
|
selector.tLTail = "diagonalTailed"
|
||||||
|
@ -3860,6 +3888,7 @@ description = "Futura-like `t` shape"
|
||||||
selector.t = "cross"
|
selector.t = "cross"
|
||||||
selector."t/phoneticLeft1" = "cross"
|
selector."t/phoneticLeft1" = "cross"
|
||||||
selector."t/phoneticLeft2" = "cross"
|
selector."t/phoneticLeft2" = "cross"
|
||||||
|
selector."t/phoneticLeft3" = "cross"
|
||||||
selector.tHookTop = "cross"
|
selector.tHookTop = "cross"
|
||||||
selector.tRTail = "cross"
|
selector.tRTail = "cross"
|
||||||
selector.tLTail = "cross"
|
selector.tLTail = "cross"
|
||||||
|
@ -3872,6 +3901,7 @@ description = "`t` without hook and with ony half the cross bar"
|
||||||
selector.t = "hooklessAsymmetric"
|
selector.t = "hooklessAsymmetric"
|
||||||
selector."t/phoneticLeft1" = "hooklessAsymmetric"
|
selector."t/phoneticLeft1" = "hooklessAsymmetric"
|
||||||
selector."t/phoneticLeft2" = "hooklessAsymmetric"
|
selector."t/phoneticLeft2" = "hooklessAsymmetric"
|
||||||
|
selector."t/phoneticLeft3" = "hooklessAsymmetric"
|
||||||
selector.tHookTop = "hooklessAsymmetric"
|
selector.tHookTop = "hooklessAsymmetric"
|
||||||
selector.tRTail = "hooklessAsymmetric"
|
selector.tRTail = "hooklessAsymmetric"
|
||||||
selector.tLTail = "hooklessAsymmetric"
|
selector.tLTail = "hooklessAsymmetric"
|
||||||
|
@ -3884,6 +3914,7 @@ description = "Standard `t` shape with a shorter neck"
|
||||||
selector.t = "standardShortNeck"
|
selector.t = "standardShortNeck"
|
||||||
selector."t/phoneticLeft1" = "flatHookShortNeck"
|
selector."t/phoneticLeft1" = "flatHookShortNeck"
|
||||||
selector."t/phoneticLeft2" = "flatHookShortNeck"
|
selector."t/phoneticLeft2" = "flatHookShortNeck"
|
||||||
|
selector."t/phoneticLeft3" = "standard"
|
||||||
selector.tHookTop = "standard"
|
selector.tHookTop = "standard"
|
||||||
selector.tRTail = "flatHookShortNeck"
|
selector.tRTail = "flatHookShortNeck"
|
||||||
selector.tLTail = "standardShortNeck"
|
selector.tLTail = "standardShortNeck"
|
||||||
|
@ -3896,6 +3927,7 @@ description = "`t` with flat hook and a slightly shorter neck"
|
||||||
selector.t = "flatHookShortNeck"
|
selector.t = "flatHookShortNeck"
|
||||||
selector."t/phoneticLeft1" = "flatHookShortNeck"
|
selector."t/phoneticLeft1" = "flatHookShortNeck"
|
||||||
selector."t/phoneticLeft2" = "flatHookShortNeck"
|
selector."t/phoneticLeft2" = "flatHookShortNeck"
|
||||||
|
selector."t/phoneticLeft3" = "flatHook"
|
||||||
selector.tHookTop = "flatHook"
|
selector.tHookTop = "flatHook"
|
||||||
selector.tRTail = "flatHookShortNeck"
|
selector.tRTail = "flatHookShortNeck"
|
||||||
selector.tLTail = "flatHookShortNeck"
|
selector.tLTail = "flatHookShortNeck"
|
||||||
|
@ -3908,6 +3940,7 @@ description = "`t` with diagonal tail and a shorter neck"
|
||||||
selector.t = "diagonalTailedShortNeck"
|
selector.t = "diagonalTailedShortNeck"
|
||||||
selector."t/phoneticLeft1" = "flatHookShortNeck"
|
selector."t/phoneticLeft1" = "flatHookShortNeck"
|
||||||
selector."t/phoneticLeft2" = "flatHookShortNeck"
|
selector."t/phoneticLeft2" = "flatHookShortNeck"
|
||||||
|
selector."t/phoneticLeft3" = "diagonalTailed"
|
||||||
selector.tHookTop = "diagonalTailed"
|
selector.tHookTop = "diagonalTailed"
|
||||||
selector.tRTail = "flatHookShortNeck"
|
selector.tRTail = "flatHookShortNeck"
|
||||||
selector.tLTail = "diagonalTailedShortNeck"
|
selector.tLTail = "diagonalTailedShortNeck"
|
||||||
|
@ -3920,6 +3953,7 @@ description = "Futura-like `t` shape with a shorter neck"
|
||||||
selector.t = "crossShortNeck"
|
selector.t = "crossShortNeck"
|
||||||
selector."t/phoneticLeft1" = "crossShortNeck"
|
selector."t/phoneticLeft1" = "crossShortNeck"
|
||||||
selector."t/phoneticLeft2" = "crossShortNeck"
|
selector."t/phoneticLeft2" = "crossShortNeck"
|
||||||
|
selector."t/phoneticLeft3" = "cross"
|
||||||
selector.tHookTop = "cross"
|
selector.tHookTop = "cross"
|
||||||
selector.tRTail = "crossShortNeck"
|
selector.tRTail = "crossShortNeck"
|
||||||
selector.tLTail = "crossShortNeck"
|
selector.tLTail = "crossShortNeck"
|
||||||
|
@ -3932,7 +3966,8 @@ description = "`t` without hook, with ony half the cross bar and a shorter neck"
|
||||||
selector.t = "hooklessAsymmetricShortNeck"
|
selector.t = "hooklessAsymmetricShortNeck"
|
||||||
selector."t/phoneticLeft1" = "hooklessAsymmetricShortNeck"
|
selector."t/phoneticLeft1" = "hooklessAsymmetricShortNeck"
|
||||||
selector."t/phoneticLeft2" = "hooklessAsymmetricShortNeck"
|
selector."t/phoneticLeft2" = "hooklessAsymmetricShortNeck"
|
||||||
selector.tHookTop = "hooklessAsymmetric"
|
selector."t/phoneticLeft3" = "hooklessAsymmetric"
|
||||||
|
selector.tHookTop = "cross"
|
||||||
selector.tRTail = "hooklessAsymmetricShortNeck"
|
selector.tRTail = "hooklessAsymmetricShortNeck"
|
||||||
selector.tLTail = "hooklessAsymmetricShortNeck"
|
selector.tLTail = "hooklessAsymmetricShortNeck"
|
||||||
selector.tCurlyTail = "hooklessAsymmetricShortNeck"
|
selector.tCurlyTail = "hooklessAsymmetricShortNeck"
|
||||||
|
@ -3944,6 +3979,7 @@ description = "Standard `t` shape with a more shorter neck"
|
||||||
selector.t = "standardShortNeck2"
|
selector.t = "standardShortNeck2"
|
||||||
selector."t/phoneticLeft1" = "flatHookShortNeck2"
|
selector."t/phoneticLeft1" = "flatHookShortNeck2"
|
||||||
selector."t/phoneticLeft2" = "flatHookShortNeck2"
|
selector."t/phoneticLeft2" = "flatHookShortNeck2"
|
||||||
|
selector."t/phoneticLeft3" = "standard"
|
||||||
selector.tHookTop = "standard"
|
selector.tHookTop = "standard"
|
||||||
selector.tRTail = "flatHookShortNeck2"
|
selector.tRTail = "flatHookShortNeck2"
|
||||||
selector.tLTail = "standardShortNeck2"
|
selector.tLTail = "standardShortNeck2"
|
||||||
|
@ -3956,6 +3992,7 @@ description = "`t` with flat hook and a more shorter neck"
|
||||||
selector.t = "flatHookShortNeck2"
|
selector.t = "flatHookShortNeck2"
|
||||||
selector."t/phoneticLeft1" = "flatHookShortNeck2"
|
selector."t/phoneticLeft1" = "flatHookShortNeck2"
|
||||||
selector."t/phoneticLeft2" = "flatHookShortNeck2"
|
selector."t/phoneticLeft2" = "flatHookShortNeck2"
|
||||||
|
selector."t/phoneticLeft3" = "flatHook"
|
||||||
selector.tHookTop = "flatHook"
|
selector.tHookTop = "flatHook"
|
||||||
selector.tRTail = "flatHookShortNeck2"
|
selector.tRTail = "flatHookShortNeck2"
|
||||||
selector.tLTail = "flatHookShortNeck2"
|
selector.tLTail = "flatHookShortNeck2"
|
||||||
|
@ -3968,6 +4005,7 @@ description = "`t` with diagonal tail and a more shorter neck"
|
||||||
selector.t = "diagonalTailedShortNeck2"
|
selector.t = "diagonalTailedShortNeck2"
|
||||||
selector."t/phoneticLeft1" = "flatHookShortNeck2"
|
selector."t/phoneticLeft1" = "flatHookShortNeck2"
|
||||||
selector."t/phoneticLeft2" = "flatHookShortNeck2"
|
selector."t/phoneticLeft2" = "flatHookShortNeck2"
|
||||||
|
selector."t/phoneticLeft3" = "diagonalTailed"
|
||||||
selector.tHookTop = "diagonalTailed"
|
selector.tHookTop = "diagonalTailed"
|
||||||
selector.tRTail = "flatHookShortNeck2"
|
selector.tRTail = "flatHookShortNeck2"
|
||||||
selector.tLTail = "diagonalTailedShortNeck2"
|
selector.tLTail = "diagonalTailedShortNeck2"
|
||||||
|
@ -3980,6 +4018,7 @@ description = "Futura-like `t` shape with a more shorter neck"
|
||||||
selector.t = "crossShortNeck2"
|
selector.t = "crossShortNeck2"
|
||||||
selector."t/phoneticLeft1" = "crossShortNeck2"
|
selector."t/phoneticLeft1" = "crossShortNeck2"
|
||||||
selector."t/phoneticLeft2" = "crossShortNeck2"
|
selector."t/phoneticLeft2" = "crossShortNeck2"
|
||||||
|
selector."t/phoneticLeft3" = "cross"
|
||||||
selector.tHookTop = "cross"
|
selector.tHookTop = "cross"
|
||||||
selector.tRTail = "crossShortNeck2"
|
selector.tRTail = "crossShortNeck2"
|
||||||
selector.tLTail = "crossShortNeck2"
|
selector.tLTail = "crossShortNeck2"
|
||||||
|
@ -3992,6 +4031,7 @@ description = "`t` without hook, with ony half the cross bar and a more shorter
|
||||||
selector.t = "hooklessAsymmetricShortNeck2"
|
selector.t = "hooklessAsymmetricShortNeck2"
|
||||||
selector."t/phoneticLeft1" = "hooklessAsymmetricShortNeck2"
|
selector."t/phoneticLeft1" = "hooklessAsymmetricShortNeck2"
|
||||||
selector."t/phoneticLeft2" = "hooklessAsymmetricShortNeck2"
|
selector."t/phoneticLeft2" = "hooklessAsymmetricShortNeck2"
|
||||||
|
selector."t/phoneticLeft3" = "hooklessAsymmetric"
|
||||||
selector.tHookTop = "hooklessAsymmetric"
|
selector.tHookTop = "hooklessAsymmetric"
|
||||||
selector.tRTail = "hooklessAsymmetricShortNeck2"
|
selector.tRTail = "hooklessAsymmetricShortNeck2"
|
||||||
selector.tLTail = "hooklessAsymmetricShortNeck2"
|
selector.tLTail = "hooklessAsymmetricShortNeck2"
|
||||||
|
@ -4679,31 +4719,37 @@ tag = "cv51"
|
||||||
rank = 1
|
rank = 1
|
||||||
description = "Long-S with standard bending hook"
|
description = "Long-S with standard bending hook"
|
||||||
selector."longs" = "bentHook"
|
selector."longs" = "bentHook"
|
||||||
|
selector."longs/flatExt" = "flatHookExt"
|
||||||
|
|
||||||
[prime.long-s.variants.flat-hook]
|
[prime.long-s.variants.flat-hook]
|
||||||
rank = 2
|
rank = 2
|
||||||
description = "Long-S with flat hook"
|
description = "Long-S with flat hook"
|
||||||
selector."longs" = "flatHook"
|
selector."longs" = "flatHook"
|
||||||
|
selector."longs/flatExt" = "flatHookExt"
|
||||||
|
|
||||||
[prime.long-s.variants.bent-hook-descending]
|
[prime.long-s.variants.bent-hook-descending]
|
||||||
rank = 3
|
rank = 3
|
||||||
description = "Long-S with standard bending hook and descends baseline"
|
description = "Long-S with standard bending hook and descends baseline"
|
||||||
selector."longs" = "bentHookDescending"
|
selector."longs" = "bentHookDescending"
|
||||||
|
selector."longs/flatExt" = "flatHookDescendingExt"
|
||||||
|
|
||||||
[prime.long-s.variants.flat-hook-descending]
|
[prime.long-s.variants.flat-hook-descending]
|
||||||
rank = 4
|
rank = 4
|
||||||
description = "Long-S with flat hook and descends baseline"
|
description = "Long-S with flat hook and descends baseline"
|
||||||
selector."longs" = "flatHookDescending"
|
selector."longs" = "flatHookDescending"
|
||||||
|
selector."longs/flatExt" = "flatHookDescendingExt"
|
||||||
|
|
||||||
[prime.long-s.variants.bent-hook-tailed]
|
[prime.long-s.variants.bent-hook-tailed]
|
||||||
rank = 5
|
rank = 5
|
||||||
description = "Long-S with standard bending hook and tail"
|
description = "Long-S with standard bending hook and tail"
|
||||||
selector."longs" = "bentHookTailed"
|
selector."longs" = "bentHookTailed"
|
||||||
|
selector."longs/flatExt" = "flatHookTailedExt"
|
||||||
|
|
||||||
[prime.long-s.variants.flat-hook-tailed]
|
[prime.long-s.variants.flat-hook-tailed]
|
||||||
rank = 6
|
rank = 6
|
||||||
description = "Long-S with flat hook and tail"
|
description = "Long-S with flat hook and tail"
|
||||||
selector."longs" = "flatHookTailed"
|
selector."longs" = "flatHookTailed"
|
||||||
|
selector."longs/flatExt" = "flatHookTailedExt"
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -1165,6 +1165,7 @@ function validateRecommendedWeight(w, value, label) {
|
||||||
thin: 100,
|
thin: 100,
|
||||||
extralight: 200,
|
extralight: 200,
|
||||||
light: 300,
|
light: 300,
|
||||||
|
semilight: 350,
|
||||||
regular: 400,
|
regular: 400,
|
||||||
book: 450,
|
book: 450,
|
||||||
medium: 500,
|
medium: 500,
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue