Add Fira Code V6's progress bar symbols.
This commit is contained in:
parent
2446530629
commit
52a865571c
5 changed files with 74 additions and 4 deletions
|
@ -1,2 +1,3 @@
|
||||||
* Slightly reduce X-height by 0.01em foe better geometric balancing.
|
* Slightly reduce X-height by 0.01em foe better geometric balancing.
|
||||||
* Make low-crossbar variants of `f` more distinctive with `crossbar-at-x-height` (#1254).
|
* Make low-crossbar variants of `f` more distinctive with `crossbar-at-x-height` (#1254).
|
||||||
|
* Add Fira Code V6's progress bar symbols.
|
||||||
|
|
|
@ -522,7 +522,7 @@ glyph-block Letter-Latin-K : begin
|
||||||
alias 'latinkappa' 0x138 'smcpK'
|
alias 'latinkappa' 0x138 'smcpK'
|
||||||
select-variant 'cyrl/ka' 0x43A (shapeFrom -- 'smcpK')
|
select-variant 'cyrl/ka' 0x43A (shapeFrom -- 'smcpK')
|
||||||
select-variant 'cyrl/kaDescender' 0x49B (follow -- 'cyrl/ka')
|
select-variant 'cyrl/kaDescender' 0x49B (follow -- 'cyrl/ka')
|
||||||
select-variant 'cyrl/ka.BGR' 0xE012 (shapeFrom -- 'k') (follow -- 'cyrl/ka')
|
select-variant 'cyrl/ka.BGR' (shapeFrom -- 'k') (follow -- 'cyrl/ka')
|
||||||
select-variant 'cyrl/kaVBar' 0x49D (shapeFrom -- 'smcpKVBar') (follow -- 'cyrl/kaVBar')
|
select-variant 'cyrl/kaVBar' 0x49D (shapeFrom -- 'smcpKVBar') (follow -- 'cyrl/kaVBar')
|
||||||
select-variant 'cyrl/kaHook' 0x4C4 (shapeFrom -- 'smcpK') (follow -- 'cyrl/kaHook')
|
select-variant 'cyrl/kaHook' 0x4C4 (shapeFrom -- 'smcpK') (follow -- 'cyrl/kaHook')
|
||||||
|
|
||||||
|
|
|
@ -82,6 +82,30 @@ glyph-block Symbol-Geometric-Masked : for-width-kinds WideWidth1
|
||||||
if RT : include : UpperRightQuarterMark
|
if RT : include : UpperRightQuarterMark
|
||||||
if RB : include : LowerRightQuarterMark
|
if RB : include : LowerRightQuarterMark
|
||||||
|
|
||||||
|
define [progressCircleMaskPoint pAngle] : corner
|
||||||
|
Geom.MidX + [Math.cos ((0.5 - pAngle * 2) * Math.PI)] * Geom.Width * 4
|
||||||
|
Geom.MidY + [Math.sin ((0.5 - pAngle * 2) * Math.PI)] * Geom.Width * 4
|
||||||
|
define progressCircleSections : list
|
||||||
|
list 0xEE06 (-1 / 12) (1 / 12)
|
||||||
|
list 0xEE07 0 (1 / 3)
|
||||||
|
list 0xEE08 (1 / 6) (1 / 2 + 1 / 24)
|
||||||
|
list 0xEE09 (1 / 4) (3 / 4)
|
||||||
|
list 0xEE0A (1 / 2 - 1 / 24) (5 / 6)
|
||||||
|
list 0xEE0B (2 / 3) 1
|
||||||
|
foreach [{u pAngleStart pAngleEnd} : items-of progressCircleSections] : begin
|
||||||
|
create-glyph [MangleName ('uni' + u)] [MangleUnicode u] : glyph-proc
|
||||||
|
set-width Geom.Width
|
||||||
|
include : intersection
|
||||||
|
refer-glyph : MangleName 'whiteCircle'
|
||||||
|
spiro-outline
|
||||||
|
corner Geom.MidX Geom.MidY
|
||||||
|
progressCircleMaskPoint [mix pAngleStart pAngleEnd (0 / 4)]
|
||||||
|
progressCircleMaskPoint [mix pAngleStart pAngleEnd (1 / 4)]
|
||||||
|
progressCircleMaskPoint [mix pAngleStart pAngleEnd (2 / 4)]
|
||||||
|
progressCircleMaskPoint [mix pAngleStart pAngleEnd (3 / 4)]
|
||||||
|
progressCircleMaskPoint [mix pAngleStart pAngleEnd (4 / 4)]
|
||||||
|
|
||||||
|
|
||||||
do "Partial square"
|
do "Partial square"
|
||||||
define squareParts : list
|
define squareParts : list
|
||||||
list 0x25E7 1 1 0 0 0 0 0 0
|
list 0x25E7 1 1 0 0 0 0 0 0
|
||||||
|
|
|
@ -11,7 +11,7 @@ glyph-block Symbol-Pictograph-Powerline-And-GUI : begin
|
||||||
define uiFigTop : mix ParenBot ParenTop 0.95
|
define uiFigTop : mix ParenBot ParenTop 0.95
|
||||||
define uiFigBot : mix ParenBot ParenTop 0.05
|
define uiFigBot : mix ParenBot ParenTop 0.05
|
||||||
|
|
||||||
create-glyph 'branch' 0xE0A0 : glyph-proc
|
create-glyph 'powerline/branch' 0xE0A0 : glyph-proc
|
||||||
local fine : AdviceStroke 3.5
|
local fine : AdviceStroke 3.5
|
||||||
local y1 : mix uiFigBot uiFigTop 0.8
|
local y1 : mix uiFigBot uiFigTop 0.8
|
||||||
local y2 : mix uiFigBot uiFigTop 0.2
|
local y2 : mix uiFigBot uiFigTop 0.2
|
||||||
|
@ -23,7 +23,7 @@ glyph-block Symbol-Pictograph-Powerline-And-GUI : begin
|
||||||
g4 (SB + fine * HVContrast) y2 [heading Leftward]
|
g4 (SB + fine * HVContrast) y2 [heading Leftward]
|
||||||
include : DotAt (RightSB - fine * HVContrast / 2) y1 [Math.max (fine * 1.5) PeriodRadius]
|
include : DotAt (RightSB - fine * HVContrast / 2) y1 [Math.max (fine * 1.5) PeriodRadius]
|
||||||
|
|
||||||
create-glyph 'pwlLock' 0xE0A2 : glyph-proc
|
create-glyph 'powerline/lock' 0xE0A2 : glyph-proc
|
||||||
local fine : AdviceStroke 3.5
|
local fine : AdviceStroke 3.5
|
||||||
local lockTop : mix uiFigBot uiFigTop 0.6
|
local lockTop : mix uiFigBot uiFigTop 0.6
|
||||||
local lockLeft : SB / 2
|
local lockLeft : SB / 2
|
||||||
|
@ -51,6 +51,49 @@ glyph-block Symbol-Pictograph-Powerline-And-GUI : begin
|
||||||
close
|
close
|
||||||
OShapeOutline lockHoleTop lockHoleBottom lockHoleLeft lockHoleRight fine (SmallSmoothA * lockHoleWidth) (SmallSmoothB * lockHoleWidth)
|
OShapeOutline lockHoleTop lockHoleBottom lockHoleLeft lockHoleRight fine (SmallSmoothA * lockHoleWidth) (SmallSmoothB * lockHoleWidth)
|
||||||
|
|
||||||
|
do "Progress Bar"
|
||||||
|
define frameLeft : mix SB RightSB DesignParameters.bracketOutside
|
||||||
|
define frameRight : mix RightSB SB DesignParameters.bracketOutside
|
||||||
|
define progressBarGap : Math.min ((TackTop - TackBot) / 6) (Width / 6) [AdviceStroke 5]
|
||||||
|
|
||||||
|
create-glyph 'powerline/progressBarStartEmpty' 0xEE00 : glyph-proc
|
||||||
|
include : VBarLeft frameLeft TackTop TackBot GeometryStroke
|
||||||
|
include : HBarTop frameLeft (Width - O) TackTop GeometryStroke
|
||||||
|
include : HBarBottom frameLeft (Width - O) TackBot GeometryStroke
|
||||||
|
|
||||||
|
create-glyph 'powerline/progressBarMiddleEmpty' 0xEE01 : glyph-proc
|
||||||
|
include : HBarTop O (Width - O) TackTop GeometryStroke
|
||||||
|
include : HBarBottom O (Width - O) TackBot GeometryStroke
|
||||||
|
|
||||||
|
create-glyph 'powerline/progressBarEndEmpty' 0xEE02 : glyph-proc
|
||||||
|
include : VBarRight frameRight TackTop TackBot GeometryStroke
|
||||||
|
include : HBarTop O frameRight TackTop GeometryStroke
|
||||||
|
include : HBarBottom O frameRight TackBot GeometryStroke
|
||||||
|
|
||||||
|
create-glyph 'powerline/progressBarStartFilled' 0xEE03 : glyph-proc
|
||||||
|
include : refer-glyph 'powerline/progressBarStartEmpty' AS_BASE ALSO_METRICS
|
||||||
|
include : Rect
|
||||||
|
TackTop - GeometryStroke - progressBarGap
|
||||||
|
TackBot + GeometryStroke + progressBarGap
|
||||||
|
frameLeft + GeometryStroke * HVContrast + progressBarGap * HVContrast
|
||||||
|
Width - O
|
||||||
|
|
||||||
|
create-glyph 'powerline/progressBarMiddleFilled' 0xEE04 : glyph-proc
|
||||||
|
include : refer-glyph 'powerline/progressBarMiddleEmpty' AS_BASE ALSO_METRICS
|
||||||
|
include : Rect
|
||||||
|
TackTop - GeometryStroke - progressBarGap
|
||||||
|
TackBot + GeometryStroke + progressBarGap
|
||||||
|
0 + O
|
||||||
|
Width - O
|
||||||
|
|
||||||
|
create-glyph 'powerline/progressBarEndFilled' 0xEE05 : glyph-proc
|
||||||
|
include : refer-glyph 'powerline/progressBarEndEmpty' AS_BASE ALSO_METRICS
|
||||||
|
include : Rect
|
||||||
|
TackTop - GeometryStroke - progressBarGap
|
||||||
|
TackBot + GeometryStroke + progressBarGap
|
||||||
|
0 + O
|
||||||
|
frameRight - GeometryStroke * HVContrast - progressBarGap * HVContrast
|
||||||
|
|
||||||
for-width-kinds WideWidth4
|
for-width-kinds WideWidth4
|
||||||
do "arrowheadShapedPointer"
|
do "arrowheadShapedPointer"
|
||||||
define scaffold : object
|
define scaffold : object
|
||||||
|
|
|
@ -150,7 +150,9 @@ exports.blockData = [
|
||||||
[[0xd800, 0xdb7f], "High Surrogates"],
|
[[0xd800, 0xdb7f], "High Surrogates"],
|
||||||
[[0xdb80, 0xdbff], "High Private Use Surrogates"],
|
[[0xdb80, 0xdbff], "High Private Use Surrogates"],
|
||||||
[[0xdc00, 0xdfff], "Low Surrogates"],
|
[[0xdc00, 0xdfff], "Low Surrogates"],
|
||||||
[[0xe000, 0xf8ff], "Private Use Area"],
|
[[0xe000, 0xe03f], "Private Use Area - Misc"],
|
||||||
|
[[0xe0a0, 0xe0df], "Private Use Area - Powerline"],
|
||||||
|
[[0xee00, 0xee3f], "Private Use Area - Progress Bar"],
|
||||||
[[0xf900, 0xfaff], "CJK Compatibility Ideographs"],
|
[[0xf900, 0xfaff], "CJK Compatibility Ideographs"],
|
||||||
[[0xfb00, 0xfb4f], "Alphabetic Presentation Forms"],
|
[[0xfb00, 0xfb4f], "Alphabetic Presentation Forms"],
|
||||||
[[0xfb50, 0xfdff], "Arabic Presentation Forms-A"],
|
[[0xfb50, 0xfdff], "Arabic Presentation Forms-A"],
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue