Add currency symbols and move those directly derived from Latin letter into the Latin file.
This commit is contained in:
parent
49bc8e5302
commit
5a0546270c
6 changed files with 181 additions and 166 deletions
|
@ -75,9 +75,7 @@ export all : define [buildGlyphs para recursive recursiveCodes] : begin
|
||||||
if (saveGlyphName.0 != '.' && glyphMap.(saveGlyphName))
|
if (saveGlyphName.0 != '.' && glyphMap.(saveGlyphName))
|
||||||
throw : new Error "Glyph \(saveGlyphName) already exists"
|
throw : new Error "Glyph \(saveGlyphName) already exists"
|
||||||
glyphMap.(saveGlyphName) = glyphObject
|
glyphMap.(saveGlyphName) = glyphObject
|
||||||
if unicode : begin
|
if unicode : $assignUnicodeImpl$ glyphObject unicode
|
||||||
glyphObject.assign-unicode unicode
|
|
||||||
set unicodeGlyphs.(unicode) glyphObject
|
|
||||||
|
|
||||||
actions.call glyphObject
|
actions.call glyphObject
|
||||||
|
|
||||||
|
@ -95,6 +93,10 @@ export all : define [buildGlyphs para recursive recursiveCodes] : begin
|
||||||
`[@name @actions] : return : createAndSaveGlyphImpl name null actions
|
`[@name @actions] : return : createAndSaveGlyphImpl name null actions
|
||||||
`[@actions] : return : createAndSaveGlyphImpl null null actions
|
`[@actions] : return : createAndSaveGlyphImpl null null actions
|
||||||
|
|
||||||
|
define [$assignUnicodeImpl$ g unicode] : begin
|
||||||
|
g.assign-unicode unicode
|
||||||
|
set unicodeGlyphs.(g.unicode.((g.unicode.length - 1))) g
|
||||||
|
|
||||||
define [$save$ _name unicode] : begin
|
define [$save$ _name unicode] : begin
|
||||||
define t this
|
define t this
|
||||||
define name : if [not _name] ('--autoname-' + [newtemp]) _name
|
define name : if [not _name] ('--autoname-' + [newtemp]) _name
|
||||||
|
@ -109,9 +111,7 @@ export all : define [buildGlyphs para recursive recursiveCodes] : begin
|
||||||
set g.avoidBeingComposite t.avoidBeingComposite
|
set g.avoidBeingComposite t.avoidBeingComposite
|
||||||
set g.related t.related
|
set g.related t.related
|
||||||
if name : set dependencyProfile.(name) : getDependencyProfile g
|
if name : set dependencyProfile.(name) : getDependencyProfile g
|
||||||
if (g && unicode) : begin
|
if (g && unicode) : $assignUnicodeImpl$ g unicode
|
||||||
g.assign-unicode unicode
|
|
||||||
set unicodeGlyphs.(g.unicode.((g.unicode.length - 1))) g
|
|
||||||
return g
|
return g
|
||||||
|
|
||||||
### Spiro constructions
|
### Spiro constructions
|
||||||
|
@ -120,7 +120,7 @@ export all : define [buildGlyphs para recursive recursiveCodes] : begin
|
||||||
define booleFns : BooleKit.SetupBuilders : object globalTransform Glyph
|
define booleFns : BooleKit.SetupBuilders : object globalTransform Glyph
|
||||||
|
|
||||||
# IDKY, but wrapping "metrics" prevents Node.js on Arch modifying it.
|
# IDKY, but wrapping "metrics" prevents Node.js on Arch modifying it.
|
||||||
define $$Capture$$ : object [metrics : Object.create metrics] $NamedParameterPair$ $donothing$ para recursive recursiveCodes variantSelector glyphMap glyphList unicodeGlyphs create-glyph $save$ spirofns booleFns MarkSet AS_BASE ALSO_METRICS pickHash dependencyProfile getDependencyProfile buildGlyphs newtemp tagged DivFrame fontMetrics
|
define $$Capture$$ : object [metrics : Object.create metrics] $NamedParameterPair$ $donothing$ para recursive recursiveCodes variantSelector glyphMap glyphList unicodeGlyphs create-glyph $save$ spirofns booleFns MarkSet AS_BASE ALSO_METRICS pickHash dependencyProfile getDependencyProfile buildGlyphs newtemp tagged DivFrame fontMetrics $assignUnicodeImpl$
|
||||||
|
|
||||||
### HERE WE GO
|
### HERE WE GO
|
||||||
run-glyph-module '../glyphs/common-shapes.js'
|
run-glyph-module '../glyphs/common-shapes.js'
|
||||||
|
|
|
@ -861,6 +861,7 @@ glyph-block Autobuild-Ligatures : begin
|
||||||
list 0x479 { 'o' 'y' }
|
list 0x479 { 'o' 'y' }
|
||||||
list 0x20A7 { 'P' 's' }
|
list 0x20A7 { 'P' 's' }
|
||||||
list 0x20A8 { 'R' 's' }
|
list 0x20A8 { 'R' 's' }
|
||||||
|
list 0x20AF { 'D' 'rho' }
|
||||||
list 0x203c { 'exclam' 'exclam' }
|
list 0x203c { 'exclam' 'exclam' }
|
||||||
list 0x2047 { 'question' 'question' }
|
list 0x2047 { 'question' 'question' }
|
||||||
list 0x2048 { 'question' 'exclam' }
|
list 0x2048 { 'question' 'exclam' }
|
||||||
|
|
|
@ -61,7 +61,6 @@ glyph-block CommonShapes : begin
|
||||||
define [query-glyph id] : return glyphMap.(id)
|
define [query-glyph id] : return glyphMap.(id)
|
||||||
define [into-unicode code] : glyph-construction : if code : assign-unicode code
|
define [into-unicode code] : glyph-construction : if code : assign-unicode code
|
||||||
|
|
||||||
|
|
||||||
define [WithDerivatives sourceGid dstGid Fn] : if glyphMap.(sourceGid) : begin
|
define [WithDerivatives sourceGid dstGid Fn] : if glyphMap.(sourceGid) : begin
|
||||||
local glyphSrc glyphMap.(sourceGid)
|
local glyphSrc glyphMap.(sourceGid)
|
||||||
create-glyph dstGid : glyph-construction : include : Fn sourceGid null
|
create-glyph dstGid : glyph-construction : include : Fn sourceGid null
|
||||||
|
|
|
@ -1130,6 +1130,10 @@ glyph-block Letter-Latin-W : begin
|
||||||
set WShape.m1S 0.235
|
set WShape.m1S 0.235
|
||||||
set WShape.m2S : 1 - WShape.m1S
|
set WShape.m2S : 1 - WShape.m1S
|
||||||
|
|
||||||
|
define [WonOverlay df] : glyph-construction
|
||||||
|
include : HOverlayBar [mix SB 0 0.7] [mix df.rightSB df.width 0.7] (CAP * 0.6)
|
||||||
|
include : HOverlayBar [mix SB 0 0.7] [mix df.rightSB df.width 0.7] (CAP * 0.35)
|
||||||
|
|
||||||
sketch # W
|
sketch # W
|
||||||
local df : DivFrame para.diversityM 3
|
local df : DivFrame para.diversityM 3
|
||||||
set-width df.width
|
set-width df.width
|
||||||
|
@ -1138,10 +1142,16 @@ glyph-block Letter-Latin-W : begin
|
||||||
include : WShape CAP true df
|
include : WShape CAP true df
|
||||||
save 'W.straight'
|
save 'W.straight'
|
||||||
save 'cyrWe.straight'
|
save 'cyrWe.straight'
|
||||||
|
branch
|
||||||
|
include : WonOverlay df
|
||||||
|
save 'symbol/currency/wonSign.straight'
|
||||||
branch
|
branch
|
||||||
include : WShape CAP false df
|
include : WShape CAP false df
|
||||||
save 'W.curly'
|
save 'W.curly'
|
||||||
save 'cyrWe.curly'
|
save 'cyrWe.curly'
|
||||||
|
branch
|
||||||
|
include : WonOverlay df
|
||||||
|
save 'symbol/currency/wonSign.curly'
|
||||||
|
|
||||||
sketch # w
|
sketch # w
|
||||||
local df : DivFrame para.diversityM 3
|
local df : DivFrame para.diversityM 3
|
||||||
|
@ -1156,8 +1166,6 @@ glyph-block Letter-Latin-W : begin
|
||||||
save 'w.curly'
|
save 'w.curly'
|
||||||
save 'cyrwe.curly'
|
save 'cyrwe.curly'
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
define [WHooktopShape top barStraight df] : glyph-construction
|
define [WHooktopShape top barStraight df] : glyph-construction
|
||||||
local fineOuter : if barStraight
|
local fineOuter : if barStraight
|
||||||
adviceBlackness WShape.fineSOuter [Math.sqrt df.div]
|
adviceBlackness WShape.fineSOuter [Math.sqrt df.div]
|
||||||
|
@ -1227,6 +1235,7 @@ glyph-block Letter-Latin-W : begin
|
||||||
select-variant 'W' 'W'
|
select-variant 'W' 'W'
|
||||||
select-variant 'cyrWe' 0x51C (follow -- 'W')
|
select-variant 'cyrWe' 0x51C (follow -- 'W')
|
||||||
select-variant 'Whooktop' 0x2C72 (follow -- 'W')
|
select-variant 'Whooktop' 0x2C72 (follow -- 'W')
|
||||||
|
select-variant 'symbol/currency/wonSign' 0x20A9 (follow -- 'W')
|
||||||
select-variant 'w' 'w'
|
select-variant 'w' 'w'
|
||||||
select-variant 'cyrwe' 0x51D (follow -- 'w')
|
select-variant 'cyrwe' 0x51D (follow -- 'w')
|
||||||
select-variant 'ww' 0x2AC (follow -- 'w')
|
select-variant 'ww' 0x2AC (follow -- 'w')
|
||||||
|
@ -1373,6 +1382,10 @@ glyph-block Letter-Latin-Upper-Y : begin
|
||||||
include : AIVSerifs top
|
include : AIVSerifs top
|
||||||
include : CenterBottomSerif Middle [fallback bot 0] MidJutSide
|
include : CenterBottomSerif Middle [fallback bot 0] MidJutSide
|
||||||
|
|
||||||
|
define [YOverlayShape] : glyph-construction
|
||||||
|
include : HOverlayBar SB RightSB (CAP * 0.45)
|
||||||
|
include : HOverlayBar SB RightSB (CAP * 0.25)
|
||||||
|
|
||||||
sketch # Y
|
sketch # Y
|
||||||
include MarkSet.capital
|
include MarkSet.capital
|
||||||
branch
|
branch
|
||||||
|
@ -1380,11 +1393,17 @@ glyph-block Letter-Latin-Upper-Y : begin
|
||||||
save 'Y.straight'
|
save 'Y.straight'
|
||||||
save 'Upsilon.straight'
|
save 'Upsilon.straight'
|
||||||
save 'cyrUe.straight'
|
save 'cyrUe.straight'
|
||||||
|
branch
|
||||||
|
include : YOverlayShape
|
||||||
|
save 'symbol/currency/yenSign.straight'
|
||||||
branch
|
branch
|
||||||
include : YShape false CAP
|
include : YShape false CAP
|
||||||
save 'Y.curly'
|
save 'Y.curly'
|
||||||
save 'Upsilon.curly'
|
save 'Upsilon.curly'
|
||||||
save 'cyrUe.curly'
|
save 'cyrUe.curly'
|
||||||
|
branch
|
||||||
|
include : YOverlayShape
|
||||||
|
save 'symbol/currency/yenSign.curly'
|
||||||
|
|
||||||
define [YHookTopShape straightBar] : glyph-construction
|
define [YHookTopShape straightBar] : glyph-construction
|
||||||
include : YShape straightBar CAP
|
include : YShape straightBar CAP
|
||||||
|
@ -1433,7 +1452,7 @@ glyph-block Letter-Latin-Upper-Y : begin
|
||||||
select-variant 'Upsilon' 0x3A5 (follow -- 'Y')
|
select-variant 'Upsilon' 0x3A5 (follow -- 'Y')
|
||||||
select-variant 'cyrUe' 0x4AE (follow -- 'Y')
|
select-variant 'cyrUe' 0x4AE (follow -- 'Y')
|
||||||
select-variant 'cyrue' 0x4AF (follow -- 'Y')
|
select-variant 'cyrue' 0x4AF (follow -- 'Y')
|
||||||
|
select-variant 'symbol/currency/yenSign' 0xA5 (follow -- 'Y')
|
||||||
|
|
||||||
glyph-block Letter-Latin-Lower-Y : begin
|
glyph-block Letter-Latin-Lower-Y : begin
|
||||||
glyph-block-import CommonShapes
|
glyph-block-import CommonShapes
|
||||||
|
@ -2374,11 +2393,12 @@ glyph-block Letter-Latin-Lower-D : begin
|
||||||
glyph-block Letter-Latin-Upper-P : begin
|
glyph-block Letter-Latin-Upper-P : begin
|
||||||
glyph-block-import CommonShapes
|
glyph-block-import CommonShapes
|
||||||
glyph-block-import Overmarks
|
glyph-block-import Overmarks
|
||||||
glyph-block-export PShape PShapeOutline RevPShape
|
glyph-block-export PShape PShapeOutline RevPShape PBarPosY
|
||||||
|
|
||||||
|
define [PBarPosY top sw bp] : (top - sw) * bp - sw * PShape.SwBelowBar
|
||||||
define [PShapeOutlineKnots top mul bp overshoot sw offset] : begin
|
define [PShapeOutlineKnots top mul bp overshoot sw offset] : begin
|
||||||
local bowlTop (top * 1 - offset)
|
local bowlTop (top * 1 - offset)
|
||||||
local bowlBottom ((top - sw) * bp - sw * PShape.SwBelowBar + offset)
|
local bowlBottom : [PBarPosY top sw bp] + offset
|
||||||
local turnRadius : (bowlTop - bowlBottom) * 0.45
|
local turnRadius : (bowlTop - bowlBottom) * 0.45
|
||||||
local sma : SmoothAOf (Smooth * 0.9) Width
|
local sma : SmoothAOf (Smooth * 0.9) Width
|
||||||
local smb : SmoothBOf (Smooth * 0.9) Width
|
local smb : SmoothBOf (Smooth * 0.9) Width
|
||||||
|
@ -2438,12 +2458,12 @@ glyph-block Letter-Latin-Upper-P : begin
|
||||||
include : spiro-outline
|
include : spiro-outline
|
||||||
PShapeOutlineKnots top mul bp overshoot sw offset
|
PShapeOutlineKnots top mul bp overshoot sw offset
|
||||||
|
|
||||||
define [PShape] : params [top [mul PShape.defaultMul] [bp PShape.BarPos] [overshoot PShape.defaultOvershoot] [sw Stroke] [slab SLAB]] : glyph-construction
|
define [PShape] : params [top [mul PShape.defaultMul] [bp PShape.BarPos] [overshoot PShape.defaultOvershoot] [sw Stroke] [slab SLAB] [withBar true]] : glyph-construction
|
||||||
include : dispiro
|
include : dispiro
|
||||||
widths.rhs sw
|
widths.rhs sw
|
||||||
PShapeOutlineKnots top mul bp overshoot sw 0
|
PShapeOutlineKnots top mul bp overshoot sw 0
|
||||||
|
if withBar : begin
|
||||||
include : tagged 'strokeL' : VBarLeft (SB * mul) 0 top sw
|
include : tagged 'strokeL' : VBarLeft (SB * mul) 0 top sw
|
||||||
|
|
||||||
if slab : begin
|
if slab : begin
|
||||||
include : tagged 'serifLT' : LeftwardTopSerif (SB * mul) top SideJut sw
|
include : tagged 'serifLT' : LeftwardTopSerif (SB * mul) top SideJut sw
|
||||||
include : CenterBottomSerif (SB * mul + HalfStroke * HVContrast) 0 Jut sw
|
include : CenterBottomSerif (SB * mul + HalfStroke * HVContrast) 0 Jut sw
|
||||||
|
@ -2481,6 +2501,11 @@ glyph-block Letter-Latin-Upper-P : begin
|
||||||
|
|
||||||
save 'Phookleft' 0x1A4
|
save 'Phookleft' 0x1A4
|
||||||
|
|
||||||
|
create-glyph 'symbol/currency/rubleSign' 0x20BD : glyph-construction
|
||||||
|
include [refer-glyph 'P'] AS_BASE ALSO_METRICS
|
||||||
|
define bar1pos : [PBarPosY CAP Stroke PShape.BarPos] + HalfStroke
|
||||||
|
include : HOverlayBar [mix SB 0 0.7] (SB + HalfStroke * HVContrast) bar1pos
|
||||||
|
include : HOverlayBar [mix SB 0 0.7] [mix SB RightSB 0.8] [mix 0 (bar1pos - Stroke) (3 / 4)]
|
||||||
|
|
||||||
glyph-block Letter-Latin-Lower-P : begin
|
glyph-block Letter-Latin-Lower-P : begin
|
||||||
glyph-block-import CommonShapes
|
glyph-block-import CommonShapes
|
||||||
|
@ -2520,18 +2545,18 @@ glyph-block Letter-Latin-Lower-P : begin
|
||||||
glyph-block Letter-Latin-Upper-R : begin
|
glyph-block Letter-Latin-Upper-R : begin
|
||||||
glyph-block-import CommonShapes
|
glyph-block-import CommonShapes
|
||||||
glyph-block-import Overmarks
|
glyph-block-import Overmarks
|
||||||
glyph-block-import Letter-Latin-Upper-P : PShape RevPShape
|
glyph-block-import Letter-Latin-Upper-P : PShape RevPShape PBarPosY
|
||||||
|
|
||||||
### R and CyrYa
|
### R and CyrYa
|
||||||
glyph-block-export RLegShape RLegTerminalX
|
glyph-block-export RLegShape RLegTerminalX
|
||||||
define [RLegTerminalX straight right sw] : right - [if straight (OX * 2) 0] - sw / 2 * HVContrast
|
define [RLegTerminalX straight right sw] : right - [if straight (OX * 2) 0] - sw / 2 * HVContrast
|
||||||
define [RLegShape right bottom top charTop slab straight sw extraShift] : glyph-construction
|
define [RLegShape] : params [top bottom left right charTop slab straight sw extraShift] : glyph-construction
|
||||||
local xRightBottom : RLegTerminalX straight right sw
|
local xRightBottom : RLegTerminalX straight right sw
|
||||||
if straight : do
|
if straight : do
|
||||||
local shift : if slab (-Jut / 2 + 0.25 * sw * HVContrast) 0
|
local shift : if slab (-Jut / 2 + 0.25 * sw * HVContrast) 0
|
||||||
include : dispiro
|
include : dispiro
|
||||||
widths.center (sw * [diagCor charTop (Width - extraShift * 2) 0 (sw * 2)])
|
widths.center (sw * [diagCor (top - bottom) (right - left - extraShift) 0 sw])
|
||||||
corner (Middle + extraShift + shift / 2) top [heading Downward]
|
corner (left + extraShift + shift / 2) top [heading Downward]
|
||||||
corner (xRightBottom + shift) bottom [heading Downward]
|
corner (xRightBottom + shift) bottom [heading Downward]
|
||||||
if slab : begin
|
if slab : begin
|
||||||
include : RightwardBottomSerif (xRightBottom + shift + 0.25 * sw * HVContrast) bottom (SideJut + Jut / 8)
|
include : RightwardBottomSerif (xRightBottom + shift + 0.25 * sw * HVContrast) bottom (SideJut + Jut / 8)
|
||||||
|
@ -2542,18 +2567,18 @@ glyph-block Letter-Latin-Upper-R : begin
|
||||||
widths.center sw
|
widths.center sw
|
||||||
g4.up.start xRightBottom bottom [heading Upward]
|
g4.up.start xRightBottom bottom [heading Upward]
|
||||||
quadcontrols 0 [if slab 0.3 0.4] 8
|
quadcontrols 0 [if slab 0.3 0.4] 8
|
||||||
g4 Middle top
|
g4 left top
|
||||||
if slab : begin
|
if slab : begin
|
||||||
include : RightwardBottomSerif right bottom (SideJut + Jut / 8)
|
include : RightwardBottomSerif right bottom (SideJut + Jut / 8)
|
||||||
|
|
||||||
define [RevRLegTerminalX straight left sw] : left + [if straight (OX * 2) 0] + sw / 2 * HVContrast
|
define [RevRLegTerminalX straight left sw] : left + [if straight (OX * 2) 0] + sw / 2 * HVContrast
|
||||||
define [RevRLegShape left bottom top charTop slab straight sw extraShift] : glyph-construction
|
define [RevRLegShape] : params [top bottom left right charTop slab straight sw extraShift] : glyph-construction
|
||||||
local xLeftBottom : RevRLegTerminalX straight left sw
|
local xLeftBottom : RevRLegTerminalX straight left sw
|
||||||
if straight : do
|
if straight : do
|
||||||
local shift : if slab (-Jut / 2 + 0.25 * sw * HVContrast) 0
|
local shift : if slab (-Jut / 2 + 0.25 * sw * HVContrast) 0
|
||||||
include : dispiro
|
include : dispiro
|
||||||
widths.center (sw * [diagCor charTop (Width - extraShift * 2) 0 (sw * 2)])
|
widths.center (sw * [diagCor (top - bottom) (right - left - extraShift) 0 sw])
|
||||||
corner (Middle + extraShift + shift / 2) top [heading Downward]
|
corner (right + extraShift + shift / 2) top [heading Downward]
|
||||||
corner (xLeftBottom + shift) bottom [heading Downward]
|
corner (xLeftBottom + shift) bottom [heading Downward]
|
||||||
if slab : begin
|
if slab : begin
|
||||||
include : LeftwardBottomSerif (xLeftBottom + shift - 0.25 * sw * HVContrast) bottom (SideJut + Jut / 8)
|
include : LeftwardBottomSerif (xLeftBottom + shift - 0.25 * sw * HVContrast) bottom (SideJut + Jut / 8)
|
||||||
|
@ -2564,7 +2589,7 @@ glyph-block Letter-Latin-Upper-R : begin
|
||||||
widths.center sw
|
widths.center sw
|
||||||
g4.up.start xLeftBottom bottom [heading Upward]
|
g4.up.start xLeftBottom bottom [heading Upward]
|
||||||
quadcontrols 0 [if slab 0.3 0.4] 8
|
quadcontrols 0 [if slab 0.3 0.4] 8
|
||||||
g4 Middle top
|
g4 right top
|
||||||
if slab : begin
|
if slab : begin
|
||||||
include : LeftwardBottomSerif left bottom (SideJut + Jut / 8)
|
include : LeftwardBottomSerif left bottom (SideJut + Jut / 8)
|
||||||
|
|
||||||
|
@ -2573,33 +2598,57 @@ glyph-block Letter-Latin-Upper-R : begin
|
||||||
define [RShape] : params [straightBar top [mul 1] [slab SLAB]] : glyph-construction
|
define [RShape] : params [straightBar top [mul 1] [slab SLAB]] : glyph-construction
|
||||||
include : PShape top (mul -- mul) (bp -- [RBarPos top slab]) (overshoot -- O) (slab -- slab)
|
include : PShape top (mul -- mul) (bp -- [RBarPos top slab]) (overshoot -- O) (slab -- slab)
|
||||||
local right (RightSB - O - [if SLAB (Jut / 8) 0])
|
local right (RightSB - O - [if SLAB (Jut / 8) 0])
|
||||||
include : RLegShape right 0 [RBarTop top Stroke straightBar slab] top slab straightBar Stroke 0
|
include : RLegShape [RBarTop top Stroke straightBar slab] 0 Middle right top slab straightBar Stroke 0
|
||||||
define [RevRShape] : params [straightBar top [mul 1] [slab SLAB]] : glyph-construction
|
define [RevRShape] : params [straightBar top [mul 1] [slab SLAB]] : glyph-construction
|
||||||
include : RevPShape top (mul -- mul) (bp -- [RBarPos top slab]) (overshoot -- O) (slab -- slab)
|
include : RevPShape top (mul -- mul) (bp -- [RBarPos top slab]) (overshoot -- O) (slab -- slab)
|
||||||
local left (SB + O + [if SLAB (Jut / 8) 0])
|
local left (SB + O + [if SLAB (Jut / 8) 0])
|
||||||
include : RevRLegShape left 0 [RBarTop top Stroke straightBar slab] top slab straightBar Stroke 0
|
include : RevRLegShape [RBarTop top Stroke straightBar slab] 0 left Middle top slab straightBar Stroke 0
|
||||||
|
|
||||||
sketch # R
|
sketch # R
|
||||||
include MarkSet.capital
|
include MarkSet.capital
|
||||||
branch
|
branch
|
||||||
include : RShape true CAP
|
include : RShape true CAP
|
||||||
set-base-anchor 'overlay' (SB + Stroke * HVContrast) (CAP * [RBarPos CAP SLAB] - HalfStroke)
|
set-base-anchor 'overlay'
|
||||||
|
SB + Stroke * HVContrast
|
||||||
|
PBarPosY CAP Stroke : RBarPos CAP SLAB
|
||||||
save 'R.straight'
|
save 'R.straight'
|
||||||
branch
|
branch
|
||||||
include : RShape true CAP (slab -- false)
|
include : RShape true CAP (slab -- false)
|
||||||
set-base-anchor 'overlay' (SB + Stroke * HVContrast) (CAP * [RBarPos CAP 0] - HalfStroke)
|
set-base-anchor 'overlay'
|
||||||
|
SB + Stroke * HVContrast
|
||||||
|
PBarPosY CAP Stroke : RBarPos CAP 0
|
||||||
eject-contour 'strokeL'
|
eject-contour 'strokeL'
|
||||||
save 'Rrotunda.straight'
|
save 'Rrotunda.straight'
|
||||||
branch
|
branch
|
||||||
include : RShape false CAP
|
include : RShape false CAP
|
||||||
set-base-anchor 'overlay' (SB + Stroke * HVContrast) (CAP * [RBarPos CAP SLAB] - HalfStroke)
|
set-base-anchor 'overlay'
|
||||||
|
SB + Stroke * HVContrast
|
||||||
|
PBarPosY CAP Stroke : RBarPos CAP SLAB
|
||||||
save 'R.curly'
|
save 'R.curly'
|
||||||
branch
|
branch
|
||||||
include : RShape false CAP (slab -- false)
|
include : RShape false CAP (slab -- false)
|
||||||
set-base-anchor 'overlay' (SB + Stroke * HVContrast) (CAP * [RBarPos CAP 0] - HalfStroke)
|
set-base-anchor 'overlay'
|
||||||
|
SB + Stroke * HVContrast
|
||||||
|
PBarPosY CAP Stroke : RBarPos CAP 0
|
||||||
eject-contour 'strokeL'
|
eject-contour 'strokeL'
|
||||||
save 'Rrotunda.curly'
|
save 'Rrotunda.curly'
|
||||||
|
|
||||||
|
define [IndianRupeeShape suffix straightBar] : glyph-construction
|
||||||
|
define bp : RBarPos CAP 0
|
||||||
|
include : intersection
|
||||||
|
Rect CAP 0 SB Width
|
||||||
|
WithTransform [Translate (-Width / 8) 0]
|
||||||
|
PShape CAP (bp -- bp) (slab -- false) (withBar -- false)
|
||||||
|
local right : RightSB - O - [if straightBar 0 (Width / 16)]
|
||||||
|
include : RLegShape [RBarTop CAP Stroke straightBar false] 0 (Width * 0.375) right CAP false straightBar Stroke 0
|
||||||
|
|
||||||
|
define sw : adviceBlackness2 2 4 CAP
|
||||||
|
include : HBarTop SB RightSB CAP sw
|
||||||
|
include : HBar SB RightSB [mix CAP [PBarPosY CAP Stroke bp] 0.5] sw
|
||||||
|
|
||||||
|
create-glyph 'symbol/currency/indianRupeeSign.straight' : IndianRupeeShape 'straight' true
|
||||||
|
create-glyph 'symbol/currency/indianRupeeSign.curly' : IndianRupeeShape 'curly' false
|
||||||
|
|
||||||
sketch # smcpR
|
sketch # smcpR
|
||||||
include MarkSet.e
|
include MarkSet.e
|
||||||
branch
|
branch
|
||||||
|
@ -2619,6 +2668,7 @@ glyph-block Letter-Latin-Upper-R : begin
|
||||||
|
|
||||||
select-variant 'R' 'R'
|
select-variant 'R' 'R'
|
||||||
select-variant 'Rrotunda' 0xA75A (follow -- 'R')
|
select-variant 'Rrotunda' 0xA75A (follow -- 'R')
|
||||||
|
select-variant 'symbol/currency/indianRupeeSign' 0x20B9 (follow -- 'R')
|
||||||
select-variant 'smcpR' 0x280 (follow -- 'R')
|
select-variant 'smcpR' 0x280 (follow -- 'R')
|
||||||
select-variant 'rrotunda' 0xA75B (follow -- 'R')
|
select-variant 'rrotunda' 0xA75B (follow -- 'R')
|
||||||
|
|
||||||
|
@ -2641,10 +2691,10 @@ glyph-block Letter-Latin-Upper-R : begin
|
||||||
|
|
||||||
local right (RightSB - O - [if SLAB (Jut / 8) 0])
|
local right (RightSB - O - [if SLAB (Jut / 8) 0])
|
||||||
branch
|
branch
|
||||||
include : RLegShape right Descender ((top - Stroke) * bp) (top - Descender) SLAB true Stroke 0
|
include : RLegShape ((top - Stroke) * bp) Descender Middle right (top - Descender) SLAB true Stroke 0
|
||||||
save 'Yr.straight'
|
save 'Yr.straight'
|
||||||
branch
|
branch
|
||||||
include : RLegShape right Descender ((top - Stroke) * bp) (top - Descender) SLAB false Stroke 0
|
include : RLegShape ((top - Stroke) * bp) Descender Middle right (top - Descender) SLAB false Stroke 0
|
||||||
save 'Yr.curly'
|
save 'Yr.curly'
|
||||||
|
|
||||||
select-variant 'Yr' 0x1A6 (follow -- 'R')
|
select-variant 'Yr' 0x1A6 (follow -- 'R')
|
||||||
|
@ -2935,6 +2985,11 @@ glyph-block Letter-Latin-C : begin
|
||||||
save 'cyrEs' 0x421
|
save 'cyrEs' 0x421
|
||||||
save 'lunateSigma' 0x3F9
|
save 'lunateSigma' 0x3F9
|
||||||
|
|
||||||
|
create-glyph 'symbol/currency/euroSign' 0x20AC : glyph-construction
|
||||||
|
include [refer-glyph "C"] AS_BASE ALSO_METRICS
|
||||||
|
include : HOverlayBar [mix SB 0 0.7] [mix SB RightSB 0.7] (CAP * 0.4)
|
||||||
|
include : HOverlayBar [mix SB 0 0.7] [mix SB RightSB 0.7] (CAP * 0.6)
|
||||||
|
|
||||||
sketch # c
|
sketch # c
|
||||||
set-width Width
|
set-width Width
|
||||||
include MarkSet.e
|
include MarkSet.e
|
||||||
|
@ -2951,6 +3006,19 @@ glyph-block Letter-Latin-C : begin
|
||||||
save 'cyres' 0x441
|
save 'cyres' 0x441
|
||||||
save 'lunatesigma' 0x3F2
|
save 'lunatesigma' 0x3F2
|
||||||
|
|
||||||
|
create-glyph 'symbol/currency/centSign' 0xA2 : glyph-construction
|
||||||
|
define fine : adviceBlackness 4
|
||||||
|
include [refer-glyph 'c'] AS_BASE ALSO_METRICS
|
||||||
|
include : dispiro
|
||||||
|
widths.center
|
||||||
|
flat Middle (XH - HalfStroke)
|
||||||
|
curl Middle (XH - Descender / 2) [heading Upward]
|
||||||
|
include : dispiro
|
||||||
|
widths.center
|
||||||
|
flat Middle (Descender / 2) [heading Upward]
|
||||||
|
curl Middle HalfStroke
|
||||||
|
include : VBar Middle (XH - HalfStroke) (0 + HalfStroke) fine
|
||||||
|
|
||||||
turned 'turnC' 0x186 'C' Middle (CAP / 2)
|
turned 'turnC' 0x186 'C' Middle (CAP / 2)
|
||||||
turned 'turnc' 0x254 'c' Middle (XH / 2)
|
turned 'turnc' 0x254 'c' Middle (XH / 2)
|
||||||
composite [refer-glyph 'turnc'] [into-unicode 0x037B]
|
composite [refer-glyph 'turnc'] [into-unicode 0x037B]
|
||||||
|
@ -3529,14 +3597,19 @@ glyph-block Letter-Latin-Upper-N : begin
|
||||||
include : NShape XH SB RightSB 3 3.5
|
include : NShape XH SB RightSB 3 3.5
|
||||||
save 'smcpN' 0x274
|
save 'smcpN' 0x274
|
||||||
|
|
||||||
|
create-glyph 'symbol/currency/nairaSign' 0x20A6 : glyph-construction
|
||||||
|
include : NShape CAP (SB * 1.25) (Width - SB * 1.25) 3.5 4
|
||||||
|
define sw : adviceBlackness2 2 4 CAP
|
||||||
|
define gap : Math.max (CAP / 6) sw
|
||||||
|
include : HBarBottom [mix 0 SB 0.5] [mix Width RightSB 0.5] (CAP / 2 + gap / 2) sw
|
||||||
|
include : HBarTop [mix 0 SB 0.5] [mix Width RightSB 0.5] (CAP / 2 - gap / 2) sw
|
||||||
|
|
||||||
sketch # Nltail
|
sketch # Nltail
|
||||||
include [refer-glyph 'N'] AS_BASE
|
include [refer-glyph 'N'] AS_BASE
|
||||||
eject-contour 'serifLB'
|
eject-contour 'serifLB'
|
||||||
include : VerticalHook (SB + HalfStroke * HVContrast) 0 (-HookX) Hook
|
include : VerticalHook (SB + HalfStroke * HVContrast) 0 (-HookX) Hook
|
||||||
|
|
||||||
save 'Nltail' 0x19D
|
save 'Nltail' 0x19D
|
||||||
|
|
||||||
|
|
||||||
glyph-block Letter-Latin-Lower-N : begin
|
glyph-block Letter-Latin-Lower-N : begin
|
||||||
glyph-block-import CommonShapes
|
glyph-block-import CommonShapes
|
||||||
glyph-block-import Overmarks
|
glyph-block-import Overmarks
|
||||||
|
@ -4111,21 +4184,20 @@ glyph-block Letter-Latin-Upper-F : begin
|
||||||
include : tagged 'serifBottom' : RightwardBottomSerif (FBarLeft + HalfStroke * HVContrast) 0 MidJutSide
|
include : tagged 'serifBottom' : RightwardBottomSerif (FBarLeft + HalfStroke * HVContrast) 0 MidJutSide
|
||||||
include : DownwardRightSerif RightSB [fallback top CAP] VJut
|
include : DownwardRightSerif RightSB [fallback top CAP] VJut
|
||||||
|
|
||||||
sketch # F
|
create-glyph 'F' 'F' : glyph-construction
|
||||||
set-width Width
|
set-width Width
|
||||||
include MarkSet.capital
|
include MarkSet.capital
|
||||||
include : FShape
|
include : FShape
|
||||||
|
|
||||||
save 'F' 'F'
|
create-glyph 'symbol/currency/frenchFrancSign' 0x20A3 : glyph-construction
|
||||||
|
include : refer-glyph "F"
|
||||||
|
include : HOverlayBar (SB * 0.5) (SB * 3 + Stroke * HVContrast) [mix 0 XH 0.4]
|
||||||
|
|
||||||
sketch # Fltail
|
create-glyph 'Fltail' 0x191 : glyph-construction
|
||||||
include [refer-glyph 'F'] AS_BASE
|
include [refer-glyph 'F'] AS_BASE
|
||||||
eject-contour 'serifBottom'
|
eject-contour 'serifBottom'
|
||||||
include : VerticalHook (SB * 1.5 + HalfStroke * HVContrast) 0 (-HookX) Hook
|
include : VerticalHook (SB * 1.5 + HalfStroke * HVContrast) 0 (-HookX) Hook
|
||||||
|
|
||||||
save 'Fltail' 0x191
|
|
||||||
|
|
||||||
|
|
||||||
glyph-block Letter-Latin-Lower-F : begin
|
glyph-block Letter-Latin-Lower-F : begin
|
||||||
glyph-block-import CommonShapes
|
glyph-block-import CommonShapes
|
||||||
glyph-block-import Overmarks
|
glyph-block-import Overmarks
|
||||||
|
@ -4830,6 +4902,65 @@ glyph-block Letter-Latin-S : begin
|
||||||
curl RightSB Descender
|
curl RightSB Descender
|
||||||
save 'sswash' 0x23F
|
save 'sswash' 0x23F
|
||||||
|
|
||||||
|
sketch # dollar.through
|
||||||
|
include MarkSet.capital
|
||||||
|
define top : CAP * 0.95
|
||||||
|
define bot : CAP * 0.05
|
||||||
|
define w : adviceBlackness 3.5
|
||||||
|
define fine : adviceBlackness 4
|
||||||
|
define smooth : adviceSSmooth (top - bot) (-1) w
|
||||||
|
include : dispiro
|
||||||
|
widths.lhs w
|
||||||
|
g4 RightSB (top - Hook)
|
||||||
|
hookstart (top - O)
|
||||||
|
g4 SB (top - smooth)
|
||||||
|
SNeck w
|
||||||
|
g4 RightSB (bot + smooth) [widths 0 w]
|
||||||
|
hookend (bot + O)
|
||||||
|
g4 SB (bot + Hook)
|
||||||
|
include : dispiro
|
||||||
|
widths.center w
|
||||||
|
flat Middle (top - HalfStroke)
|
||||||
|
curl Middle (CAP - Descender / 2) [heading Upward]
|
||||||
|
include : dispiro
|
||||||
|
widths.center w
|
||||||
|
flat Middle (Descender / 2) [heading Upward]
|
||||||
|
curl Middle (bot + HalfStroke)
|
||||||
|
save 'dollar.open'
|
||||||
|
|
||||||
|
include : VBar Middle (bot + HalfStroke) (top - HalfStroke) fine
|
||||||
|
save 'dollar.through'
|
||||||
|
|
||||||
|
sketch # dollar.throughcap
|
||||||
|
include MarkSet.capital
|
||||||
|
define top : CAP * 0.88
|
||||||
|
define bot : CAP * 0.12
|
||||||
|
define w : adviceBlackness 3.5
|
||||||
|
define fine : adviceBlackness 4
|
||||||
|
define smooth : adviceSSmooth (top - bot) (-1) w
|
||||||
|
include : dispiro
|
||||||
|
widths.lhs w
|
||||||
|
g4 RightSB (top - Hook)
|
||||||
|
hookstart (top - O)
|
||||||
|
g4 SB (top - smooth)
|
||||||
|
SNeck w
|
||||||
|
g4 RightSB (bot + smooth) [widths 0 w]
|
||||||
|
hookend (bot + O)
|
||||||
|
g4 SB (bot + Hook)
|
||||||
|
include : dispiro
|
||||||
|
widths.center w
|
||||||
|
flat Middle (top - HalfStroke)
|
||||||
|
curl Middle (CAP) [heading Upward]
|
||||||
|
include : dispiro
|
||||||
|
widths.center w
|
||||||
|
flat Middle (0) [heading Upward]
|
||||||
|
curl Middle (bot + HalfStroke)
|
||||||
|
save 'dollar.opencap'
|
||||||
|
|
||||||
|
include : VBar Middle (bot + HalfStroke) (top - HalfStroke) fine
|
||||||
|
save 'dollar.throughcap'
|
||||||
|
|
||||||
|
select-variant 'dollar' '$'
|
||||||
|
|
||||||
glyph-block Letter-Latin-Z : begin
|
glyph-block Letter-Latin-Z : begin
|
||||||
glyph-block-import CommonShapes
|
glyph-block-import CommonShapes
|
||||||
|
|
|
@ -23,98 +23,6 @@ glyph-block Symbol-Currency : begin
|
||||||
curl (Middle + radius * [Math.sqrt 2] * [Math.cos angle]) (symbolMid + radius * [Math.sqrt 2] * [Math.sin angle])
|
curl (Middle + radius * [Math.sqrt 2] * [Math.cos angle]) (symbolMid + radius * [Math.sqrt 2] * [Math.sin angle])
|
||||||
save 'currency' 0xA4
|
save 'currency' 0xA4
|
||||||
|
|
||||||
do "Dollar"
|
|
||||||
define [SNeck] : params [[stroke Stroke] [slantCoeff 0]] : begin
|
|
||||||
define strokeCoeff : StrokeWidthBlend 0 1 stroke
|
|
||||||
define tension : 0.46 - 0.0 * strokeCoeff + slantCoeff * TanSlope
|
|
||||||
return : alsoThruThem {{0.4 tension} {0.6 (1 - tension)}} [widths.center stroke]
|
|
||||||
|
|
||||||
sketch # dollar.through
|
|
||||||
include MarkSet.capital
|
|
||||||
define top : CAP * 0.95
|
|
||||||
define bot : CAP * 0.05
|
|
||||||
define w : adviceBlackness 3.5
|
|
||||||
define fine : adviceBlackness 4
|
|
||||||
define smooth : adviceSSmooth (top - bot) (-1) w
|
|
||||||
include : dispiro
|
|
||||||
widths.lhs w
|
|
||||||
g4 RightSB (top - Hook)
|
|
||||||
hookstart (top - O)
|
|
||||||
g4 SB (top - smooth)
|
|
||||||
SNeck w
|
|
||||||
g4 RightSB (bot + smooth) [widths 0 w]
|
|
||||||
hookend (bot + O)
|
|
||||||
g4 SB (bot + Hook)
|
|
||||||
include : dispiro
|
|
||||||
widths.center w
|
|
||||||
flat Middle (top - HalfStroke)
|
|
||||||
curl Middle (CAP - Descender / 2) [heading Upward]
|
|
||||||
include : dispiro
|
|
||||||
widths.center w
|
|
||||||
flat Middle (Descender / 2) [heading Upward]
|
|
||||||
curl Middle (bot + HalfStroke)
|
|
||||||
save 'dollar.open'
|
|
||||||
|
|
||||||
include : VBar Middle (bot + HalfStroke) (top - HalfStroke) fine
|
|
||||||
save 'dollar.through'
|
|
||||||
|
|
||||||
sketch # dollar.throughcap
|
|
||||||
include MarkSet.capital
|
|
||||||
define top : CAP * 0.88
|
|
||||||
define bot : CAP * 0.12
|
|
||||||
define w : adviceBlackness 3.5
|
|
||||||
define fine : adviceBlackness 4
|
|
||||||
define smooth : adviceSSmooth (top - bot) (-1) w
|
|
||||||
include : dispiro
|
|
||||||
widths.lhs w
|
|
||||||
g4 RightSB (top - Hook)
|
|
||||||
hookstart (top - O)
|
|
||||||
g4 SB (top - smooth)
|
|
||||||
SNeck w
|
|
||||||
g4 RightSB (bot + smooth) [widths 0 w]
|
|
||||||
hookend (bot + O)
|
|
||||||
g4 SB (bot + Hook)
|
|
||||||
include : dispiro
|
|
||||||
widths.center w
|
|
||||||
flat Middle (top - HalfStroke)
|
|
||||||
curl Middle (CAP) [heading Upward]
|
|
||||||
include : dispiro
|
|
||||||
widths.center w
|
|
||||||
flat Middle (0) [heading Upward]
|
|
||||||
curl Middle (bot + HalfStroke)
|
|
||||||
save 'dollar.opencap'
|
|
||||||
|
|
||||||
include : VBar Middle (bot + HalfStroke) (top - HalfStroke) fine
|
|
||||||
save 'dollar.throughcap'
|
|
||||||
|
|
||||||
select-variant 'dollar' '$'
|
|
||||||
|
|
||||||
sketch # cent
|
|
||||||
define fine : adviceBlackness 4
|
|
||||||
include [refer-glyph 'c'] AS_BASE
|
|
||||||
include : dispiro
|
|
||||||
widths.center
|
|
||||||
flat Middle (XH - HalfStroke)
|
|
||||||
curl Middle (XH - Descender / 2) [heading Upward]
|
|
||||||
include : dispiro
|
|
||||||
widths.center
|
|
||||||
flat Middle (Descender / 2) [heading Upward]
|
|
||||||
curl Middle HalfStroke
|
|
||||||
include : VBar Middle (XH - HalfStroke) (0 + HalfStroke) fine
|
|
||||||
save 'cent' 0xA2
|
|
||||||
|
|
||||||
sketch # euro
|
|
||||||
include : refer-glyph "C"
|
|
||||||
include : HOverlayBar [mix SB 0 0.7] [mix SB RightSB 0.7] (CAP * 0.4)
|
|
||||||
include : HOverlayBar [mix SB 0 0.7] [mix SB RightSB 0.7] (CAP * 0.6)
|
|
||||||
save 'euro' 0x20AC
|
|
||||||
|
|
||||||
sketch # yen
|
|
||||||
include [refer-glyph 'Y'] AS_BASE
|
|
||||||
include : HOverlayBar SB RightSB (CAP * 0.45)
|
|
||||||
include : HOverlayBar SB RightSB (CAP * 0.25)
|
|
||||||
save 'yen' 0xA5
|
|
||||||
|
|
||||||
define [SterlineBaseShape] : glyph-construction
|
define [SterlineBaseShape] : glyph-construction
|
||||||
local barLeft : mix SB RightSB 0.2
|
local barLeft : mix SB RightSB 0.2
|
||||||
local hookEndX : Math.max (barLeft + Stroke * 2.5) [mix SB RightSB 0.95]
|
local hookEndX : Math.max (barLeft + Stroke * 2.5) [mix SB RightSB 0.95]
|
||||||
|
@ -128,38 +36,16 @@ glyph-block Symbol-Currency : begin
|
||||||
g4 SB Stroke
|
g4 SB Stroke
|
||||||
HBarBottom SB RightSB 0
|
HBarBottom SB RightSB 0
|
||||||
|
|
||||||
sketch # sterling
|
create-glyph 'symbol/currency/sterlingSign' 0xA3 : glyph-construction
|
||||||
set-width Width
|
set-width Width
|
||||||
include : SterlineBaseShape
|
include : SterlineBaseShape
|
||||||
include : HOverlayBar [mix SB RightSB 0.05] [mix SB RightSB 0.7] (CAP * 0.53)
|
include : HOverlayBar [mix SB RightSB 0.05] [mix SB RightSB 0.7] (CAP * 0.53)
|
||||||
save 'sterling' 0xA3
|
|
||||||
|
|
||||||
sketch # liraSymbol
|
create-glyph 'symbol/currency/liraSymbolSign' 0x20A4 : glyph-construction
|
||||||
set-width Width
|
set-width Width
|
||||||
include : SterlineBaseShape
|
include : SterlineBaseShape
|
||||||
include : HOverlayBar [mix SB RightSB 0.05] [mix SB RightSB 0.7] (CAP * 0.4)
|
include : HOverlayBar [mix SB RightSB 0.05] [mix SB RightSB 0.7] (CAP * 0.4)
|
||||||
include : HOverlayBar [mix SB RightSB 0.05] [mix SB RightSB 0.7] (CAP * 0.63)
|
include : HOverlayBar [mix SB RightSB 0.05] [mix SB RightSB 0.7] (CAP * 0.63)
|
||||||
save 'liraSymbol' 0x20A4
|
|
||||||
|
|
||||||
sketch # won
|
|
||||||
local df : DivFrame para.diversityM
|
|
||||||
set-width df.width
|
|
||||||
include [refer-glyph 'W'] AS_BASE ALSO_METRICS
|
|
||||||
include : HOverlayBar [mix SB 0 0.7] [mix df.rightSB df.width 0.7] (CAP * 0.6)
|
|
||||||
include : HOverlayBar [mix SB 0 0.7] [mix df.rightSB df.width 0.7] (CAP * 0.35)
|
|
||||||
save 'won' 0x20A9
|
|
||||||
|
|
||||||
sketch # frenchFranc
|
|
||||||
include : refer-glyph "F"
|
|
||||||
include : HOverlayBar (SB * 0.5) (SB * 3 + Stroke * HVContrast) [mix 0 XH 0.4]
|
|
||||||
save 'frenchFranc' 0x20A3
|
|
||||||
|
|
||||||
sketch # ruble
|
|
||||||
include [refer-glyph 'P'] AS_BASE
|
|
||||||
define bar1pos : (CAP - Stroke) * HBarPos
|
|
||||||
include : HOverlayBar [mix SB 0 0.7] (SB + HalfStroke * HVContrast) bar1pos
|
|
||||||
include : HOverlayBar [mix SB 0 0.7] [mix SB RightSB 0.8] [mix 0 (bar1pos - Stroke) (3 / 4)]
|
|
||||||
save 'ruble' 0x20BD
|
|
||||||
|
|
||||||
glyph-block Symbol-Letter : begin
|
glyph-block Symbol-Letter : begin
|
||||||
|
|
||||||
|
@ -338,7 +224,7 @@ glyph-block Symbol-BlackboardBold : begin
|
||||||
|
|
||||||
glyph-block-import Letter-Latin-Upper-R : RLegShape RLegTerminalX
|
glyph-block-import Letter-Latin-Upper-R : RLegShape RLegTerminalX
|
||||||
sketch # bbR
|
sketch # bbR
|
||||||
define [SingleLeg] : RLegShape (RightSB - O) 0 ((CAP - bbs) * HBarPos) CAP false true bbs (bbd / 2)
|
define [SingleLeg] : RLegShape ((CAP - bbs) * HBarPos) 0 Middle (RightSB - O) CAP false true bbs (bbd / 2)
|
||||||
define terminalX : RLegTerminalX true (RightSB - O) bbs
|
define terminalX : RLegTerminalX true (RightSB - O) bbs
|
||||||
include : BBPShape (mul -- 1) (overshoot -- O)
|
include : BBPShape (mul -- 1) (overshoot -- O)
|
||||||
include : difference
|
include : difference
|
||||||
|
|
|
@ -80,9 +80,7 @@ define-macro depends-on : syntax-rules
|
||||||
define-macro eject-contour : syntax-rules
|
define-macro eject-contour : syntax-rules
|
||||||
`[eject-contour @::args] {'.syntactic-closure' `[currentGlyph.eject-contour @::args] env}
|
`[eject-contour @::args] {'.syntactic-closure' `[currentGlyph.eject-contour @::args] env}
|
||||||
define-macro assign-unicode : syntax-rules
|
define-macro assign-unicode : syntax-rules
|
||||||
`[assign-unicode @code] {".syntactic-closure" `[begin \\
|
`[assign-unicode @code] {".syntactic-closure" `[$assignUnicodeImpl$ currentGlyph @code
|
||||||
currentGlyph.assign-unicode @code
|
|
||||||
set $Capture$.unicodeGlyphs.(currentGlyph.unicode.((currentGlyph.unicode.length - 1))) currentGlyph
|
|
||||||
] env}
|
] env}
|
||||||
|
|
||||||
###### Canvas-based mechanism
|
###### Canvas-based mechanism
|
||||||
|
@ -202,14 +200,14 @@ define-macro glyph-block : syntax-rules
|
||||||
([typeof form] === "string") : set variableSet.(form) true
|
([typeof form] === "string") : set variableSet.(form) true
|
||||||
|
|
||||||
traceBody body
|
traceBody body
|
||||||
traceBody `[$save$ $NamedParameterPair$ $donothing$ create-glyph]
|
traceBody `[$save$ $NamedParameterPair$ $donothing$ create-glyph $assignUnicodeImpl$]
|
||||||
|
|
||||||
set externEnv.$glyphBlockVariableUsage$ variableSet
|
set externEnv.$glyphBlockVariableUsage$ variableSet
|
||||||
|
|
||||||
define captureImports `[metrics $NamedParameterPair$ $donothing$ para recursive
|
define captureImports `[metrics $NamedParameterPair$ $donothing$ para recursive
|
||||||
recursiveCodes variantSelector glyphMap glyphList unicodeGlyphs create-glyph $save$
|
recursiveCodes variantSelector glyphMap glyphList unicodeGlyphs create-glyph $save$
|
||||||
spirofns booleFns MarkSet AS_BASE ALSO_METRICS pickHash dependencyProfile
|
spirofns booleFns MarkSet AS_BASE ALSO_METRICS pickHash dependencyProfile
|
||||||
getDependencyProfile buildGlyphs newtemp tagged DivFrame fontMetrics]
|
getDependencyProfile buildGlyphs newtemp tagged DivFrame fontMetrics $assignUnicodeImpl$]
|
||||||
define metricImports `[UPM HalfUPM Width SB CAP XH Descender Contrast symbolMid parenTop
|
define metricImports `[UPM HalfUPM Width SB CAP XH Descender Contrast symbolMid parenTop
|
||||||
parenBot operTop operBot tackTop tackBot plusTop plusBot pictTop pictBot bgopTop bgopBot
|
parenBot operTop operBot tackTop tackBot plusTop plusBot pictTop pictBot bgopTop bgopBot
|
||||||
Italify Upright Scale Translate Rotate globalTransform TanSlope
|
Italify Upright Scale Translate Rotate globalTransform TanSlope
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue