Volapuk Letters, and a few other fixes (#1891)
* * CC-SA slight fix * Added single-storey forms for iotated-a. * Volapuk letters (#1865)
This commit is contained in:
parent
f481c4943f
commit
c603334802
12 changed files with 439 additions and 179 deletions
|
@ -18,6 +18,7 @@
|
||||||
- LATIN SMALL LETTER K WITH DIAGONAL STROKE (`U+A743`).
|
- LATIN SMALL LETTER K WITH DIAGONAL STROKE (`U+A743`).
|
||||||
- LATIN CAPITAL LETTER K WITH STROKE AND DIAGONAL STROKE (`U+A744`).
|
- LATIN CAPITAL LETTER K WITH STROKE AND DIAGONAL STROKE (`U+A744`).
|
||||||
- LATIN SMALL LETTER K WITH STROKE AND DIAGONAL STROKE (`U+A745`).
|
- LATIN SMALL LETTER K WITH STROKE AND DIAGONAL STROKE (`U+A745`).
|
||||||
|
- LATIN CAPITAL LETTER VOLAPUK AE (`U+A79A`) ... LATIN SMALL LETTER VOLAPUK UE (`U+A79F`) (#1865).
|
||||||
- CIRCLED ANTICLOCKWISE ARROW (`U+1F10E`).
|
- CIRCLED ANTICLOCKWISE ARROW (`U+1F10E`).
|
||||||
- CIRCLED HUMAN FIGURE (`U+1F16F`).
|
- CIRCLED HUMAN FIGURE (`U+1F16F`).
|
||||||
* Drop `<=` and `>=` as inequality for Verilog (#1864).
|
* Drop `<=` and `>=` as inequality for Verilog (#1864).
|
||||||
|
@ -29,3 +30,4 @@
|
||||||
* Fix variant selection for `cv27`, `cv33`, `cv36`, and `cv49` for `ss17` under italics.
|
* Fix variant selection for `cv27`, `cv33`, `cv36`, and `cv49` for `ss17` under italics.
|
||||||
* Make Greek Kappa respond to top-left serifed variants of `k`.
|
* Make Greek Kappa respond to top-left serifed variants of `k`.
|
||||||
* Fix slabs for `U+019C`, `U+0257`, `U+026F`, and `U+0270`.
|
* Fix slabs for `U+019C`, `U+0257`, `U+026F`, and `U+0270`.
|
||||||
|
* Add single-storey variants support for `U+A657`.
|
||||||
|
|
|
@ -290,7 +290,7 @@ glyph-block Autobuild-Transformed : begin
|
||||||
list 0x107A2 'oSlash'
|
list 0x107A2 'oSlash'
|
||||||
list 0x1078E 'eRev'
|
list 0x1078E 'eRev'
|
||||||
list 0x10791 'ramshorn'
|
list 0x10791 'ramshorn'
|
||||||
list 0x1078F 'closeturnepsilon'
|
list 0x1078F 'epsilonRevClosed'
|
||||||
list 0x10783 'ae'
|
list 0x10783 'ae'
|
||||||
list 0x107A3 'smcpOE'
|
list 0x107A3 'smcpOE'
|
||||||
list 0x10781 'triangleColon'
|
list 0x10781 'triangleColon'
|
||||||
|
|
|
@ -125,15 +125,9 @@ glyph-block Letter-Cyrillic-Iotified-A : begin
|
||||||
AMaskShape subDf fStraightBar CAP df.mvs
|
AMaskShape subDf fStraightBar CAP df.mvs
|
||||||
|
|
||||||
do "iotified a"
|
do "iotified a"
|
||||||
glyph-block-import Letter-Latin-Lower-A : DoubleStorey
|
glyph-block-import Letter-Latin-Lower-A : DoubleStorey DoubleStoreyConfig SingleStorey SingleStoreyConfig
|
||||||
define DoubleStoreyConfig : object
|
|
||||||
doubleStoreySerifless { DoubleStorey.Serifless }
|
|
||||||
doubleStoreySerifed { DoubleStorey.Serifed }
|
|
||||||
doubleStoreyTailed { DoubleStorey.Tailed }
|
|
||||||
doubleStoreyToothlessCorner { DoubleStorey.ToothlessCorner }
|
|
||||||
doubleStoreyToothlessRounded { DoubleStorey.ToothlessRounded }
|
|
||||||
|
|
||||||
foreach { suffix { body } } [Object.entries DoubleStoreyConfig] : do
|
foreach { suffix { body xTrailing } } [Object.entries DoubleStoreyConfig] : do
|
||||||
create-glyph "cyrl/aIotified.\(suffix)" : glyph-proc
|
create-glyph "cyrl/aIotified.\(suffix)" : glyph-proc
|
||||||
define df : DivFrame para.diversityM 3
|
define df : DivFrame para.diversityM 3
|
||||||
set-width df.width
|
set-width df.width
|
||||||
|
@ -146,6 +140,17 @@ glyph-block Letter-Cyrillic-Iotified-A : begin
|
||||||
Iotified.full df XH [mix df.leftSB df.rightSB (3 / 4)] (XH / 2)
|
Iotified.full df XH [mix df.leftSB df.rightSB (3 / 4)] (XH / 2)
|
||||||
WithTransform [ApparentTranslate shift 0] [DoubleStorey.GetMask body df df.mvs]
|
WithTransform [ApparentTranslate shift 0] [DoubleStorey.GetMask body df df.mvs]
|
||||||
|
|
||||||
|
foreach { suffix { body bar } } [Object.entries SingleStoreyConfig] : do
|
||||||
|
create-glyph "cyrl/aIotified.\(suffix)" : glyph-proc
|
||||||
|
define df : DivFrame para.diversityM 3
|
||||||
|
set-width df.width
|
||||||
|
include : df.markSet.e
|
||||||
|
|
||||||
|
local { subDf shift } : SubDfAndShift 1 df
|
||||||
|
include : WithTransform [ApparentTranslate shift 0] [body subDf XH bar no-shape df.mvs]
|
||||||
|
|
||||||
|
include : Iotified.full df XH (shift + subDf.leftSB + 0.5 * HVContrast * df.mvs) (XH / 2)
|
||||||
|
|
||||||
do "iotified e"
|
do "iotified e"
|
||||||
glyph-block-import Letter-Latin-Lower-E : SmallEShape SmallERoundedShape
|
glyph-block-import Letter-Latin-Lower-E : SmallEShape SmallERoundedShape
|
||||||
|
|
||||||
|
@ -167,5 +172,5 @@ glyph-block Letter-Cyrillic-Iotified-A : begin
|
||||||
include : Iotified.full df XH df.middle (XH / 2)
|
include : Iotified.full df XH df.middle (XH / 2)
|
||||||
|
|
||||||
select-variant 'cyrl/AIotified' 0xA656 (follow -- 'A')
|
select-variant 'cyrl/AIotified' 0xA656 (follow -- 'A')
|
||||||
select-variant 'cyrl/aIotified' 0xA657 (follow -- 'a/turnABase')
|
select-variant 'cyrl/aIotified' 0xA657 (follow -- 'a')
|
||||||
select-variant 'latn/eIotified' 0xAB61 (follow -- 'e')
|
select-variant 'latn/eIotified' 0xAB61 (follow -- 'e')
|
||||||
|
|
|
@ -18,7 +18,7 @@ glyph-block Letter-Cyrillic-Orthography : begin
|
||||||
orthographic-italic 'cyrl/tse' 0x446
|
orthographic-italic 'cyrl/tse' 0x446
|
||||||
orthographic-italic 'cyrl/tetse' 0x4B5
|
orthographic-italic 'cyrl/tetse' 0x4B5
|
||||||
orthographic-italic 'cyrl/yat' 0x463
|
orthographic-italic 'cyrl/yat' 0x463
|
||||||
orthographic-italic 'cyrl/pe' 0x43f
|
orthographic-italic 'cyrl/pe' 0x43F
|
||||||
orthographic-italic 'cyrl/peMidHook' 0x4A7
|
orthographic-italic 'cyrl/peMidHook' 0x4A7
|
||||||
orthographic-italic 'cyrl/peDescender' 0x525
|
orthographic-italic 'cyrl/peDescender' 0x525
|
||||||
orthographic-italic 'cyrl/ghe' 0x433
|
orthographic-italic 'cyrl/ghe' 0x433
|
||||||
|
|
|
@ -2,7 +2,7 @@ $$include '../../../meta/macros.ptl'
|
||||||
|
|
||||||
extern isFinite
|
extern isFinite
|
||||||
|
|
||||||
import [mix linreg clamp fallback] from"../../../support/utils.mjs"
|
import [mix linreg clamp fallback SuffixCfg] from"../../../support/utils.mjs"
|
||||||
|
|
||||||
glyph-module
|
glyph-module
|
||||||
|
|
||||||
|
@ -14,16 +14,26 @@ glyph-block Letter-Greek-Lower-Epsilon : begin
|
||||||
glyph-block-import Letter-Shared-Shapes : SerifedArcStart SerifedArcEnd SerifFrame
|
glyph-block-import Letter-Shared-Shapes : SerifedArcStart SerifedArcEnd SerifFrame
|
||||||
glyph-block-import Letter-Shared-Shapes : InwardSlabArcStart InwardSlabArcEnd
|
glyph-block-import Letter-Shared-Shapes : InwardSlabArcStart InwardSlabArcEnd
|
||||||
glyph-block-import Letter-Shared-Shapes : ArcStartSerif ArcEndSerif
|
glyph-block-import Letter-Shared-Shapes : ArcStartSerif ArcEndSerif
|
||||||
|
glyph-block-import Letter-Shared-Shapes : OBarLeft OBarRight
|
||||||
glyph-block-import Letter-Shared-Shapes : DToothlessRise RetroflexHook CyrDescender UpwardHookShape
|
glyph-block-import Letter-Shared-Shapes : DToothlessRise RetroflexHook CyrDescender UpwardHookShape
|
||||||
|
|
||||||
define SLAB-NONE 0
|
define SLAB-NONE 0
|
||||||
define SLAB-CLASSICAL 1
|
define SLAB-CLASSICAL 1
|
||||||
define SLAB-INWARD 2
|
define SLAB-INWARD 2
|
||||||
define FLAT-CONNECTION 3
|
define FLAT-CONNECTION 3
|
||||||
|
define OPEN-HALF 4
|
||||||
|
define OPEN-VERTICAL 5
|
||||||
|
define CLOSED-CIRCLE 6
|
||||||
|
define CLOSED-ROUND 7
|
||||||
|
define CLOSED-STEM 8
|
||||||
|
|
||||||
define StdBlend 0.65
|
define StdBlend 0.65
|
||||||
|
define VolBlend 0.52
|
||||||
|
|
||||||
define [SmallEpsilon slabTop slabBot top bot blend hook] : namespace
|
define [SmallEpsilon] : with-params [
|
||||||
|
slabTop slabBot top bot blend hook
|
||||||
|
[ada2 SmallArchDepthA] [adb2 SmallArchDepthB]
|
||||||
|
] : namespace
|
||||||
export : define [Dim] : begin
|
export : define [Dim] : begin
|
||||||
local stroke : AdviceStroke2 2 3 (top - bot)
|
local stroke : AdviceStroke2 2 3 (top - bot)
|
||||||
local midx : mix SB RightSB blend
|
local midx : mix SB RightSB blend
|
||||||
|
@ -33,14 +43,23 @@ glyph-block Letter-Greek-Lower-Epsilon : begin
|
||||||
local ada : topHeight - [mix (midyHeight + stroke / 2) (topHeight - O - stroke) (ArchDepthB / (ArchDepthA + ArchDepthB))] - TanSlope * HVContrast * stroke
|
local ada : topHeight - [mix (midyHeight + stroke / 2) (topHeight - O - stroke) (ArchDepthB / (ArchDepthA + ArchDepthB))] - TanSlope * HVContrast * stroke
|
||||||
local adb : [mix (stroke + O) (midyHeight - stroke / 2) (ArchDepthB / (ArchDepthA + ArchDepthB))] + TanSlope * HVContrast * stroke
|
local adb : [mix (stroke + O) (midyHeight - stroke / 2) (ArchDepthB / (ArchDepthA + ArchDepthB))] + TanSlope * HVContrast * stroke
|
||||||
local fine : stroke * CThin
|
local fine : stroke * CThin
|
||||||
return : object stroke midx midy ada adb fine
|
local stemFine : stroke * (ShoulderFine / Stroke)
|
||||||
|
return : object stroke midx midy ada adb fine stemFine
|
||||||
|
|
||||||
export : define [UpperShape] : begin
|
export : define [UpperShape] : begin
|
||||||
define [object stroke midx midy ada adb fine] : Dim
|
define [object stroke midx midy ada adb fine stemFine] : Dim
|
||||||
return : dispiro
|
return : dispiro
|
||||||
match slabTop
|
match slabTop
|
||||||
[Just SLAB-CLASSICAL] : SerifedArcStart.RtlLhs RightSB Middle top stroke hook
|
[Just SLAB-CLASSICAL] : SerifedArcStart.RtlLhs RightSB Middle top stroke hook
|
||||||
[Just SLAB-INWARD] : InwardSlabArcStart.RtlLhs RightSB Middle top stroke hook
|
[Just SLAB-INWARD] : InwardSlabArcStart.RtlLhs RightSB Middle top stroke hook
|
||||||
|
[Just OPEN-VERTICAL] : straight.down.start SB top [widths.lhs.heading stroke Downward]
|
||||||
|
([Just CLOSED-CIRCLE] || [Just CLOSED-ROUND]) : list
|
||||||
|
flat (RightSB - [if (slabTop === CLOSED-CIRCLE) OX 0]) midy [widths.lhs stroke]
|
||||||
|
curl (RightSB - [if (slabTop === CLOSED-CIRCLE) OX 0]) (top - adb2)
|
||||||
|
arcvh
|
||||||
|
g4 (Middle - CorrectionOMidX * stroke) (top - O)
|
||||||
|
archv
|
||||||
|
[Just CLOSED-STEM] : OBarRight.arcStart top SB RightSB stroke stemFine ada2 adb2 midy
|
||||||
__ : list [g4 (RightSB + O) (top - hook) [widths.lhs]] [hookstart (top - O)]
|
__ : list [g4 (RightSB + O) (top - hook) [widths.lhs]] [hookstart (top - O)]
|
||||||
g4 SB [YSmoothMidL top (midy - stroke / 2)]
|
g4 SB [YSmoothMidL top (midy - stroke / 2)]
|
||||||
arcvh
|
arcvh
|
||||||
|
@ -48,15 +67,23 @@ glyph-block Letter-Greek-Lower-Epsilon : begin
|
||||||
curl midx (midy - (fine - stroke / 2)) [heading Rightward]
|
curl midx (midy - (fine - stroke / 2)) [heading Rightward]
|
||||||
|
|
||||||
export : define [LowerShape] : begin
|
export : define [LowerShape] : begin
|
||||||
define [object stroke midx midy ada adb fine] : Dim
|
define [object stroke midx midy ada adb fine stemFine] : Dim
|
||||||
return : dispiro
|
return : dispiro
|
||||||
flat midx (midy + (fine - stroke / 2)) [widths.heading fine 0 Leftward]
|
flat midx (midy + (fine - stroke / 2)) [widths.heading fine 0 Leftward]
|
||||||
curl Middle (midy + (fine - stroke / 2)) [heading Leftward]
|
curl Middle (midy + (fine - stroke / 2)) [heading Leftward]
|
||||||
archv
|
archv
|
||||||
g4 (SB + OX * 2) [YSmoothMidL (midy + stroke / 2) bot] [widths.lhs]
|
g4 (SB + OX * 2) [YSmoothMidL (midy + stroke / 2) bot] [widths.lhs stroke]
|
||||||
match slabBot
|
match slabBot
|
||||||
[Just SLAB-CLASSICAL] : SerifedArcEnd.LtrLhs RightSB Middle bot stroke hook
|
[Just SLAB-CLASSICAL] : SerifedArcEnd.LtrLhs RightSB Middle bot stroke hook
|
||||||
[Just SLAB-INWARD] : InwardSlabArcEnd.LtrLhs RightSB Middle bot stroke hook
|
[Just SLAB-INWARD] : InwardSlabArcEnd.LtrLhs RightSB Middle bot stroke hook
|
||||||
|
[Just OPEN-VERTICAL] : straight.down.end (SB + OX * 2) bot [heading Downward]
|
||||||
|
([Just CLOSED-CIRCLE] || [Just CLOSED-ROUND]) : list
|
||||||
|
arcvh
|
||||||
|
g4 (Middle + CorrectionOMidX * stroke) (bot + O)
|
||||||
|
archv
|
||||||
|
flat (RightSB - [if (slabBot === CLOSED-CIRCLE) OX 0]) (bot + adb2)
|
||||||
|
curl (RightSB - [if (slabBot === CLOSED-CIRCLE) OX 0]) midy
|
||||||
|
[Just CLOSED-STEM] : OBarRight.arcEnd bot SB RightSB stroke stemFine ada2 adb2 midy
|
||||||
__ : list [hookend (bot + O)] [g4 (RightSB - O) (bot + hook)]
|
__ : list [hookend (bot + O)] [g4 (RightSB - O) (bot + hook)]
|
||||||
|
|
||||||
export : define [Shape] : union [UpperShape] [LowerShape]
|
export : define [Shape] : union [UpperShape] [LowerShape]
|
||||||
|
@ -76,21 +103,24 @@ glyph-block Letter-Greek-Lower-Epsilon : begin
|
||||||
__ : glyph-proc
|
__ : glyph-proc
|
||||||
|
|
||||||
glyph-block-export CyrZe
|
glyph-block-export CyrZe
|
||||||
define [CyrZe slabTop slabBot top bot left right blend hook _stroke _xo _op] : namespace
|
define [CyrZe] : with-params [
|
||||||
local xo : fallback _xo OX
|
slabTop slabBot top bot left right blend hook _stroke
|
||||||
|
[xo OX] [op OverlayPos] [ada2 SmallArchDepthA] [adb2 SmallArchDepthB]
|
||||||
|
] : namespace
|
||||||
export : define [Dim] : begin
|
export : define [Dim] : begin
|
||||||
local stroke : fallback _stroke : AdviceStroke2 2 3 (top - bot)
|
local stroke : fallback _stroke : AdviceStroke2 2 3 (top - bot)
|
||||||
local midx : mix right left blend
|
local midx : mix right left blend
|
||||||
local midy : mix bot top [fallback _op OverlayPos]
|
local midy : mix bot top op
|
||||||
local topHeight : top - bot
|
local topHeight : top - bot
|
||||||
local midyHeight : midy - bot
|
local midyHeight : midy - bot
|
||||||
local adb : topHeight - [mix (midyHeight + stroke / 2) (topHeight - O - stroke) (ArchDepthA / (ArchDepthA + ArchDepthB))] + TanSlope * HVContrast * stroke
|
local adb : topHeight - [mix (midyHeight + stroke / 2) (topHeight - O - stroke) (ArchDepthA / (ArchDepthA + ArchDepthB))] + TanSlope * HVContrast * stroke
|
||||||
local ada : [mix (stroke + O) (midyHeight - stroke / 2) (ArchDepthA / (ArchDepthA + ArchDepthB))] - TanSlope * HVContrast * stroke
|
local ada : [mix (stroke + O) (midyHeight - stroke / 2) (ArchDepthA / (ArchDepthA + ArchDepthB))] - TanSlope * HVContrast * stroke
|
||||||
local fine : stroke * CThin
|
local fine : stroke * CThin
|
||||||
return : object stroke midx midy ada adb fine
|
local stemFine : stroke * (ShoulderFine / Stroke)
|
||||||
|
return : object stroke midx midy ada adb fine stemFine
|
||||||
|
|
||||||
define [CyrZeUpperShapeT sink] : begin
|
define [CyrZeUpperShapeT sink] : begin
|
||||||
define [object stroke midx midy ada adb fine] : Dim
|
define [object stroke midx midy ada adb fine stemFine] : Dim
|
||||||
local middle : (left + right) / 2
|
local middle : (left + right) / 2
|
||||||
return : sink
|
return : sink
|
||||||
match slabTop
|
match slabTop
|
||||||
|
@ -99,6 +129,14 @@ glyph-block Letter-Greek-Lower-Epsilon : begin
|
||||||
[Just FLAT-CONNECTION] : list
|
[Just FLAT-CONNECTION] : list
|
||||||
flat (left - xo) top [widths.rhs.heading stroke Rightward]
|
flat (left - xo) top [widths.rhs.heading stroke Rightward]
|
||||||
curl (middle - CorrectionOMidX * stroke) top [heading Rightward]
|
curl (middle - CorrectionOMidX * stroke) top [heading Rightward]
|
||||||
|
[Just OPEN-VERTICAL] : straight.down.start right top [widths.rhs.heading stroke Downward]
|
||||||
|
([Just CLOSED-CIRCLE] || [Just CLOSED-ROUND]) : list
|
||||||
|
flat (left + [if (slabTop === CLOSED-CIRCLE) xo 0]) midy [widths.rhs stroke]
|
||||||
|
curl (left + [if (slabTop === CLOSED-CIRCLE) xo 0]) (top - ada2)
|
||||||
|
arcvh
|
||||||
|
g4 (middle - CorrectionOMidX * stroke) (top - O)
|
||||||
|
archv
|
||||||
|
[Just CLOSED-STEM] : OBarLeft.arcStart top left right stroke stemFine ada2 adb2 midy
|
||||||
__ : list [g4 (left - xo) (top - hook) : widths.rhs stroke] [hookstart (top - O)]
|
__ : list [g4 (left - xo) (top - hook) : widths.rhs stroke] [hookstart (top - O)]
|
||||||
g4 right [YSmoothMidR top (midy - stroke / 2)]
|
g4 right [YSmoothMidR top (midy - stroke / 2)]
|
||||||
arcvh
|
arcvh
|
||||||
|
@ -106,31 +144,33 @@ glyph-block Letter-Greek-Lower-Epsilon : begin
|
||||||
curl midx (midy - (fine - stroke / 2)) [heading Leftward]
|
curl midx (midy - (fine - stroke / 2)) [heading Leftward]
|
||||||
|
|
||||||
define [CyrZeLowerShapeT sink] : begin
|
define [CyrZeLowerShapeT sink] : begin
|
||||||
define [object stroke midx midy ada adb fine] : Dim
|
define [object stroke midx midy ada adb fine stemFine] : Dim
|
||||||
local middle : (left + right) / 2
|
local middle : (left + right) / 2
|
||||||
return : sink
|
return : sink
|
||||||
flat midx (midy + (fine - stroke / 2)) [widths.rhs.heading fine Rightward]
|
flat midx (midy + (fine - stroke / 2)) [widths.heading 0 fine Rightward]
|
||||||
curl middle (midy + (fine - stroke / 2)) [heading Rightward]
|
curl middle (midy + (fine - stroke / 2)) [heading Rightward]
|
||||||
archv
|
archv
|
||||||
|
if (slabBot === OPEN-HALF)
|
||||||
|
g4.down.end (right - xo * 2) [YSmoothMidR (midy + stroke / 2) bot] [widths.rhs.heading stroke Downward]
|
||||||
g4 (right - xo * 2) [YSmoothMidR (midy + stroke / 2) bot] [widths.rhs stroke]
|
g4 (right - xo * 2) [YSmoothMidR (midy + stroke / 2) bot] [widths.rhs stroke]
|
||||||
match slabBot
|
match slabBot
|
||||||
[Just SLAB-CLASSICAL] : SerifedArcEnd.RtlRhs left middle bot stroke hook
|
[Just SLAB-CLASSICAL] : SerifedArcEnd.RtlRhs left middle bot stroke hook
|
||||||
[Just SLAB-INWARD] : InwardSlabArcEnd.RtlRhs left middle bot stroke hook
|
[Just SLAB-INWARD] : InwardSlabArcEnd.RtlRhs left middle bot stroke hook
|
||||||
|
[Just OPEN-HALF] : list
|
||||||
|
[Just OPEN-VERTICAL] : straight.down.end (right - xo * 2) bot [heading Downward]
|
||||||
|
([Just CLOSED-CIRCLE] || [Just CLOSED-ROUND]) : list
|
||||||
|
arcvh
|
||||||
|
g4 (middle + CorrectionOMidX * stroke) (bot + O)
|
||||||
|
archv
|
||||||
|
flat (left + [if (slabBot === CLOSED-CIRCLE) xo 0]) (bot + adb2)
|
||||||
|
curl (left + [if (slabBot === CLOSED-CIRCLE) xo 0]) midy
|
||||||
|
[Just CLOSED-STEM] : OBarLeft.arcEnd bot left right stroke stemFine ada2 adb2 midy
|
||||||
__ : list [hookend (bot + O) (sw -- stroke)] [g4 (left + xo) (bot + hook)]
|
__ : list [hookend (bot + O) (sw -- stroke)] [g4 (left + xo) (bot + hook)]
|
||||||
|
|
||||||
export : define [UpperShape] : CyrZeUpperShapeT dispiro
|
export : define [UpperShape] : CyrZeUpperShapeT dispiro
|
||||||
|
|
||||||
export : define [LowerShape] : CyrZeLowerShapeT dispiro
|
export : define [LowerShape] : CyrZeLowerShapeT dispiro
|
||||||
|
|
||||||
define [CyrZeLowerShapeHalf] : begin
|
|
||||||
define [object stroke midx midy ada adb fine] : Dim
|
|
||||||
local middle : (left + right) / 2
|
|
||||||
return : dispiro
|
|
||||||
flat midx (midy + (fine - stroke / 2)) [widths.rhs.heading fine Rightward]
|
|
||||||
curl middle (midy + (fine - stroke / 2)) [heading Rightward]
|
|
||||||
archv
|
|
||||||
g4.down.end (right - OX * 2) [YSmoothMidR (midy + stroke / 2) bot] [widths.rhs.heading stroke Downward]
|
|
||||||
|
|
||||||
define [CyrZeLowerShapeTailed] : begin
|
define [CyrZeLowerShapeTailed] : begin
|
||||||
define [object stroke midx midy ada adb fine] : Dim
|
define [object stroke midx midy ada adb fine] : Dim
|
||||||
local middle : (left + right) / 2
|
local middle : (left + right) / 2
|
||||||
|
@ -155,10 +195,6 @@ glyph-block Letter-Greek-Lower-Epsilon : begin
|
||||||
CyrZeUpperShapeT spiro-outline
|
CyrZeUpperShapeT spiro-outline
|
||||||
CyrZeLowerShapeT spiro-outline
|
CyrZeLowerShapeT spiro-outline
|
||||||
|
|
||||||
export : define [ShapeHalf] : union
|
|
||||||
CyrZeUpperShapeT dispiro
|
|
||||||
CyrZeLowerShapeHalf
|
|
||||||
|
|
||||||
export : define [KsiBaseShape] : union
|
export : define [KsiBaseShape] : union
|
||||||
CyrZeUpperShapeT dispiro
|
CyrZeUpperShapeT dispiro
|
||||||
CyrZeLowerShapeTailed
|
CyrZeLowerShapeTailed
|
||||||
|
@ -216,20 +252,16 @@ glyph-block Letter-Greek-Lower-Epsilon : begin
|
||||||
|
|
||||||
create-glyph "cyrl/DzjeKomi.\(suffix)" : glyph-proc
|
create-glyph "cyrl/DzjeKomi.\(suffix)" : glyph-proc
|
||||||
include : MarkSet.capital
|
include : MarkSet.capital
|
||||||
local ze : CyrZe slabTop slabBot CAP 0 SB RightSB StdBlend Hook
|
local ze : CyrZe slabTop OPEN-VERTICAL CAP 0 SB RightSB StdBlend Hook
|
||||||
define [object stroke midy] : ze.Dim
|
include : ze.Shape
|
||||||
include : ze.ShapeHalf
|
include : ze.AutoStartSerifL
|
||||||
include : ze.AutoStartSerifL slabTop CAP 0 SB RightSB StdBlend
|
|
||||||
include : VBar.r (RightSB - OX * 2) 0 [YSmoothMidR (midy + stroke / 2) 0] stroke
|
|
||||||
include : CyrDescender.rSideJut (RightSB - OX * 2) 0
|
include : CyrDescender.rSideJut (RightSB - OX * 2) 0
|
||||||
|
|
||||||
create-glyph "cyrl/dzjeKomi.\(suffix)" : glyph-proc
|
create-glyph "cyrl/dzjeKomi.\(suffix)" : glyph-proc
|
||||||
include : MarkSet.e
|
include : MarkSet.e
|
||||||
local ze : CyrZe slabTop slabBot XH 0 SB RightSB StdBlend SHook
|
local ze : CyrZe slabTop OPEN-VERTICAL XH 0 SB RightSB StdBlend SHook
|
||||||
define [object stroke midy] : ze.Dim
|
include : ze.Shape
|
||||||
include : ze.ShapeHalf
|
include : ze.AutoStartSerifL
|
||||||
include : ze.AutoStartSerifL slabTop XH 0 SB RightSB StdBlend
|
|
||||||
include : VBar.r (RightSB - OX * 2) 0 [YSmoothMidR (midy + stroke / 2) 0] stroke
|
|
||||||
include : CyrDescender.rSideJut (RightSB - OX * 2) 0
|
include : CyrDescender.rSideJut (RightSB - OX * 2) 0
|
||||||
|
|
||||||
create-glyph "cyrl/ZjeKomi.\(suffix)" : glyph-proc
|
create-glyph "cyrl/ZjeKomi.\(suffix)" : glyph-proc
|
||||||
|
@ -238,9 +270,9 @@ glyph-block Letter-Greek-Lower-Epsilon : begin
|
||||||
include : df.markSet.capital
|
include : df.markSet.capital
|
||||||
|
|
||||||
local xm : df.middle + 0.5 * df.mvs * HVContrast
|
local xm : df.middle + 0.5 * df.mvs * HVContrast
|
||||||
local ze : CyrZe slabTop slabBot CAP 0 df.leftSB xm StdBlend Hook df.mvs
|
local ze : CyrZe slabTop OPEN-HALF CAP 0 df.leftSB xm StdBlend Hook df.mvs
|
||||||
define [object stroke midy] : ze.Dim
|
define [object stroke midy] : ze.Dim
|
||||||
include : ze.ShapeHalf
|
include : ze.Shape
|
||||||
include : UpwardHookShape
|
include : UpwardHookShape
|
||||||
left -- xm - OX * 2 - stroke * HVContrast
|
left -- xm - OX * 2 - stroke * HVContrast
|
||||||
right -- df.rightSB
|
right -- df.rightSB
|
||||||
|
@ -259,9 +291,9 @@ glyph-block Letter-Greek-Lower-Epsilon : begin
|
||||||
include : df.markSet.e
|
include : df.markSet.e
|
||||||
|
|
||||||
local xm : df.middle + 0.5 * df.mvs * HVContrast
|
local xm : df.middle + 0.5 * df.mvs * HVContrast
|
||||||
local ze : CyrZe slabTop slabBot XH 0 df.leftSB xm StdBlend Hook df.mvs
|
local ze : CyrZe slabTop OPEN-HALF XH 0 df.leftSB xm StdBlend SHook df.mvs
|
||||||
define [object stroke midy] : ze.Dim
|
define [object stroke midy] : ze.Dim
|
||||||
include : ze.ShapeHalf
|
include : ze.Shape
|
||||||
include : UpwardHookShape
|
include : UpwardHookShape
|
||||||
left -- xm - OX * 2 - stroke * HVContrast
|
left -- xm - OX * 2 - stroke * HVContrast
|
||||||
right -- df.rightSB
|
right -- df.rightSB
|
||||||
|
@ -284,6 +316,156 @@ glyph-block Letter-Greek-Lower-Epsilon : begin
|
||||||
include : let [ze : CyrZe slabTop SLAB-NONE XH 0 SB RightSB StdBlend SHook]
|
include : let [ze : CyrZe slabTop SLAB-NONE XH 0 SB RightSB StdBlend SHook]
|
||||||
union [ze.KsiBaseShape] [ze.AutoStartSerifL]
|
union [ze.KsiBaseShape] [ze.AutoStartSerifL]
|
||||||
|
|
||||||
|
do "Closed Epsilon Shapes"
|
||||||
|
create-glyph 'epsilonClosed' 0x29A : glyph-proc
|
||||||
|
include : MarkSet.e
|
||||||
|
local eps : SmallEpsilon CLOSED-CIRCLE CLOSED-CIRCLE XH 0 StdBlend SHook
|
||||||
|
ada2 -- SmallArchDepthA
|
||||||
|
adb2 -- SmallArchDepthB
|
||||||
|
include : eps.Shape
|
||||||
|
|
||||||
|
create-glyph 'epsilonRevClosed' 0x25E : glyph-proc
|
||||||
|
include : MarkSet.e
|
||||||
|
local ze : CyrZe CLOSED-CIRCLE CLOSED-CIRCLE XH 0 SB RightSB StdBlend SHook
|
||||||
|
ada2 -- SmallArchDepthA
|
||||||
|
adb2 -- SmallArchDepthB
|
||||||
|
include : ze.Shape
|
||||||
|
|
||||||
|
create-glyph 'vol/Oe' 0xA79C : glyph-proc
|
||||||
|
include : MarkSet.capital
|
||||||
|
local eps : SmallEpsilon CLOSED-CIRCLE CLOSED-CIRCLE CAP 0 VolBlend Hook
|
||||||
|
ada2 -- ArchDepthA
|
||||||
|
adb2 -- ArchDepthB
|
||||||
|
include : eps.Shape
|
||||||
|
|
||||||
|
create-glyph 'vol/oe' 0xA79D : glyph-proc
|
||||||
|
include : MarkSet.e
|
||||||
|
local eps : SmallEpsilon CLOSED-CIRCLE CLOSED-CIRCLE XH 0 VolBlend SHook
|
||||||
|
ada2 -- SmallArchDepthA
|
||||||
|
adb2 -- SmallArchDepthB
|
||||||
|
include : eps.Shape
|
||||||
|
|
||||||
|
do "Volapuk AE"
|
||||||
|
glyph-block-import Letter-Latin-Lower-A : SingleStorey
|
||||||
|
|
||||||
|
define [FullBarBody df height bar hook ada2 adb2] : glyph-proc
|
||||||
|
local eps : SmallEpsilon CLOSED-STEM CLOSED-STEM height 0 VolBlend hook
|
||||||
|
ada2 -- ada2
|
||||||
|
adb2 -- adb2
|
||||||
|
define [object stroke] : eps.Dim
|
||||||
|
include : eps.Shape
|
||||||
|
include : bar df height no-shape stroke
|
||||||
|
|
||||||
|
define [EarlessCornerBody df height bar hook ada2 adb2] : glyph-proc
|
||||||
|
local eps : SmallEpsilon SLAB-INWARD CLOSED-STEM height 0 VolBlend hook
|
||||||
|
ada2 -- ada2
|
||||||
|
adb2 -- adb2
|
||||||
|
define [object stroke] : eps.Dim
|
||||||
|
include : eps.Shape
|
||||||
|
include : bar df (height - DToothlessRise) no-shape stroke
|
||||||
|
|
||||||
|
define [EarlessRoundedBody df height bar hook ada2 adb2] : glyph-proc
|
||||||
|
local eps : SmallEpsilon CLOSED-ROUND CLOSED-STEM height 0 VolBlend hook
|
||||||
|
ada2 -- ada2
|
||||||
|
adb2 -- adb2
|
||||||
|
define [object stroke] : eps.Dim
|
||||||
|
include : eps.Shape
|
||||||
|
include : bar df (height - adb2) no-shape stroke
|
||||||
|
|
||||||
|
define SingleStoreyConfig : SuffixCfg.weave
|
||||||
|
object # body
|
||||||
|
singleStorey FullBarBody
|
||||||
|
singleStoreyEarlessCorner EarlessCornerBody
|
||||||
|
singleStoreyEarlessRounded EarlessRoundedBody
|
||||||
|
|
||||||
|
object # bar
|
||||||
|
serifless SingleStorey.SeriflessBar
|
||||||
|
serifed SingleStorey.SerifedBar
|
||||||
|
tailed SingleStorey.TailedBar
|
||||||
|
|
||||||
|
foreach { suffix { body bar } } [Object.entries SingleStoreyConfig] : do
|
||||||
|
create-glyph "vol/Ae.\(suffix)" : glyph-proc
|
||||||
|
include : MarkSet.capital
|
||||||
|
include : body [DivFrame 1] CAP bar Hook ArchDepthA ArchDepthB
|
||||||
|
create-glyph "vol/ae.\(suffix)" : glyph-proc
|
||||||
|
include : MarkSet.e
|
||||||
|
include : body [DivFrame 1] XH bar SHook SmallArchDepthA SmallArchDepthB
|
||||||
|
|
||||||
|
do "Volapuk UE"
|
||||||
|
glyph-block-import Letter-Latin-U : USerifs
|
||||||
|
glyph-block-import Letter-Shared-Shapes : RightwardTailedBar
|
||||||
|
|
||||||
|
define [UToothed df height slab hook ada2 adb2] : glyph-proc
|
||||||
|
set-base-anchor 'trailing' df.rightSB 0
|
||||||
|
local eps : SmallEpsilon OPEN-VERTICAL CLOSED-STEM height 0 VolBlend hook
|
||||||
|
ada2 -- ada2
|
||||||
|
adb2 -- adb2
|
||||||
|
define [object stroke] : eps.Dim
|
||||||
|
include : eps.Shape
|
||||||
|
include : VBar.r df.rightSB 0 height stroke
|
||||||
|
include : slab df height
|
||||||
|
|
||||||
|
define [UTailed df height slab hook ada2 adb2] : glyph-proc
|
||||||
|
set-base-anchor 'trailing' (df.rightSB + SideJut) 0
|
||||||
|
local eps : SmallEpsilon OPEN-VERTICAL CLOSED-STEM height 0 VolBlend hook
|
||||||
|
ada2 -- ada2
|
||||||
|
adb2 -- adb2
|
||||||
|
define [object stroke] : eps.Dim
|
||||||
|
include : eps.Shape
|
||||||
|
include : RightwardTailedBar df.rightSB 0 height stroke
|
||||||
|
include : slab df height
|
||||||
|
|
||||||
|
define [UToothlessRounded df height slab hook ada2 adb2] : glyph-proc
|
||||||
|
local eps : SmallEpsilon OPEN-VERTICAL CLOSED-ROUND height 0 VolBlend hook
|
||||||
|
ada2 -- ada2
|
||||||
|
adb2 -- adb2
|
||||||
|
define [object stroke] : eps.Dim
|
||||||
|
include : eps.Shape
|
||||||
|
include : VBar.r df.rightSB ada2 height stroke
|
||||||
|
include : slab df height
|
||||||
|
|
||||||
|
define [UToothlessCorner df height slab hook ada2 adb2] : glyph-proc
|
||||||
|
local eps : SmallEpsilon OPEN-VERTICAL SLAB-INWARD height 0 VolBlend hook
|
||||||
|
ada2 -- ada2
|
||||||
|
adb2 -- adb2
|
||||||
|
define [object stroke] : eps.Dim
|
||||||
|
include : eps.Shape
|
||||||
|
include : VBar.r df.rightSB DToothlessRise height stroke
|
||||||
|
include : slab df height stroke
|
||||||
|
|
||||||
|
define SmallUConfig : SuffixCfg.weave
|
||||||
|
object # body
|
||||||
|
toothed UToothed
|
||||||
|
tailed UTailed
|
||||||
|
toothlessCorner UToothlessCorner
|
||||||
|
toothlessRounded UToothlessRounded
|
||||||
|
function [body] : object # serifs
|
||||||
|
serifless no-shape
|
||||||
|
bottomRightSerifed USerifs.BottomRight
|
||||||
|
motionSerifed : match body
|
||||||
|
[Just 'toothed'] USerifs.MotionToothed
|
||||||
|
__ USerifs.MotionToothless
|
||||||
|
serifed : match body
|
||||||
|
[Just 'toothed'] USerifs.Toothed
|
||||||
|
[Just 'tailed'] USerifs.Tailed
|
||||||
|
__ USerifs.SmallToothless
|
||||||
|
|
||||||
|
foreach { suffix { Base Slabs } } [Object.entries SmallUConfig] : do
|
||||||
|
create-glyph "vol/Ue.\(suffix)" : glyph-proc
|
||||||
|
local df : DivFrame 1
|
||||||
|
include : MarkSet.capital
|
||||||
|
include : Base df CAP Slabs Hook ArchDepthA ArchDepthB
|
||||||
|
create-glyph "vol/ue.\(suffix)" : glyph-proc
|
||||||
|
local df : DivFrame 1
|
||||||
|
include : MarkSet.e
|
||||||
|
include : Base df XH Slabs SHook SmallArchDepthA SmallArchDepthB
|
||||||
|
|
||||||
|
|
||||||
|
select-variant 'vol/Ae' 0xA79A (follow -- 'a/single')
|
||||||
|
select-variant 'vol/ae' 0xA79B (follow -- 'a/single')
|
||||||
|
select-variant 'vol/Ue' 0xA79E (follow -- 'u')
|
||||||
|
select-variant 'vol/ue' 0xA79F (follow -- 'u')
|
||||||
|
|
||||||
alias 'grek/epsilon' 0x3B5 'latn/epsilon.serifless'
|
alias 'grek/epsilon' 0x3B5 'latn/epsilon.serifless'
|
||||||
select-variant 'latn/Epsilon' 0x190
|
select-variant 'latn/Epsilon' 0x190
|
||||||
select-variant 'latn/epsilon' 0x25B
|
select-variant 'latn/epsilon' 0x25B
|
||||||
|
|
|
@ -21,7 +21,7 @@ glyph-block Letter-Latin-C : begin
|
||||||
define SLAB-NONE 0
|
define SLAB-NONE 0
|
||||||
define SLAB-CLASSICAL 1
|
define SLAB-CLASSICAL 1
|
||||||
define SLAB-INWARD 2
|
define SLAB-INWARD 2
|
||||||
define SLAB-FLAT 3
|
define FLAT-CONNECTION 3
|
||||||
|
|
||||||
glyph-block-export CShapeT
|
glyph-block-export CShapeT
|
||||||
define [CShapeT sink offset df st sb top bot ada adb hook sw origBar] : sink
|
define [CShapeT sink offset df st sb top bot ada adb hook sw origBar] : sink
|
||||||
|
@ -32,7 +32,7 @@ glyph-block Letter-Latin-C : begin
|
||||||
g4 (df.rightSB - offset) (top - DToothlessRise)
|
g4 (df.rightSB - offset) (top - DToothlessRise)
|
||||||
g4 (df.middle - CorrectionOMidX * sw) (top - O - offset)
|
g4 (df.middle - CorrectionOMidX * sw) (top - O - offset)
|
||||||
archv
|
archv
|
||||||
[Just SLAB-FLAT] : list
|
[Just FLAT-CONNECTION] : list
|
||||||
flat (df.rightSB - offset) (top - offset)
|
flat (df.rightSB - offset) (top - offset)
|
||||||
curl (df.middle - CorrectionOMidX * sw) (top - offset)
|
curl (df.middle - CorrectionOMidX * sw) (top - offset)
|
||||||
archv
|
archv
|
||||||
|
@ -61,7 +61,7 @@ glyph-block Letter-Latin-C : begin
|
||||||
g4 (df.leftSB + offset) (top - DToothlessRise)
|
g4 (df.leftSB + offset) (top - DToothlessRise)
|
||||||
g4 (df.middle - CorrectionOMidX * sw) (top - O - offset)
|
g4 (df.middle - CorrectionOMidX * sw) (top - O - offset)
|
||||||
archv
|
archv
|
||||||
[Just SLAB-FLAT] : list
|
[Just FLAT-CONNECTION] : list
|
||||||
flat (df.leftSB + offset) (top - offset)
|
flat (df.leftSB + offset) (top - offset)
|
||||||
curl (df.middle - CorrectionOMidX * sw) (top - offset)
|
curl (df.middle - CorrectionOMidX * sw) (top - offset)
|
||||||
archv
|
archv
|
||||||
|
|
|
@ -14,7 +14,7 @@ glyph-block Letter-Latin-Lower-A : begin
|
||||||
glyph-block-import Letter-Shared-Shapes : RightwardTailedBar InvRightwardTailedBar
|
glyph-block-import Letter-Shared-Shapes : RightwardTailedBar InvRightwardTailedBar
|
||||||
glyph-block-import Letter-Shared-Shapes : DToothlessRise DMBlend RetroflexHook
|
glyph-block-import Letter-Shared-Shapes : DToothlessRise DMBlend RetroflexHook
|
||||||
|
|
||||||
glyph-block-export DoubleStorey
|
glyph-block-export DoubleStorey DoubleStoreyConfig
|
||||||
define DoubleStorey : namespace
|
define DoubleStorey : namespace
|
||||||
define [ADoubleStoreyStroke df] : AdviceStroke2 2 3 XH df.div
|
define [ADoubleStoreyStroke df] : AdviceStroke2 2 3 XH df.div
|
||||||
define [ADoubleStoreySmoothA df] : begin
|
define [ADoubleStoreySmoothA df] : begin
|
||||||
|
@ -132,52 +132,82 @@ glyph-block Letter-Latin-Lower-A : begin
|
||||||
Rect XH 0 (RightSB - BBD) Width
|
Rect XH 0 (RightSB - BBD) Width
|
||||||
include : HBar.b (RightSB - BBD) RightSB 0 BBS
|
include : HBar.b (RightSB - BBD) RightSB 0 BBS
|
||||||
|
|
||||||
|
glyph-block-export SingleStorey SingleStoreyConfig
|
||||||
define SingleStorey : namespace
|
define SingleStorey : namespace
|
||||||
export : define [FullBarBody height bar mask] : glyph-proc
|
export : define [FullBarBody df height bar mask _sw] : glyph-proc
|
||||||
include : OBarRight.shape (top -- height)
|
local sw : fallback _sw df.mvs
|
||||||
include : bar height mask
|
include : OBarRight.shape
|
||||||
export : define [EarlessCornerBody height bar mask] : glyph-proc
|
top -- height
|
||||||
include : OBarLeft.toothless (rise -- DToothlessRise) (mBlend -- DMBlend)
|
left -- df.leftSB
|
||||||
include : FlipAround Middle (XH / 2)
|
right -- df.rightSB
|
||||||
include : bar (height - DToothlessRise) mask
|
sw -- sw
|
||||||
export : define [EarlessRoundedBody height bar mask] : glyph-proc
|
fine -- sw * (ShoulderFine / Stroke)
|
||||||
include : OBarLeft.rounded (yTerminal -- (XH - SmallArchDepthA))
|
ada -- [df.archDepthA SmallArchDepth sw]
|
||||||
include : FlipAround Middle (XH / 2)
|
adb -- [df.archDepthB SmallArchDepth sw]
|
||||||
include : bar (height - SmallArchDepthB) mask
|
include : bar df height mask sw
|
||||||
|
export : define [EarlessCornerBody df height bar mask _sw] : glyph-proc
|
||||||
|
local sw : fallback _sw df.mvs
|
||||||
|
include : OBarLeft.toothless
|
||||||
|
top -- height
|
||||||
|
left -- df.leftSB
|
||||||
|
right -- df.rightSB
|
||||||
|
sw -- sw
|
||||||
|
fine -- sw * (ShoulderFine / Stroke)
|
||||||
|
ada -- [df.archDepthA SmallArchDepth sw]
|
||||||
|
adb -- [df.archDepthB SmallArchDepth sw]
|
||||||
|
rise -- DToothlessRise
|
||||||
|
mBlend -- DMBlend
|
||||||
|
include : FlipAround df.middle (height / 2)
|
||||||
|
include : bar df (height - DToothlessRise) mask sw
|
||||||
|
export : define [EarlessRoundedBody df height bar mask _sw] : glyph-proc
|
||||||
|
local sw : fallback _sw df.mvs
|
||||||
|
local ada : df.archDepthA SmallArchDepth sw
|
||||||
|
local adb : df.archDepthB SmallArchDepth sw
|
||||||
|
include : OBarLeft.rounded
|
||||||
|
top -- height
|
||||||
|
left -- df.leftSB
|
||||||
|
right -- df.rightSB
|
||||||
|
sw -- sw
|
||||||
|
fine -- sw * (ShoulderFine / Stroke)
|
||||||
|
ada -- ada
|
||||||
|
adb -- adb
|
||||||
|
yTerminal -- (height - ada)
|
||||||
|
include : FlipAround df.middle (height / 2)
|
||||||
|
include : bar df (height - adb) mask sw
|
||||||
|
|
||||||
export : define [SeriflessBar height mask] : glyph-proc
|
export : define [SeriflessBar df height mask sw] : glyph-proc
|
||||||
set-base-anchor 'trailing' RightSB 0
|
set-base-anchor 'trailing' df.rightSB 0
|
||||||
include : difference
|
include : difference
|
||||||
VBar.r RightSB 0 height
|
VBar.r df.rightSB 0 height sw
|
||||||
mask height
|
mask df height sw
|
||||||
export : define [SerifedBar height mask] : glyph-proc
|
export : define [SerifedBar df height mask sw] : glyph-proc
|
||||||
include : SeriflessBar height mask
|
include : SeriflessBar df height mask sw
|
||||||
include [SerifFrame.fromDf [DivFrame 1] XH 0].rb.outer
|
include [SerifFrame.fromDf df height 0 (swSerif -- sw)].rb.outer
|
||||||
export : define [TailedBar height mask] : glyph-proc
|
export : define [TailedBar df height mask sw] : glyph-proc
|
||||||
set-base-anchor 'trailing' (RightSB + SideJut) 0
|
set-base-anchor 'trailing' (df.rightSB + SideJut) 0
|
||||||
include : difference
|
include : difference
|
||||||
RightwardTailedBar RightSB 0 height
|
RightwardTailedBar df.rightSB 0 height sw
|
||||||
mask height
|
mask df height sw
|
||||||
|
|
||||||
set SeriflessBar.inv SeriflessBar
|
set SeriflessBar.inv SeriflessBar
|
||||||
set SerifedBar.inv : function [height mask] : glyph-proc
|
set SerifedBar.inv : function [df height mask sw] : glyph-proc
|
||||||
include : SeriflessBar height mask
|
include : SeriflessBar df height mask sw
|
||||||
include [SerifFrame.fromDf [DivFrame 1] height 0].rt.outer
|
include [SerifFrame.fromDf df height 0 (swSerif -- sw)].rt.outer
|
||||||
set TailedBar.inv : function [height mask] : glyph-proc
|
set TailedBar.inv : function [df height mask sw] : glyph-proc
|
||||||
set-base-anchor 'trailing' (RightSB + SideJut) 0
|
set-base-anchor 'trailing' (df.rightSB + SideJut) 0
|
||||||
include : difference
|
include : difference
|
||||||
InvRightwardTailedBar RightSB 0 height
|
InvRightwardTailedBar df.rightSB 0 height sw
|
||||||
mask height
|
mask df height sw
|
||||||
|
|
||||||
|
|
||||||
export : define [ScriptCut y] : spiro-outline
|
export : define [ScriptCut df y sw] : spiro-outline
|
||||||
corner RightSB y
|
corner df.rightSB y
|
||||||
corner (RightSB - Stroke * HVContrast) y
|
corner (df.rightSB - sw * HVContrast) y
|
||||||
corner (RightSB - Stroke * HVContrast) (y - Stroke / 2)
|
corner (df.rightSB - sw * HVContrast) (y - sw / 2)
|
||||||
export : define [InvScriptCut y] : spiro-outline
|
export : define [InvScriptCut df y sw] : spiro-outline
|
||||||
corner RightSB 0
|
corner df.rightSB 0
|
||||||
corner (RightSB - Stroke * HVContrast) 0
|
corner (df.rightSB - sw * HVContrast) 0
|
||||||
corner (RightSB - Stroke * HVContrast) (0 + Stroke / 2)
|
corner (df.rightSB - sw * HVContrast) (0 + sw / 2)
|
||||||
|
|
||||||
define SingleStoreyConfig : SuffixCfg.weave
|
define SingleStoreyConfig : SuffixCfg.weave
|
||||||
object # body
|
object # body
|
||||||
|
@ -193,16 +223,16 @@ glyph-block Letter-Latin-Lower-A : begin
|
||||||
foreach { suffix { body bar } } [Object.entries SingleStoreyConfig] : do
|
foreach { suffix { body bar } } [Object.entries SingleStoreyConfig] : do
|
||||||
create-glyph "a.\(suffix)" : glyph-proc
|
create-glyph "a.\(suffix)" : glyph-proc
|
||||||
include : MarkSet.e
|
include : MarkSet.e
|
||||||
include : body XH bar no-shape
|
include : body [DivFrame 1] XH bar no-shape
|
||||||
create-glyph "largescripta.\(suffix)" : glyph-proc
|
create-glyph "largescripta.\(suffix)" : glyph-proc
|
||||||
include : MarkSet.capital
|
include : MarkSet.capital
|
||||||
include : body CAP bar SingleStorey.ScriptCut
|
include : body [DivFrame 1] CAP bar SingleStorey.ScriptCut
|
||||||
create-glyph "scripta.\(suffix)" : glyph-proc
|
create-glyph "scripta.\(suffix)" : glyph-proc
|
||||||
include : MarkSet.e
|
include : MarkSet.e
|
||||||
include : body XH bar SingleStorey.ScriptCut
|
include : body [DivFrame 1] XH bar SingleStorey.ScriptCut
|
||||||
create-glyph "invscripta.\(suffix)" : glyph-proc
|
create-glyph "invscripta.\(suffix)" : glyph-proc
|
||||||
include : MarkSet.e
|
include : MarkSet.e
|
||||||
include : body XH bar.inv SingleStorey.InvScriptCut
|
include : body [DivFrame 1] XH bar.inv SingleStorey.InvScriptCut
|
||||||
|
|
||||||
select-variant 'a' 'a'
|
select-variant 'a' 'a'
|
||||||
link-reduced-variant 'a/sansSerif' 'a' MathSansSerif
|
link-reduced-variant 'a/sansSerif' 'a' MathSansSerif
|
||||||
|
|
|
@ -14,7 +14,7 @@ glyph-block Letter-Latin-U : begin
|
||||||
glyph-block-import Letter-Shared-Shapes : nShoulder RightwardTailedBar DToothlessRise SerifFrame
|
glyph-block-import Letter-Shared-Shapes : nShoulder RightwardTailedBar DToothlessRise SerifFrame
|
||||||
glyph-block-import Letter-Shared-Shapes : CyrTailDescender RetroflexHook VerticalHook
|
glyph-block-import Letter-Shared-Shapes : CyrTailDescender RetroflexHook VerticalHook
|
||||||
|
|
||||||
glyph-block-export UShape
|
glyph-block-export UShape USerifs
|
||||||
|
|
||||||
define [UArcT] : with-params [sink df top bottom [stroke Stroke] [ada ArchDepthA] [adb ArchDepthB] [offset 0]] : sink
|
define [UArcT] : with-params [sink df top bottom [stroke Stroke] [ada ArchDepthA] [adb ArchDepthB] [offset 0]] : sink
|
||||||
widths.lhs stroke
|
widths.lhs stroke
|
||||||
|
@ -84,51 +84,52 @@ glyph-block Letter-Latin-U : begin
|
||||||
curl df.rightSB 0 [heading Downward]
|
curl df.rightSB 0 [heading Downward]
|
||||||
include : FlipAround df.middle (top / 2)
|
include : FlipAround df.middle (top / 2)
|
||||||
|
|
||||||
define [UTopLeftSerif df yTop] : tagged 'serifLT'
|
define [UTopLeftSerif df yTop _sw] : tagged 'serifLT'
|
||||||
HSerif.lt df.leftSB yTop SideJut
|
HSerif.lt df.leftSB yTop SideJut _sw
|
||||||
|
|
||||||
define [UTopRightSerif df yTop] : tagged 'serifRT'
|
define [UTopRightSerif df yTop _sw] : tagged 'serifRT'
|
||||||
HSerif.lt (df.rightSB - Stroke * HVContrast) yTop SideJut
|
HSerif.lt (df.rightSB - Stroke * HVContrast) yTop SideJut _sw
|
||||||
|
|
||||||
define [UBottomRightSerif df yTop] : glyph-proc
|
define [UBottomRightSerif df yTop _sw] : glyph-proc
|
||||||
include : tagged 'serifRB' : HSerif.rb df.rightSB 0 SideJut
|
include : tagged 'serifRB' : HSerif.rb df.rightSB 0 SideJut _sw
|
||||||
define trAnchor currentGlyph.baseAnchors.trailing
|
define trAnchor currentGlyph.baseAnchors.trailing
|
||||||
if trAnchor : begin
|
if trAnchor : begin
|
||||||
set-base-anchor 'trailing' (trAnchor.x + SideJut) trAnchor.y
|
set-base-anchor 'trailing' (trAnchor.x + SideJut) trAnchor.y
|
||||||
|
|
||||||
define [SmallUSlabs df top] : glyph-proc
|
define USerifs : namespace
|
||||||
include : UTopLeftSerif df top
|
export : define [Toothed df top _sw] : glyph-proc
|
||||||
if [not para.isItalic] : include : UTopRightSerif df top
|
include : UTopLeftSerif df top _sw
|
||||||
include : UBottomRightSerif df top
|
if [not para.isItalic] : include : UTopRightSerif df top _sw
|
||||||
|
include : UBottomRightSerif df top _sw
|
||||||
|
|
||||||
define [UrtBaseSlabs df top] : glyph-proc
|
export : define [RTBase df top _sw] : glyph-proc
|
||||||
include : UTopLeftSerif df top
|
include : UTopLeftSerif df top _sw
|
||||||
if [not para.isItalic] : include : UTopRightSerif df top
|
if [not para.isItalic] : include : UTopRightSerif df top _sw
|
||||||
|
|
||||||
define [SmallUTailedSlabs df top] : glyph-proc
|
export : define [Tailed df top _sw] : glyph-proc
|
||||||
include : UTopLeftSerif df top
|
include : UTopLeftSerif df top _sw
|
||||||
if [not para.isItalic] : include : UTopRightSerif df top
|
if [not para.isItalic] : include : UTopRightSerif df top _sw
|
||||||
|
|
||||||
define [CapitalUMotionToothlessSlabs df top] : glyph-proc
|
export : define [BilateralMotion df top _sw] : glyph-proc
|
||||||
include : HSerif.lt df.leftSB top SideJut
|
include : HSerif.lt df.leftSB top SideJut _sw
|
||||||
include : HSerif.rt df.rightSB top SideJut
|
include : HSerif.rt df.rightSB top SideJut _sw
|
||||||
|
|
||||||
define [SmallUToothlessSlabs df top] : glyph-proc
|
export : define [SmallToothless df top _sw] : glyph-proc
|
||||||
include : UTopLeftSerif df top
|
include : UTopLeftSerif df top _sw
|
||||||
include : UTopRightSerif df top
|
include : UTopRightSerif df top _sw
|
||||||
|
|
||||||
define [SmallUMotionSlabs df top] : glyph-proc
|
export : define [MotionToothed df top _sw] : glyph-proc
|
||||||
include : UTopLeftSerif df top
|
include : UTopLeftSerif df top _sw
|
||||||
include : UBottomRightSerif df top
|
include : UBottomRightSerif df top _sw
|
||||||
|
|
||||||
define [SmallUBottomRightSlabs df top] : glyph-proc
|
export : define [BottomRight df top _sw] : glyph-proc
|
||||||
include : UBottomRightSerif df top
|
include : UBottomRightSerif df top _sw
|
||||||
|
|
||||||
define [SmallUMotionTailedSlabs df top] : glyph-proc
|
export : define [MotionToothless df top _sw] : glyph-proc
|
||||||
include : UTopLeftSerif df top
|
include : UTopLeftSerif df top _sw
|
||||||
|
|
||||||
define [ToothlessSlabs df top] : begin
|
export : define [Toothless df top _sw] : begin
|
||||||
local sf : SerifFrame.fromDf df top 0
|
local sf : SerifFrame.fromDf df top 0 (swSerif -- _sw)
|
||||||
return : composite-proc sf.lt.full sf.rt.full
|
return : composite-proc sf.lt.full sf.rt.full
|
||||||
|
|
||||||
define CapitalUConfig : SuffixCfg.weave
|
define CapitalUConfig : SuffixCfg.weave
|
||||||
|
@ -139,14 +140,14 @@ glyph-block Letter-Latin-U : begin
|
||||||
toothlessRounded UToothlessRounded
|
toothlessRounded UToothlessRounded
|
||||||
function [body] : object # serifs
|
function [body] : object # serifs
|
||||||
serifless { no-shape false }
|
serifless { no-shape false }
|
||||||
bilateralMotionSerifed { CapitalUMotionToothlessSlabs true }
|
bilateralMotionSerifed { USerifs.BilateralMotion true }
|
||||||
unilateralMotionSerifed : match body
|
unilateralMotionSerifed : match body
|
||||||
[Just 'toothed'] { SmallUMotionSlabs true }
|
[Just 'toothed'] { USerifs.MotionToothed true }
|
||||||
__ { SmallUMotionTailedSlabs true }
|
__ { USerifs.MotionToothless true }
|
||||||
serifed : match body
|
serifed : match body
|
||||||
[Just 'toothed'] { SmallUSlabs true }
|
[Just 'toothed'] { USerifs.Toothed true }
|
||||||
[Just 'tailed'] { SmallUTailedSlabs true }
|
[Just 'tailed'] { USerifs.Tailed true }
|
||||||
__ { ToothlessSlabs true }
|
__ { USerifs.Toothless true }
|
||||||
|
|
||||||
foreach { suffix { Base {Slabs fLTSlab} } } [Object.entries CapitalUConfig] : do
|
foreach { suffix { Base {Slabs fLTSlab} } } [Object.entries CapitalUConfig] : do
|
||||||
create-glyph "U.\(suffix)" : glyph-proc
|
create-glyph "U.\(suffix)" : glyph-proc
|
||||||
|
@ -174,15 +175,15 @@ glyph-block Letter-Latin-U : begin
|
||||||
urtBase UToothed
|
urtBase UToothed
|
||||||
function [body] : object # serifs
|
function [body] : object # serifs
|
||||||
serifless no-shape
|
serifless no-shape
|
||||||
bottomRightSerifed SmallUBottomRightSlabs
|
bottomRightSerifed USerifs.BottomRight
|
||||||
motionSerifed : match body
|
motionSerifed : match body
|
||||||
[Just 'toothed'] SmallUMotionSlabs
|
[Just 'toothed'] USerifs.MotionToothed
|
||||||
__ SmallUMotionTailedSlabs
|
__ USerifs.MotionToothless
|
||||||
serifed : match body
|
serifed : match body
|
||||||
[Just 'toothed'] SmallUSlabs
|
[Just 'toothed'] USerifs.Toothed
|
||||||
[Just 'tailed'] SmallUTailedSlabs
|
[Just 'tailed'] USerifs.Tailed
|
||||||
[Just 'urtBase'] UrtBaseSlabs
|
[Just 'urtBase'] USerifs.RTBase
|
||||||
__ SmallUToothlessSlabs
|
__ USerifs.SmallToothless
|
||||||
|
|
||||||
foreach { suffix { Base Slabs } } [Object.entries SmallUConfig] : do
|
foreach { suffix { Base Slabs } } [Object.entries SmallUConfig] : do
|
||||||
create-glyph "u.\(suffix)" : glyph-proc
|
create-glyph "u.\(suffix)" : glyph-proc
|
||||||
|
|
|
@ -212,33 +212,7 @@ glyph-block Letter-Latin-Upper-B : begin
|
||||||
flat Middle (midy + (fine - stroke / 2)) [widths.heading fine 0 Leftward]
|
flat Middle (midy + (fine - stroke / 2)) [widths.heading fine 0 Leftward]
|
||||||
curl mid (midy + (fine - stroke / 2)) [widths.heading fine 0 Leftward]
|
curl mid (midy + (fine - stroke / 2)) [widths.heading fine 0 Leftward]
|
||||||
|
|
||||||
define [ClosedEpsilonShape top] : glyph-proc
|
create-glyph 'cyrl/ve.italic' : glyph-proc
|
||||||
local stroke : AdviceStroke2 2 3 top
|
|
||||||
local mid : mix SB RightSB 0.65
|
|
||||||
local midy : top * HBarPos
|
|
||||||
local ada : top - [mix (midy + stroke / 2) (top - O - stroke) (ArchDepthB / (ArchDepthA + ArchDepthB))] - TanSlope * HVContrast * stroke
|
|
||||||
local adb : [mix (stroke + O) (midy - stroke / 2) (ArchDepthB / (ArchDepthA + ArchDepthB))] + TanSlope * HVContrast * stroke
|
|
||||||
local fine : stroke * CThin
|
|
||||||
include : dispiro
|
|
||||||
widths.rhs fine
|
|
||||||
flat mid (midy - (fine - stroke / 2)) [heading Leftward]
|
|
||||||
curl Middle (midy - (fine - stroke / 2)) [heading Leftward]
|
|
||||||
archv
|
|
||||||
g4 (SB + (OX - O)) (top - ada) [widths.rhs stroke]
|
|
||||||
arcvh
|
|
||||||
g4 (Middle - stroke * 0.06 - CorrectionOMidS) (top - O)
|
|
||||||
archv
|
|
||||||
flat (RightSB - O) (top - SmallArchDepthB)
|
|
||||||
curl (RightSB - O) SmallArchDepthA
|
|
||||||
arcvh
|
|
||||||
g4 (Middle - stroke * 0.06 + CorrectionOMidS) O
|
|
||||||
archv
|
|
||||||
g4 (SB + (OX - O) + O * 2) (adb)
|
|
||||||
arcvh
|
|
||||||
flat Middle (midy + (fine - stroke / 2)) [widths.heading 0 fine Rightward]
|
|
||||||
curl mid (midy + (fine - stroke / 2)) [widths.heading 0 fine Rightward]
|
|
||||||
|
|
||||||
create-glyph 'closeturnepsilon' 0x25E : glyph-proc
|
|
||||||
include : MarkSet.e
|
include : MarkSet.e
|
||||||
include : ItalicCyrveShape XH
|
include : ItalicCyrveShape XH
|
||||||
|
|
||||||
|
@ -247,11 +221,6 @@ glyph-block Letter-Latin-Upper-B : begin
|
||||||
include : ItalicCyrveShape Ascender
|
include : ItalicCyrveShape Ascender
|
||||||
|
|
||||||
alias 'cyrl/ve.BGR' null 'grek/betaSymbol'
|
alias 'cyrl/ve.BGR' null 'grek/betaSymbol'
|
||||||
alias 'cyrl/ve.italic' null 'closeturnepsilon'
|
|
||||||
|
|
||||||
create-glyph 'closeepsilon' 0x29A : glyph-proc
|
|
||||||
include : MarkSet.e
|
|
||||||
include : ClosedEpsilonShape XH
|
|
||||||
|
|
||||||
create-glyph 'grek/beta' 0x3B2 : glyph-proc
|
create-glyph 'grek/beta' 0x3B2 : glyph-proc
|
||||||
include : MarkSet.bp
|
include : MarkSet.bp
|
||||||
|
|
|
@ -226,6 +226,36 @@ glyph-block Letter-Shared-Shapes : begin
|
||||||
glyph-block-export : OBarLeft
|
glyph-block-export : OBarLeft
|
||||||
define OBarLeft : namespace
|
define OBarLeft : namespace
|
||||||
define kSkewShift 0.5
|
define kSkewShift 0.5
|
||||||
|
export : define [arcStart] : with-params [
|
||||||
|
[top XH] [left SB] [right RightSB] [sw Stroke] [fine ShoulderFine]
|
||||||
|
[ada SmallArchDepthA] [adb SmallArchDepthB]
|
||||||
|
[ystart (top - ada - 0.01)]
|
||||||
|
] : begin
|
||||||
|
local skew : shoulderMidSkew fine sw
|
||||||
|
local mt : [mix left right 0.5] + (skew + kSkewShift * TanSlope) * sw
|
||||||
|
local xstart : left + (sw - fine) * HVContrast
|
||||||
|
return : list
|
||||||
|
flat xstart ystart [widths.rhs fine]
|
||||||
|
curl xstart (top - ada)
|
||||||
|
arcvh
|
||||||
|
g4 mt (top - O) [widths.rhs.heading sw {.y (-1) .x (-skew)}]
|
||||||
|
archv
|
||||||
|
|
||||||
|
export : define [arcEnd] : with-params [
|
||||||
|
[bot 0] [left SB] [right RightSB] [sw Stroke] [fine ShoulderFine]
|
||||||
|
[ada SmallArchDepthA] [adb SmallArchDepthB]
|
||||||
|
[yend (bot + ada + 0.01)]
|
||||||
|
] : begin
|
||||||
|
local skew : shoulderMidSkew fine sw
|
||||||
|
local mb : [mix left right 0.5] + (skew + kSkewShift * TanSlope) * sw
|
||||||
|
local xend : left + (sw - fine) * HVContrast
|
||||||
|
return : list
|
||||||
|
arcvh
|
||||||
|
g4 mb (bot + O) [widths.rhs.heading sw {.y (1) .x (-skew)}]
|
||||||
|
archv
|
||||||
|
flat xend (bot + adb) [widths.rhs fine]
|
||||||
|
curl xend yend
|
||||||
|
|
||||||
export : define [shape] : with-params [
|
export : define [shape] : with-params [
|
||||||
[top XH] [left SB] [right RightSB] [sw Stroke] [fine ShoulderFine]
|
[top XH] [left SB] [right RightSB] [sw Stroke] [fine ShoulderFine]
|
||||||
[ada SmallArchDepthA] [adb SmallArchDepthB]
|
[ada SmallArchDepthA] [adb SmallArchDepthB]
|
||||||
|
@ -334,6 +364,37 @@ glyph-block Letter-Shared-Shapes : begin
|
||||||
|
|
||||||
glyph-block-export : OBarRight
|
glyph-block-export : OBarRight
|
||||||
define OBarRight : namespace
|
define OBarRight : namespace
|
||||||
|
define kSkewShift 0.5
|
||||||
|
export : define [arcStart] : with-params [
|
||||||
|
[top XH] [left SB] [right RightSB] [sw Stroke] [fine ShoulderFine]
|
||||||
|
[ada SmallArchDepthA] [adb SmallArchDepthB]
|
||||||
|
[ystart (top - ada - 0.01)]
|
||||||
|
] : begin
|
||||||
|
local skew : shoulderMidSkew fine sw
|
||||||
|
local mt : [mix left right 0.5] - (skew + kSkewShift * TanSlope) * sw
|
||||||
|
local xstart : right - (sw - fine) * HVContrast
|
||||||
|
return : list
|
||||||
|
flat xstart ystart [widths.lhs fine]
|
||||||
|
curl xstart (top - adb)
|
||||||
|
arcvh
|
||||||
|
g4 mt (top - O) [widths.lhs.heading sw {.y (-1) .x (skew)}]
|
||||||
|
archv
|
||||||
|
|
||||||
|
export : define [arcEnd] : with-params [
|
||||||
|
[bot 0] [left SB] [right RightSB] [sw Stroke] [fine ShoulderFine]
|
||||||
|
[ada SmallArchDepthA] [adb SmallArchDepthB]
|
||||||
|
[yend (bot + ada + 0.01)]
|
||||||
|
] : begin
|
||||||
|
local skew : shoulderMidSkew fine sw
|
||||||
|
local mb : [mix left right 0.5] - (skew + kSkewShift * TanSlope) * sw
|
||||||
|
local xend : right - (sw - fine) * HVContrast
|
||||||
|
return : list
|
||||||
|
arcvh
|
||||||
|
g4 mb (bot + O) [widths.lhs.heading sw {.y (1) .x (skew)}]
|
||||||
|
archv
|
||||||
|
flat xend (bot + ada) [widths.lhs fine]
|
||||||
|
curl xend yend
|
||||||
|
|
||||||
export : define [shape] : with-params [
|
export : define [shape] : with-params [
|
||||||
[top XH] [left SB] [right RightSB] [sw Stroke] [fine ShoulderFine]
|
[top XH] [left SB] [right RightSB] [sw Stroke] [fine ShoulderFine]
|
||||||
[ada SmallArchDepthA] [adb SmallArchDepthB]
|
[ada SmallArchDepthA] [adb SmallArchDepthB]
|
||||||
|
|
|
@ -479,8 +479,8 @@ glyph-block Symbol-Arrow : for-width-kinds WideWidth1
|
||||||
local arrowX : l + 0.5 * HVContrast * Stroke
|
local arrowX : l + 0.5 * HVContrast * Stroke
|
||||||
local headLength : headSize * [Math.sqrt 0.5]
|
local headLength : headSize * [Math.sqrt 0.5]
|
||||||
local gapSize : Math.max (2 * headLength) (CAP - 0 - ada - adb)
|
local gapSize : Math.max (2 * headLength) (CAP - 0 - ada - adb)
|
||||||
local gapTop : SymbolMid + 0.5 * gapSize
|
local gapTop : CAP / 2 + 0.5 * gapSize
|
||||||
local gapBot : SymbolMid - 0.5 * gapSize
|
local gapBot : CAP / 2 - 0.5 * gapSize
|
||||||
set-width MosaicWidth
|
set-width MosaicWidth
|
||||||
include : union
|
include : union
|
||||||
difference
|
difference
|
||||||
|
|
|
@ -1425,6 +1425,7 @@ selectorAffix.a = "doubleStorey"
|
||||||
selectorAffix."a/sansSerif" = "doubleStorey"
|
selectorAffix."a/sansSerif" = "doubleStorey"
|
||||||
selectorAffix."a/rtailBase" = "doubleStorey"
|
selectorAffix."a/rtailBase" = "doubleStorey"
|
||||||
selectorAffix."a/turnABase" = "doubleStorey"
|
selectorAffix."a/turnABase" = "doubleStorey"
|
||||||
|
selectorAffix."a/single" = "singleStorey"
|
||||||
selectorAffix.scripta = "singleStorey"
|
selectorAffix.scripta = "singleStorey"
|
||||||
|
|
||||||
[prime.a.variants-buildup.stages.storey.single-storey]
|
[prime.a.variants-buildup.stages.storey.single-storey]
|
||||||
|
@ -1435,6 +1436,7 @@ selectorAffix.a = "singleStorey"
|
||||||
selectorAffix."a/sansSerif" = "singleStorey"
|
selectorAffix."a/sansSerif" = "singleStorey"
|
||||||
selectorAffix."a/rtailBase" = "singleStorey"
|
selectorAffix."a/rtailBase" = "singleStorey"
|
||||||
selectorAffix."a/turnABase" = "doubleStorey"
|
selectorAffix."a/turnABase" = "doubleStorey"
|
||||||
|
selectorAffix."a/single" = "singleStorey"
|
||||||
selectorAffix.scripta = "singleStorey"
|
selectorAffix.scripta = "singleStorey"
|
||||||
|
|
||||||
[prime.a.variants-buildup.stages.ear."*"]
|
[prime.a.variants-buildup.stages.ear."*"]
|
||||||
|
@ -1447,6 +1449,7 @@ selectorAffix.a = ""
|
||||||
selectorAffix."a/sansSerif" = ""
|
selectorAffix."a/sansSerif" = ""
|
||||||
selectorAffix."a/rtailBase" = ""
|
selectorAffix."a/rtailBase" = ""
|
||||||
selectorAffix."a/turnABase" = ""
|
selectorAffix."a/turnABase" = ""
|
||||||
|
selectorAffix."a/single" = ""
|
||||||
selectorAffix.scripta = ""
|
selectorAffix.scripta = ""
|
||||||
|
|
||||||
[prime.a.variants-buildup.stages.ear.earless-corner]
|
[prime.a.variants-buildup.stages.ear.earless-corner]
|
||||||
|
@ -1456,6 +1459,7 @@ selectorAffix.a = "earlessCorner"
|
||||||
selectorAffix."a/sansSerif" = "earlessCorner"
|
selectorAffix."a/sansSerif" = "earlessCorner"
|
||||||
selectorAffix."a/rtailBase" = "earlessCorner"
|
selectorAffix."a/rtailBase" = "earlessCorner"
|
||||||
selectorAffix."a/turnABase" = ""
|
selectorAffix."a/turnABase" = ""
|
||||||
|
selectorAffix."a/single" = "earlessCorner"
|
||||||
selectorAffix.scripta = ""
|
selectorAffix.scripta = ""
|
||||||
|
|
||||||
[prime.a.variants-buildup.stages.ear.earless-rounded]
|
[prime.a.variants-buildup.stages.ear.earless-rounded]
|
||||||
|
@ -1465,6 +1469,7 @@ selectorAffix.a = "earlessRounded"
|
||||||
selectorAffix."a/sansSerif" = "earlessRounded"
|
selectorAffix."a/sansSerif" = "earlessRounded"
|
||||||
selectorAffix."a/rtailBase" = "earlessRounded"
|
selectorAffix."a/rtailBase" = "earlessRounded"
|
||||||
selectorAffix."a/turnABase" = ""
|
selectorAffix."a/turnABase" = ""
|
||||||
|
selectorAffix."a/single" = "earlessRounded"
|
||||||
selectorAffix.scripta = ""
|
selectorAffix.scripta = ""
|
||||||
|
|
||||||
[prime.a.variants-buildup.stages.terminal.serifless]
|
[prime.a.variants-buildup.stages.terminal.serifless]
|
||||||
|
@ -1475,6 +1480,7 @@ selectorAffix.a = "serifless"
|
||||||
selectorAffix."a/sansSerif" = "serifless"
|
selectorAffix."a/sansSerif" = "serifless"
|
||||||
selectorAffix."a/rtailBase" = "serifless"
|
selectorAffix."a/rtailBase" = "serifless"
|
||||||
selectorAffix."a/turnABase" = "serifless"
|
selectorAffix."a/turnABase" = "serifless"
|
||||||
|
selectorAffix."a/single" = "serifless"
|
||||||
selectorAffix.scripta = "serifless"
|
selectorAffix.scripta = "serifless"
|
||||||
|
|
||||||
[prime.a.variants-buildup.stages.terminal.tailed]
|
[prime.a.variants-buildup.stages.terminal.tailed]
|
||||||
|
@ -1484,6 +1490,7 @@ selectorAffix.a = "tailed"
|
||||||
selectorAffix."a/sansSerif" = "tailed"
|
selectorAffix."a/sansSerif" = "tailed"
|
||||||
selectorAffix."a/rtailBase" = "serifless"
|
selectorAffix."a/rtailBase" = "serifless"
|
||||||
selectorAffix."a/turnABase" = "tailed"
|
selectorAffix."a/turnABase" = "tailed"
|
||||||
|
selectorAffix."a/single" = "tailed"
|
||||||
selectorAffix.scripta = "tailed"
|
selectorAffix.scripta = "tailed"
|
||||||
|
|
||||||
[prime.a.variants-buildup.stages.terminal.toothless-corner]
|
[prime.a.variants-buildup.stages.terminal.toothless-corner]
|
||||||
|
@ -1494,6 +1501,7 @@ selectorAffix.a = "toothlessCorner"
|
||||||
selectorAffix."a/sansSerif" = "toothlessCorner"
|
selectorAffix."a/sansSerif" = "toothlessCorner"
|
||||||
selectorAffix."a/rtailBase" = "serifless"
|
selectorAffix."a/rtailBase" = "serifless"
|
||||||
selectorAffix."a/turnABase" = "toothlessCorner"
|
selectorAffix."a/turnABase" = "toothlessCorner"
|
||||||
|
selectorAffix."a/single" = "serifless"
|
||||||
selectorAffix.scripta = "serifless"
|
selectorAffix.scripta = "serifless"
|
||||||
|
|
||||||
[prime.a.variants-buildup.stages.terminal.toothless-rounded]
|
[prime.a.variants-buildup.stages.terminal.toothless-rounded]
|
||||||
|
@ -1504,6 +1512,7 @@ selectorAffix.a = "toothlessRounded"
|
||||||
selectorAffix."a/sansSerif" = "toothlessRounded"
|
selectorAffix."a/sansSerif" = "toothlessRounded"
|
||||||
selectorAffix."a/rtailBase" = "serifless"
|
selectorAffix."a/rtailBase" = "serifless"
|
||||||
selectorAffix."a/turnABase" = "toothlessRounded"
|
selectorAffix."a/turnABase" = "toothlessRounded"
|
||||||
|
selectorAffix."a/single" = "serifless"
|
||||||
selectorAffix.scripta = "serifless"
|
selectorAffix.scripta = "serifless"
|
||||||
|
|
||||||
[prime.a.variants-buildup.stages.terminal.serifed]
|
[prime.a.variants-buildup.stages.terminal.serifed]
|
||||||
|
@ -1513,6 +1522,7 @@ selectorAffix.a = "serifed"
|
||||||
selectorAffix."a/sansSerif" = "serifless"
|
selectorAffix."a/sansSerif" = "serifless"
|
||||||
selectorAffix."a/rtailBase" = "serifless"
|
selectorAffix."a/rtailBase" = "serifless"
|
||||||
selectorAffix."a/turnABase" = "serifed"
|
selectorAffix."a/turnABase" = "serifed"
|
||||||
|
selectorAffix."a/single" = "serifed"
|
||||||
selectorAffix.scripta = "serifed"
|
selectorAffix.scripta = "serifed"
|
||||||
|
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue