Move version to RC -- worth doing it

This commit is contained in:
Belleve Invis 2020-03-04 18:44:06 -08:00
parent 5d004ca551
commit 7cf45a0cd6
19 changed files with 218 additions and 445 deletions

View file

@ -3,84 +3,52 @@
[buildPlans.iosevka]
family = "Iosevka"
[buildPlans.iosevka-fixed]
family = "Iosevka Fixed"
design = ["sp-fixed"]
[buildPlans.iosevka-term]
family = "Iosevka Term"
design = ["term"]
[buildPlans.iosevka-type]
family = "Iosevka Type"
design = ["type"]
[buildPlans.iosevka-term-lig]
family = "Iosevka TermLig"
design = ["termlig"]
[buildPlans.iosevka-cc]
family = "IosevkaCC"
design = ["cc"]
design = ["sp-term"]
# Slab
[buildPlans.iosevka-slab]
family = "Iosevka Slab"
design = ["slab"]
[buildPlans.iosevka-fixed-slab]
family = "Iosevka Fixed Slab"
design = ["sp-fixed", "slab"]
[buildPlans.iosevka-term-slab]
family = "Iosevka Term Slab"
design = ["term", "slab"]
[buildPlans.iosevka-type-slab]
family = "Iosevka Type Slab"
design = ["type", "slab"]
[buildPlans.iosevka-term-lig-slab]
family = "Iosevka TermLig Slab"
design = ["termlig", "slab"]
[buildPlans.iosevka-cc-slab]
family = "IosevkaCC Slab"
design = ["cc", "slab"]
design = ["sp-term", "slab"]
# Curly
[buildPlans.iosevka-curly]
family = "Iosevka Curly"
design = ["ss20", "v-at-fourfold"]
[buildPlans.iosevka-fixed-curly]
family = "Iosevka Fixed Curly"
design = ["sp-fixed", "ss20", "v-at-fourfold"]
[buildPlans.iosevka-term-curly]
family = "Iosevka Term Curly"
design = ["term", "ss20", "v-at-fourfold"]
[buildPlans.iosevka-type-curly]
family = "Iosevka Type Curly"
design = ["type", "ss20", "v-at-fourfold"]
[buildPlans.iosevka-term-lig-curly]
family = "Iosevka TermLig Curly"
design = ["termlig", "ss20", "v-at-fourfold"]
[buildPlans.iosevka-cc-curly]
family = "IosevkaCC Curly"
design = ["cc", "ss20", "v-at-fourfold"]
design = ["sp-term", "ss20", "v-at-fourfold"]
# Curly Slab
[buildPlans.iosevka-curly-slab]
family = "Iosevka Curly Slab"
design = ["slab", "ss20", "v-at-fourfold"]
[buildPlans.iosevka-fixed-curly-slab]
family = "Iosevka Fixed Curly Slab"
design = ["sp-fixed", "slab", "ss20", "v-at-fourfold"]
[buildPlans.iosevka-term-curly-slab]
family = "Iosevka Term Curly Slab"
design = ["term", "slab", "ss20", "v-at-fourfold"]
[buildPlans.iosevka-type-curly-slab]
family = "Iosevka Type Curly Slab"
design = ["type", "slab", "ss20", "v-at-fourfold"]
[buildPlans.iosevka-term-lig-curly-slab]
family = "Iosevka TermLig Curly Slab"
design = ["termlig", "slab", "ss20", "v-at-fourfold"]
[buildPlans.iosevka-cc-curly-slab]
family = "IosevkaCC Curly Slab"
design = ["cc", "slab", "ss20", "v-at-fourfold"]
design = ["sp-term", "slab", "ss20", "v-at-fourfold"]
###################################################################################################
# SSxx
@ -88,119 +56,91 @@ design = ["cc", "slab", "ss20", "v-at-fourfold"]
family = "Iosevka SS01"
design = ["ss01"]
[buildPlans.iosevka-fixed-ss01]
family = "Iosevka Fixed SS01"
design = ["sp-fixed", "ss01"]
[buildPlans.iosevka-term-ss01]
family = "Iosevka Term SS01"
design = ["term", "ss01"]
[buildPlans.iosevka-type-ss01]
family = "Iosevka Type SS01"
design = ["type", "ss01"]
[buildPlans.iosevka-term-lig-ss01]
family = "Iosevka TermLig SS01"
design = ["termlig", "ss01"]
design = ["sp-term", "ss01"]
[buildPlans.iosevka-ss02]
family = "Iosevka SS02"
design = ["ss02"]
[buildPlans.iosevka-fixed-ss02]
family = "Iosevka Fixed SS02"
design = ["sp-fixed", "ss02"]
[buildPlans.iosevka-term-ss02]
family = "Iosevka Term SS02"
design = ["term", "ss02"]
[buildPlans.iosevka-type-ss02]
family = "Iosevka Type SS02"
design = ["type", "ss02"]
[buildPlans.iosevka-term-lig-ss02]
family = "Iosevka TermLig SS02"
design = ["termlig", "ss02"]
design = ["sp-term", "ss02"]
[buildPlans.iosevka-ss03]
family = "Iosevka SS03"
design = ["ss03"]
[buildPlans.iosevka-fixed-ss03]
family = "Iosevka Fixed SS03"
design = ["sp-fixed", "ss03"]
[buildPlans.iosevka-term-ss03]
family = "Iosevka Term SS03"
design = ["term", "ss03"]
[buildPlans.iosevka-type-ss03]
family = "Iosevka Type SS03"
design = ["type", "ss03"]
[buildPlans.iosevka-term-lig-ss03]
family = "Iosevka TermLig SS03"
design = ["termlig", "ss03"]
design = ["sp-term", "ss03"]
[buildPlans.iosevka-ss04]
family = "Iosevka SS04"
design = ["ss04"]
[buildPlans.iosevka-fixed-ss04]
family = "Iosevka Fixed SS04"
design = ["sp-fixed", "ss04"]
[buildPlans.iosevka-term-ss04]
family = "Iosevka Term SS04"
design = ["term", "ss04"]
[buildPlans.iosevka-type-ss04]
family = "Iosevka Type SS04"
design = ["type", "ss04"]
[buildPlans.iosevka-term-lig-ss04]
family = "Iosevka TermLig SS04"
design = ["termlig", "ss04"]
design = ["sp-term", "ss04"]
[buildPlans.iosevka-ss05]
family = "Iosevka SS05"
design = ["ss05"]
[buildPlans.iosevka-fixed-ss05]
family = "Iosevka Fixed SS05"
design = ["sp-fixed", "ss05"]
[buildPlans.iosevka-term-ss05]
family = "Iosevka Term SS05"
design = ["term", "ss05"]
[buildPlans.iosevka-type-ss05]
family = "Iosevka Type SS05"
design = ["type", "ss05"]
[buildPlans.iosevka-term-lig-ss05]
family = "Iosevka TermLig SS05"
design = ["termlig", "ss05"]
design = ["sp-term", "ss05"]
[buildPlans.iosevka-ss06]
family = "Iosevka SS06"
design = ["ss06"]
[buildPlans.iosevka-fixed-ss06]
family = "Iosevka Fixed SS06"
design = ["sp-fixed", "ss06"]
[buildPlans.iosevka-term-ss06]
family = "Iosevka Term SS06"
design = ["term", "ss06"]
[buildPlans.iosevka-type-ss06]
family = "Iosevka Type SS06"
design = ["type", "ss06"]
[buildPlans.iosevka-term-lig-ss06]
family = "Iosevka TermLig SS06"
design = ["termlig", "ss06"]
design = ["sp-term", "ss06"]
[buildPlans.iosevka-ss07]
family = "Iosevka SS07"
design = ["ss07"]
[buildPlans.iosevka-fixed-ss07]
family = "Iosevka Fixed SS07"
design = ["sp-fixed", "ss07"]
[buildPlans.iosevka-term-ss07]
family = "Iosevka Term SS07"
design = ["term", "ss07"]
[buildPlans.iosevka-type-ss07]
family = "Iosevka Type SS07"
design = ["type", "ss07"]
[buildPlans.iosevka-term-lig-ss07]
family = "Iosevka TermLig SS07"
design = ["termlig", "ss07"]
design = ["sp-term", "ss07"]
# The SS08 has curly bars, so apply ss20 first
@ -208,102 +148,78 @@ design = ["termlig", "ss07"]
family = "Iosevka SS08"
design = ["ss20", "ss08"]
[buildPlans.iosevka-fixed-ss08]
family = "Iosevka Fixed SS08"
design = ["sp-fixed", "ss20", "ss08"]
[buildPlans.iosevka-term-ss08]
family = "Iosevka Term SS08"
design = ["term", "ss20", "ss08"]
[buildPlans.iosevka-type-ss08]
family = "Iosevka Type SS08"
design = ["type", "ss20", "ss08"]
[buildPlans.iosevka-term-lig-ss08]
family = "Iosevka TermLig SS08"
design = ["termlig", "ss20", "ss08"]
design = ["sp-term", "ss20", "ss08"]
[buildPlans.iosevka-ss09]
family = "Iosevka SS09"
design = ["ss09"]
[buildPlans.iosevka-fixed-ss09]
family = "Iosevka Fixed SS09"
design = ["sp-fixed", "ss09"]
[buildPlans.iosevka-term-ss09]
family = "Iosevka Term SS09"
design = ["term", "ss09"]
[buildPlans.iosevka-type-ss09]
family = "Iosevka Type SS09"
design = ["type", "ss09"]
[buildPlans.iosevka-term-lig-ss09]
family = "Iosevka TermLig SS09"
design = ["termlig", "ss09"]
design = ["sp-term", "ss09"]
[buildPlans.iosevka-ss10]
family = "Iosevka SS10"
design = ["ss10"]
[buildPlans.iosevka-fixed-ss10]
family = "Iosevka Fixed SS10"
design = ["sp-fixed", "ss10"]
[buildPlans.iosevka-term-ss10]
family = "Iosevka Term SS10"
design = ["term", "ss10"]
[buildPlans.iosevka-type-ss10]
family = "Iosevka Type SS10"
design = ["type", "ss10"]
[buildPlans.iosevka-term-lig-ss10]
family = "Iosevka TermLig SS10"
design = ["termlig", "ss10"]
design = ["sp-term", "ss10"]
[buildPlans.iosevka-ss11]
family = "Iosevka SS11"
design = ["ss11"]
[buildPlans.iosevka-fixed-ss11]
family = "Iosevka Fixed SS11"
design = ["sp-fixed", "ss11"]
[buildPlans.iosevka-term-ss11]
family = "Iosevka Term SS11"
design = ["term", "ss11"]
[buildPlans.iosevka-type-ss11]
family = "Iosevka Type SS11"
design = ["type", "ss11"]
[buildPlans.iosevka-term-lig-ss11]
family = "Iosevka TermLig SS11"
design = ["termlig", "ss11"]
design = ["sp-term", "ss11"]
[buildPlans.iosevka-ss12]
family = "Iosevka SS12"
design = ["ss12"]
[buildPlans.iosevka-fixed-ss12]
family = "Iosevka Fixed SS12"
design = ["sp-fixed", "ss12"]
[buildPlans.iosevka-term-ss12]
family = "Iosevka Term SS12"
design = ["term", "ss12"]
[buildPlans.iosevka-type-ss12]
family = "Iosevka Type SS12"
design = ["type", "ss12"]
[buildPlans.iosevka-term-lig-ss12]
family = "Iosevka TermLig SS12"
design = ["termlig", "ss12"]
design = ["sp-term", "ss12"]
[buildPlans.iosevka-ss13]
family = "Iosevka SS13"
design = ["ss13"]
[buildPlans.iosevka-fixed-ss13]
family = "Iosevka Fixed SS13"
design = ["sp-fixed", "ss13"]
[buildPlans.iosevka-term-ss13]
family = "Iosevka Term SS13"
design = ["term", "ss13"]
[buildPlans.iosevka-type-ss13]
family = "Iosevka Type SS13"
design = ["type", "ss13"]
[buildPlans.iosevka-term-lig-ss13]
family = "Iosevka TermLig SS13"
design = ["termlig", "ss13"]
design = ["sp-term", "ss13"]
###################################################################################################
# Proportional families
@ -366,93 +282,70 @@ css = "normal"
# Standard set
01-iosevka = "iosevka"
02-iosevka-term = "iosevka-term"
03-iosevka-type = "iosevka-type"
04-iosevka-term-lig = "iosevka-term-lig"
05-iosevka-slab = "iosevka-slab"
02-iosevka-fixed = "iosevka-fixed"
03-iosevka-term = "iosevka-term"
04-iosevka-slab = "iosevka-slab"
05-iosevka-fixed-slab = "iosevka-fixed-slab"
06-iosevka-term-slab = "iosevka-term-slab"
07-iosevka-type-slab = "iosevka-type-slab"
08-iosevka-term-lig-slab = "iosevka-term-lig-slab"
09-iosevka-curly = "iosevka-curly"
10-iosevka-term-curly = "iosevka-term-curly"
11-iosevka-type-curly = "iosevka-type-curly"
12-iosevka-term-lig-curly = "iosevka-term-lig-curly"
13-iosevka-curly-slab = "iosevka-curly-slab"
14-iosevka-term-curly-slab = "iosevka-term-curly-slab"
15-iosevka-type-curly-slab = "iosevka-type-curly-slab"
16-iosevka-term-lig-curly-slab = "iosevka-term-lig-curly-slab"
# "CC" variants (deprecated -- will be removed in next release)
iosevka-cc-DEPRECATED = "iosevka-cc"
iosevka-cc-slab-DEPRECATED = "iosevka-cc-slab"
iosevka-cc-curly-DEPRECATED = "iosevka-cc-curly"
iosevka-cc-curly-slab-DEPRECATED = "iosevka-cc-curly-slab"
07-iosevka-curly = "iosevka-curly"
08-iosevka-fixed-curly = "iosevka-fixed-curly"
09-iosevka-term-curly = "iosevka-term-curly"
10-iosevka-curly-slab = "iosevka-curly-slab"
11-iosevka-fixed-curly-slab = "iosevka-fixed-curly-slab"
12-iosevka-term-curly-slab = "iosevka-term-curly-slab"
# Style set variants
iosevka-ss01 = "iosevka-ss01"
iosevka-fixed-ss01 = "iosevka-fixed-ss01"
iosevka-term-ss01 = "iosevka-term-ss01"
iosevka-type-ss01 = "iosevka-type-ss01"
iosevka-term-lig-ss01 = "iosevka-term-lig-ss01"
iosevka-ss02 = "iosevka-ss02"
iosevka-fixed-ss02 = "iosevka-fixed-ss02"
iosevka-term-ss02 = "iosevka-term-ss02"
iosevka-type-ss02 = "iosevka-type-ss02"
iosevka-term-lig-ss02 = "iosevka-term-lig-ss02"
iosevka-ss03 = "iosevka-ss03"
iosevka-fixed-ss03 = "iosevka-fixed-ss03"
iosevka-term-ss03 = "iosevka-term-ss03"
iosevka-type-ss03 = "iosevka-type-ss03"
iosevka-term-lig-ss03 = "iosevka-term-lig-ss03"
iosevka-ss04 = "iosevka-ss04"
iosevka-fixed-ss04 = "iosevka-fixed-ss04"
iosevka-term-ss04 = "iosevka-term-ss04"
iosevka-type-ss04 = "iosevka-type-ss04"
iosevka-term-lig-ss04 = "iosevka-term-lig-ss04"
iosevka-ss05 = "iosevka-ss05"
iosevka-fixed-ss05 = "iosevka-fixed-ss05"
iosevka-term-ss05 = "iosevka-term-ss05"
iosevka-type-ss05 = "iosevka-type-ss05"
iosevka-term-lig-ss05 = "iosevka-term-lig-ss05"
iosevka-ss06 = "iosevka-ss06"
iosevka-fixed-ss06 = "iosevka-fixed-ss06"
iosevka-term-ss06 = "iosevka-term-ss06"
iosevka-type-ss06 = "iosevka-type-ss06"
iosevka-term-lig-ss06 = "iosevka-term-lig-ss06"
iosevka-ss07 = "iosevka-ss07"
iosevka-fixed-ss07 = "iosevka-fixed-ss07"
iosevka-term-ss07 = "iosevka-term-ss07"
iosevka-type-ss07 = "iosevka-type-ss07"
iosevka-term-lig-ss07 = "iosevka-term-lig-ss07"
iosevka-ss08 = "iosevka-ss08"
iosevka-fixed-ss08 = "iosevka-fixed-ss08"
iosevka-term-ss08 = "iosevka-term-ss08"
iosevka-type-ss08 = "iosevka-type-ss08"
iosevka-term-lig-ss08 = "iosevka-term-lig-ss08"
iosevka-ss09 = "iosevka-ss09"
iosevka-fixed-ss09 = "iosevka-fixed-ss09"
iosevka-term-ss09 = "iosevka-term-ss09"
iosevka-type-ss09 = "iosevka-type-ss09"
iosevka-term-lig-ss09 = "iosevka-term-lig-ss09"
iosevka-ss10 = "iosevka-ss10"
iosevka-fixed-ss10 = "iosevka-fixed-ss10"
iosevka-term-ss10 = "iosevka-term-ss10"
iosevka-type-ss10 = "iosevka-type-ss10"
iosevka-term-lig-ss10 = "iosevka-term-lig-ss10"
iosevka-ss11 = "iosevka-ss11"
iosevka-fixed-ss11 = "iosevka-fixed-ss11"
iosevka-term-ss11 = "iosevka-term-ss11"
iosevka-type-ss11 = "iosevka-type-ss11"
iosevka-term-lig-ss11 = "iosevka-term-lig-ss11"
iosevka-ss12 = "iosevka-ss12"
iosevka-fixed-ss12 = "iosevka-fixed-ss12"
iosevka-term-ss12 = "iosevka-term-ss12"
iosevka-type-ss12 = "iosevka-type-ss12"
iosevka-term-lig-ss12 = "iosevka-term-lig-ss12"
iosevka-ss13 = "iosevka-ss13"
iosevka-fixed-ss13 = "iosevka-fixed-ss13"
iosevka-term-ss13 = "iosevka-term-ss13"
iosevka-type-ss13 = "iosevka-type-ss13"
iosevka-term-lig-ss13 = "iosevka-term-lig-ss13"
# Experimental variants
iosevka-aile = "iosevka-aile"
@ -464,33 +357,29 @@ iosevka-sparkle = "iosevka-sparkle"
[collectPlans.iosevka]
from = [
"iosevka",
"iosevka-term",
"iosevka-type",
"iosevka-term-lig"
"iosevka-fixed",
"iosevka-term"
]
[collectPlans.iosevka-slab]
from = [
"iosevka-slab",
"iosevka-term-slab",
"iosevka-type-slab",
"iosevka-term-lig-slab"
"iosevka-fixed-slab",
"iosevka-term-slab"
]
[collectPlans.iosevka-curly]
from = [
"iosevka-curly",
"iosevka-term-curly",
"iosevka-type-curly",
"iosevka-term-lig-curly"
"iosevka-fixed-curly",
"iosevka-term-curly"
]
[collectPlans.iosevka-curly-slab]
from = [
"iosevka-curly-slab",
"iosevka-term-curly-slab",
"iosevka-type-curly-slab",
"iosevka-term-lig-curly-slab"
"iosevka-fixed-curly-slab",
"iosevka-term-curly-slab"
]
[collectPlans.iosevka-aile]

View file

@ -1,5 +0,0 @@
* Fix “Lucida” style's `one` character.
* Added weight “Book”.
* Fix broken shape of heavy curly V, etc.
* Improve double-line arrow ligations.
* Add diamond-shaped `<>` ligation, and enabled that for Haskell.

11
changes/3.0.0-rc.1.md Normal file
View file

@ -0,0 +1,11 @@
* The packaging and spacing is significantly changed:
* `Iosevka` → Kept, but made arrows and geometric symbols wide.
* `Iosevka Term``Iosevka Fixed`.
* `Iosevka TermLig``Iosevka Term`.
* `Iosevka Type` → Removed.
* `Iosevka CC` → Removed.
* Fix “Lucida” style's `one` character.
* Added weight “Book”.
* Fix broken shape of heavy curly V, etc.
* Improve double-line arrow ligations.
* Add diamond-shaped `<>` ligation, and enabled that for Haskell.

View file

@ -170,7 +170,7 @@ export as build : define [buildFont font para] : begin
set font.GPOS otl.GPOS
set font.GDEF otl.GDEF
if (para.spacing == 0) : begin
if (para.forceMonospace && para.spacing == 0) : begin
set gs.glyphList : gs.glyphList.filter [lambda [g] : g.advanceWidth <= para.width]
set font.glyfMap gs.glyphs

View file

@ -21,7 +21,7 @@ glyph-block AutoBuild-Enclosure : begin
# Build miniature glyphs : circled, superscripts, subscripts...
# Circled
define circleWidthClasses {{'hwid' WIDTH 0.12} {'fwid' FULLWIDTH0 0.08}}
define circleWidthClasses {{'hwid' WIDTH 0.12} {'fwid' WIDE-WIDTH-0 0.08}}
define [AdjustDigitCount digits width] : Math.max 1 (digits * WIDTH / width)
define [EnclosureStrokeScale dscale digits width] : dscale / [Math.pow [AdjustDigitCount digits width] 0.66]
@ -333,45 +333,45 @@ glyph-block AutoBuild-Enclosure : begin
if [not recursive] : do "Single-digit circled"
local compositions : list
list 0xA9 {'C'} FULLWIDTH2
list 0x1F12F {'turnC'} FULLWIDTH2
list 0xAE {'R'} FULLWIDTH2
list 0x2117 {'P'} FULLWIDTH2
list 0x24EA {'zero'} FULLWIDTH1
compositions.push { null {'space'} FULLWIDTH1 }
list 0xA9 {'C'} WIDE-WIDTH-2
list 0x1F12F {'turnC'} WIDE-WIDTH-2
list 0xAE {'R'} WIDE-WIDTH-2
list 0x2117 {'P'} WIDE-WIDTH-2
list 0x24EA {'zero'} WIDE-WIDTH-1
compositions.push { null {'space'} WIDE-WIDTH-1 }
foreach [j : range 1 till 9] : compositions.push : list
0x2460 + j - 1
digitGlyphNames j
begin FULLWIDTH1
foreach [j : range 0 26] : compositions.push {(0x24B6 + j) {unicodeGlyphs.(['A'.charCodeAt 0] + j).name} FULLWIDTH1}
foreach [j : range 0 26] : compositions.push {(0x24D0 + j) {unicodeGlyphs.(['a'.charCodeAt 0] + j).name} FULLWIDTH1 0.5 (XH/2)}
begin WIDE-WIDTH-1
foreach [j : range 0 26] : compositions.push {(0x24B6 + j) {unicodeGlyphs.(['A'.charCodeAt 0] + j).name} WIDE-WIDTH-1}
foreach [j : range 0 26] : compositions.push {(0x24D0 + j) {unicodeGlyphs.(['a'.charCodeAt 0] + j).name} WIDE-WIDTH-1 0.5 (XH/2)}
createCircledGlyphs 1 compositions
if [not recursive] : do "Double-digit circled"
local compositions : list
compositions.push { null {'space'} FULLWIDTH1 }
compositions.push { null {'space'} WIDE-WIDTH-1 }
foreach [j : range 10 till 20] : compositions.push : list
0x2460 + j - 1
digitGlyphNames j
begin FULLWIDTH1
begin WIDE-WIDTH-1
foreach [j : range 21 till 35] : compositions.push : list
0x3251 + j - 21
digitGlyphNames j
begin FULLWIDTH1
begin WIDE-WIDTH-1
foreach [j : range 36 till 50] : compositions.push : list
0x32B1 + j - 36
digitGlyphNames j
begin FULLWIDTH1
begin WIDE-WIDTH-1
createCircledGlyphs 2 compositions
if [not recursive] : do "Single-digit inset circled"
local compositions : list
list 0x24FF {'zero'} FULLWIDTH1
list 0x24FF {'zero'} WIDE-WIDTH-1
foreach [j : range 1 till 9] : compositions.push : list
0x2776 + j - 1
digitGlyphNames j
begin FULLWIDTH1
foreach [j : range 0 26] : compositions.push {(0x1F150 + j) {unicodeGlyphs.(['A'.charCodeAt 0] + j).name} FULLWIDTH1}
begin WIDE-WIDTH-1
foreach [j : range 0 26] : compositions.push {(0x1F150 + j) {unicodeGlyphs.(['A'.charCodeAt 0] + j).name} WIDE-WIDTH-1}
createInsetCircledGlyphs 1 compositions
if [not recursive] : do "Double-digit inset circled"
@ -379,47 +379,47 @@ glyph-block AutoBuild-Enclosure : begin
foreach [j : range 10 till 10] : compositions.push : list
0x2776 + j - 1
digitGlyphNames j
begin FULLWIDTH1
begin WIDE-WIDTH-1
foreach [j : range 11 till 20] : compositions.push : list
0x24EB + j - 11
digitGlyphNames j
begin FULLWIDTH1
begin WIDE-WIDTH-1
createInsetCircledGlyphs 2 compositions
if [not recursive] : do "boxed"
local compositions {}
compositions.push { null {'space'} FULLWIDTH1 }
foreach [j : range 0 26] : compositions.push {(0x1F130 + j) {unicodeGlyphs.(['A'.charCodeAt 0] + j).name} FULLWIDTH1}
compositions.push { null {'space'} WIDE-WIDTH-1 }
foreach [j : range 0 26] : compositions.push {(0x1F130 + j) {unicodeGlyphs.(['A'.charCodeAt 0] + j).name} WIDE-WIDTH-1}
createBoxedGlyphs 1 compositions
if [not recursive] : do "inset boxed"
local compositions {}
foreach [j : range 0 26] : compositions.push {(0x1F170 + j) {unicodeGlyphs.(['A'.charCodeAt 0] + j).name} FULLWIDTH1}
foreach [j : range 0 26] : compositions.push {(0x1F170 + j) {unicodeGlyphs.(['A'.charCodeAt 0] + j).name} WIDE-WIDTH-1}
createInsetBoxedGlyphs 1 compositions
if [not recursive] : do "inset mosaic"
local compositions {}
compositions.push { 0x1FBB1 { unicodeGlyphs.(0x2714).name } FULLWIDTH }
compositions.push { 0x1FBB4 { unicodeGlyphs.(0x21B2).name } FULLWIDTH }
compositions.push { 0x1FBC4 { unicodeGlyphs.(0x003F).name } FULLWIDTH }
compositions.push { 0x1FBB1 { unicodeGlyphs.(0x2714).name } WIDE-WIDTH-1 }
compositions.push { 0x1FBB4 { unicodeGlyphs.(0x21B2).name } WIDE-WIDTH-1 }
compositions.push { 0x1FBC4 { unicodeGlyphs.(0x003F).name } WIDE-WIDTH-1 }
createInsetMosaicGlyphs 1 compositions
if [not recursive] : do "Single-digit double circled"
local compositions {}
compositions.push { null {'space'} FULLWIDTH1 }
compositions.push { null {'space'} WIDE-WIDTH-1 }
foreach [j : range 1 till 9] : compositions.push : list
0x24F5 + j - 1
digitGlyphNames j
begin FULLWIDTH1
begin WIDE-WIDTH-1
createDoubleCircledGlyphs 1 compositions
if [not recursive] : do "Double-digit double circled"
local compositions {}
compositions.push { null {'space'} FULLWIDTH1 }
compositions.push { null {'space'} WIDE-WIDTH-1 }
foreach [j : range 10 till 10] : compositions.push : list
0x24F5 + j - 1
digitGlyphNames j
begin FULLWIDTH1
begin WIDE-WIDTH-1
createDoubleCircledGlyphs 2 compositions
if [not recursive] : do "Single-digit braced"
@ -427,9 +427,9 @@ glyph-block AutoBuild-Enclosure : begin
foreach [j : range 1 till 9] : compositions.push : list
0x2474 + j - 1
digitGlyphNames j
begin FULLWIDTH1
foreach [j : range 0 26] : compositions.push {(0x249C + j) {unicodeGlyphs.(['a'.charCodeAt 0] + j).name} FULLWIDTH1 0.5 (XH/2)}
foreach [j : range 0 26] : compositions.push {(0x1F110 + j) {unicodeGlyphs.(['A'.charCodeAt 0] + j).name} FULLWIDTH1}
begin WIDE-WIDTH-1
foreach [j : range 0 26] : compositions.push {(0x249C + j) {unicodeGlyphs.(['a'.charCodeAt 0] + j).name} WIDE-WIDTH-1 0.5 (XH/2)}
foreach [j : range 0 26] : compositions.push {(0x1F110 + j) {unicodeGlyphs.(['A'.charCodeAt 0] + j).name} WIDE-WIDTH-1}
createBracedGlyphs 1 compositions
if [not recursive] : do "Double-digit braced"
@ -437,16 +437,16 @@ glyph-block AutoBuild-Enclosure : begin
foreach [j : range 10 till 20] : compositions.push : list
0x2474 + j - 1
digitGlyphNames j
begin FULLWIDTH1
begin WIDE-WIDTH-1
createBracedGlyphs 2 compositions
if [not recursive] : do "Single-digit dotted"
local compositions : list
list 0x1F100 {'zero'} FULLWIDTH1
list 0x1F100 {'zero'} WIDE-WIDTH-1
foreach [j : range 1 till 9] : compositions.push : list
0x2488 + j - 1
digitGlyphNames j
begin FULLWIDTH1
begin WIDE-WIDTH-1
createDottedGlyphs 1 compositions
if [not recursive] : do "Double-digit dotted"
@ -454,5 +454,5 @@ glyph-block AutoBuild-Enclosure : begin
foreach [j : range 10 till 20] : compositions.push : list
0x2488 + j - 1
digitGlyphNames j
begin FULLWIDTH1
begin WIDE-WIDTH-1
createDottedGlyphs 2 compositions

View file

@ -102,39 +102,6 @@ glyph-block CommonShapes : begin
apply-transform : Italify
define [vdual newid unicode id spacing] : vcombine [fallback newid : 'double' + id] unicode id id spacing
# Full-width derivatives
define [fwl newid unicode id shift wk] : create-glyph [fallback newid : 'fwl' + id] : glyph-construction
if unicode : assign-unicode unicode
include glyphs.(id)
set-width [fallback wk FULLWIDTH]
apply-transform : Translate [fallback shift 0] 0
define [fwr newid unicode id shift wk] : create-glyph [fallback newid : 'fwr' + id] : glyph-construction
if unicode : assign-unicode unicode
include glyphs.(id)
set-width [fallback wk FULLWIDTH]
apply-transform : Translate ([fallback wk FULLWIDTH] - WIDTH + [fallback shift 0]) 0
define [dwl newid unicode id shift] : create-glyph [fallback newid : 'dwl' + id] : glyph-construction
if unicode : assign-unicode unicode
include glyphs.(id)
set-width UPM
apply-transform : Translate [fallback shift 0] 0
define [dwr newid unicode id shift] : create-glyph [fallback newid : 'dwr' + id] : glyph-construction
if unicode : assign-unicode unicode
include glyphs.(id)
set-width UPM
apply-transform : Translate (UPM - WIDTH + [fallback shift 0]) 0
define [dwc newid unicode id shift] : create-glyph [fallback newid : 'dwc' + id] : glyph-construction
if unicode : assign-unicode unicode
include glyphs.(id)
set-width UPM
apply-transform : Translate ((UPM - WIDTH) / 2 + [fallback shift 0]) 0
###### COMMON SHAPES
define [Rect u d l r transformShiftOnly] : create-glyph : glyph-construction
local my ((u + d) / 2)
@ -812,4 +779,4 @@ glyph-block CommonShapes : begin
apply-transform : Translate xt yt
include g
glyph-block-export queryFeatureSelector select-variant italic-variant alias composite into-unicode turned dual hcombine vdual vcombine fwl fwr dwl dwr dwc Rect Ring RingAt DotAt CircleRing CircleRingAt CircleDotAt OShape OShapeOutline OBarLeftShape OBarRightShape LeftwardTopSerif LeftwardBottomSerif RightwardTopSerif RightwardBottomSerif CenterTopSerif CenterBottomSerif DownwardRightSerif UpwardRightSerif DownwardLeftSerif UpwardLeftSerif AIVSerifs AIHSerifs AINSerifs AICyrISerifs AIMSerifs halfXStrand xStrand nShoulderKnots nShoulder mShoulderSpiro HBar HBarTop HBarBottom HOverlayBar VBar VBarLeft VBarRight VerticalHook LegShape LeftHook HooktopLeftBar CurlyTail HCurlyTail FlatSlashShape determineMixR hookstart hookend CyrDescender refair Fork Miniature Thinner Widen FlipAround ScaleAround Realign ForceUpright Overlay diagCor CreateWaveShape NameUni PointingTo
glyph-block-export queryFeatureSelector select-variant italic-variant alias composite into-unicode turned dual hcombine vdual vcombine Rect Ring RingAt DotAt CircleRing CircleRingAt CircleDotAt OShape OShapeOutline OBarLeftShape OBarRightShape LeftwardTopSerif LeftwardBottomSerif RightwardTopSerif RightwardBottomSerif CenterTopSerif CenterBottomSerif DownwardRightSerif UpwardRightSerif DownwardLeftSerif UpwardLeftSerif AIVSerifs AIHSerifs AINSerifs AICyrISerifs AIMSerifs halfXStrand xStrand nShoulderKnots nShoulder mShoulderSpiro HBar HBarTop HBarBottom HOverlayBar VBar VBarLeft VBarRight VerticalHook LegShape LeftHook HooktopLeftBar CurlyTail HCurlyTail FlatSlashShape determineMixR hookstart hookend CyrDescender refair Fork Miniature Thinner Widen FlipAround ScaleAround Realign ForceUpright Overlay diagCor CreateWaveShape NameUni PointingTo

View file

@ -14,7 +14,7 @@ glyph-block Symbol-Arrow : begin
glyph-block-export [ArrowShape exportArrowShape]
### Arrowheads
for-width-kinds FULLWIDTH2
for-width-kinds WIDE-WIDTH-1
define arrowHeight : para.arrowSize * (WIDTH - SB)
define arrowWidth : Math.min (MosaicWidth - SB) arrowHeight
define arrowMidX : MosaicWidth / 2
@ -382,7 +382,7 @@ glyph-block Symbol-Arrow : begin
vcombine [MangleName 'uni21CC'] [MangleUnicode 0x21CC] [MangleName 'arrowrightHL'] [MangleName 'arrowleftHL'] (arrowSize)
vcombine [MangleName 'uni21B9'] [MangleUnicode 0x21B9] [MangleName 'arrowbarright'] [MangleName 'arrowbarleft'] (arrowSize * 1.75)
if (MosaicWidth == FULLWIDTH2) : set exportArrowShape ArrowShape
if (MosaicWidth == WIDE-WIDTH-1) : set exportArrowShape ArrowShape
alias 'longArrowLeft' 0x27F5 'arrowleft.fwid'
alias 'longArrowRight' 0x27F6 'arrowright.fwid'

View file

@ -11,7 +11,7 @@ glyph-block Symbol-Geometric : begin
glyph-block-import CommonShapes
### Standard geometric shapes
for-width-kinds FULLWIDTH2
for-width-kinds WIDE-WIDTH-1
define mosaicMiddle : MosaicWidth / 2
define left : mix MIDDLE SB 1.1

View file

@ -71,7 +71,7 @@ glyph-block Symbol-Math-Letter-Like : begin
save 'increment' 0x2206
turned 'nabla' 0x2207 'increment' MIDDLE (CAP / 2)
if [not recursive] : for-width-kinds FULLWIDTH2 : do
if [not recursive] : for-width-kinds WIDE-WIDTH-1 : do
local s : (RIGHTSB - SB - O * 4 + (MosaicWidth - WIDTH) * 0.5) / CAP
local df : Miniature
glyphs -- {'eight' 'rotetedpropto'}
@ -371,29 +371,24 @@ glyph-block Symbol-Math-Arith : begin
glyph-block Symbol-Math-Dots-And-Colons : begin
glyph-block-import CommonShapes
local radius1 PERIODRADIUS
local radius : Math.min PERIODRADIUS
linreg WIDTH (0.5 * [adviceBlackness 3.5] * PERIODSIZE / STROKE) UPM PERIODRADIUS FULLWIDTH3
local left : mix 0 FULLWIDTH3 (1 / 4)
local right : mix 0 FULLWIDTH3 (3 / 4)
local radius : Math.min PERIODRADIUS (0.5 * [adviceBlackness 3.5] * PERIODSIZE / STROKE)
local left : mix 0 WIDTH (1 / 4)
local right : mix 0 WIDTH (3 / 4)
sketch
set-width FULLWIDTH3
include : Ring (XH - O) (XH - radius * 2 + O) (FULLWIDTH3 / 2 - radius + O) (FULLWIDTH3 / 2 + radius - O) true
include : Ring (XH - O) (XH - radius * 2 + O) (MIDDLE - radius + O) (MIDDLE + radius - O) true
include : Ring (radius * 2 - O) O (left - radius + O) (left + radius - O) true
include : Ring (radius * 2 - O) O (right - radius + O) (right + radius - O) true
save 'therefore' 0x2234
sketch
set-width FULLWIDTH3
include : Ring (XH - O) (XH - radius * 2 + O) (left - radius + O) (left + radius - O) true
include : Ring (XH - O) (XH - radius * 2 + O) (right - radius + O) (right + radius - O) true
include : Ring (radius * 2 - O) O (FULLWIDTH3 / 2 - radius + O) (FULLWIDTH3 / 2 + radius - O) true
include : Ring (radius * 2 - O) O (MIDDLE - radius + O) (MIDDLE + radius - O) true
save 'because' 0x2235
sketch
set-width FULLWIDTH3
include : Ring (PERIODRADIUS * 2 - O) O (FULLWIDTH3 / 2 - PERIODRADIUS + O) (FULLWIDTH3 / 2 + PERIODRADIUS - O) true
include : Ring (XH - O) (XH - PERIODRADIUS * 2 + O) (FULLWIDTH3 / 2 - PERIODRADIUS + O) (FULLWIDTH3 / 2 + PERIODRADIUS - O) true
include : Ring (PERIODRADIUS * 2 - O) O (MIDDLE - PERIODRADIUS + O) (MIDDLE + PERIODRADIUS - O) true
include : Ring (XH - O) (XH - PERIODRADIUS * 2 + O) (MIDDLE - PERIODRADIUS + O) (MIDDLE + PERIODRADIUS - O) true
save 'mathcolon' 0x2236
sketch # coloncolon
set-width FULLWIDTH3
include : Ring (radius * 2 - O) O (left - radius + O) (left + radius - O) true
include : Ring (radius * 2 - O) O (right - radius + O) (right + radius - O) true
include : Ring (XH - O) (XH - radius * 2 + O) (left - radius + O) (left + radius - O) true

View file

@ -13,7 +13,7 @@ glyph-block Symbol-Mosaic : begin
define MosaicTop fontMetrics.OS_2.sTypoAscender
define MosaicBottom fontMetrics.OS_2.sTypoDescender
for-width-kinds FULLWIDTH
for-width-kinds WIDE-WIDTH-2
define top MosaicTop
define bottom MosaicBottom
@ -749,7 +749,7 @@ glyph-block Symbol-Mosaic-Powerline : begin
define MosaicTop fontMetrics.OS_2.sTypoAscender
define MosaicBottom fontMetrics.OS_2.sTypoDescender
for-width-kinds FULLWIDTH
for-width-kinds WIDE-WIDTH-2
local pwlMidOrig : (MosaicTop + MosaicBottom) / 2
local pwlTop : (MosaicTop - pwlMidOrig) * para.powerlineScaleY + para.powerlineShiftY + pwlMidOrig
local pwlBot : (MosaicBottom - pwlMidOrig) * para.powerlineScaleY + para.powerlineShiftY + pwlMidOrig

View file

@ -472,7 +472,7 @@ glyph-block Symbol-Other-Powerline-And-GUI : begin
save 'pwlLock' 0xE0A2
for-width-kinds FULLWIDTH
for-width-kinds WIDE-WIDTH-1
do "arrowheadShapedPointer"
define scaffold : object
set scaffold.top : mix uiFigBot uiFigTop 0.85

View file

@ -33,7 +33,7 @@ glyph-block Symbol-Punctuation : begin
save 'nbsp' 0xA0
sketch # em-space
set-width FULLWIDTH
set-width WIDE-WIDTH-1
save 'emquad' 0x2001
save 'emsp' 0x2003
@ -809,13 +809,13 @@ glyph-block Symbol-Punctuation : begin
save 'enDash' 0x2013
sketch # emDash
set-width FULLWIDTH
include : HBar 0 FULLWIDTH symbolMid
set-width WIDE-WIDTH-1
include : HBar 0 WIDE-WIDTH-1 symbolMid
save 'emDash' 0x2014
sketch # doubleEmDash
set-width (FULLWIDTH * 2)
include : HBar 0 (FULLWIDTH * 2) symbolMid
set-width (WIDE-WIDTH-1 * 2)
include : HBar 0 (WIDE-WIDTH-1 * 2) symbolMid
save 'doubleEmDash'
alias 'horizontalBar' 0x2015 'emDash'
@ -823,8 +823,7 @@ glyph-block Symbol-Punctuation : begin
do 'Interpuncts'
sketch # interpunct
set-width FULLWIDTH3
include : DotAt (FULLWIDTH3 / 2) symbolMid (PERIODRADIUS - O)
include : DotAt MIDDLE symbolMid (PERIODRADIUS - O)
save 'period.center'
save 'interpunct' 0xB7
save 'greekbullet' 0x387
@ -832,7 +831,7 @@ glyph-block Symbol-Punctuation : begin
save 'hyphenpoint' 0x2027
sketch # whitebullet
set-width FULLWIDTH
set-width WIDE-WIDTH-1
local s : [adviceBlackness 5] * 0.75
include : difference
DotAt FWMIDDLE symbolMid (PERIODRADIUS - O)
@ -914,15 +913,6 @@ glyph-block Symbol-Punctuation : begin
apply-transform : Translate dist 0
save 'revertDoubleQuote'
fwr nothing 0x201A 'lowSingleQuote' 0 FULLWIDTH3
fwr nothing 0x2018 'openSingleQuote' 0 FULLWIDTH3
fwl nothing 0x2019 'closeSingleQuote' 0 FULLWIDTH3
fwr nothing 0x201B 'revertSingleQuote' 0 FULLWIDTH3
fwr nothing 0x201E 'lowDoubleQuote' 0 FULLWIDTH3
fwr nothing 0x201C 'openDoubleQuote' 0 FULLWIDTH3
fwl nothing 0x201D 'closeDoubleQuote' 0 FULLWIDTH3
fwr nothing 0x201F 'revertDoubleQuote' 0 FULLWIDTH3
sketch # prime
local wide : WIDTH * 0.1
include : dispiro
@ -1045,7 +1035,7 @@ glyph-block Symbol-Punctuation : begin
include : HBar SB RIGHTSB [mix parenTop parenBot 0.67]
save 'doubledagger' 0x2021
for-width-kinds FULLWIDTH "Ellipsis"
for-width-kinds WIDE-WIDTH-1 "Ellipsis"
define [DotRadius darkness space] : begin
return : 0.5 * [adviceBlackness darkness (space / WIDTH)] * PERIODSIZE / STROKE

View file

@ -106,12 +106,10 @@ export : define [calculateMetrics para] : begin
define ONEBALANCE : fallback para.onebalance 0
# derived metrics
define NO_DIVERSITY : para.diversityM == 1 && para.diversityF == 1 && para.diversityI == 1 && para.diversityII == 1
define FULLWIDTH0 : if NO_DIVERSITY (WIDTH * 2) UPM
define FULLWIDTH : if (para.spacing >= 2) FULLWIDTH0 WIDTH
define FULLWIDTH1 : if (para.spacing >= 1) FULLWIDTH0 WIDTH
define FULLWIDTH2 : if (para.spacing >= 2) FULLWIDTH0 WIDTH
define FULLWIDTH3 : if (para.spacing >= 3) FULLWIDTH0 WIDTH
define MONOSPACE : para.diversityM == 1 && para.diversityF == 1 && para.diversityI == 1 && para.diversityII == 1
define WIDE-WIDTH-0 : if MONOSPACE (WIDTH * 2) UPM
define WIDE-WIDTH-1 : if (para.spacing >= 1) WIDE-WIDTH-0 WIDTH
define WIDE-WIDTH-2 : if (para.spacing >= 2) WIDE-WIDTH-0 WIDTH
define OXE : OX - O
define ESS : STROKE * [fallback para.essx CONTRAST]
@ -120,9 +118,9 @@ export : define [calculateMetrics para] : begin
define CAPO : CAP - O
define HALFSTROKE : STROKE / 2
define RIGHTSB : WIDTH - SB
define FWRSB : FULLWIDTH - SB
define FWRSB : WIDE-WIDTH-1 - SB
define MIDDLE : WIDTH / 2
define FWMIDDLE : FULLWIDTH / 2
define FWMIDDLE : WIDE-WIDTH-1 / 2
define CAPMIDDLE : CAP / 2
define CAP_SMOOTH : CAP - SMOOTH
define DOTRADIUS : DOTSIZE / 2
@ -185,7 +183,7 @@ export : define [calculateMetrics para] : begin
O OX OXHOOK HOOK AHOOK SHOOK RHOOK JHOOK FHOOK HOOKX SMOOTH SMALLSMOOTH STROKE DOTSIZE PERIODSIZE
BARPOS GBARPOS EBARPOS OVERLAYPOS FIVEBARPOS LONGJUT JUT VJUT ACCENT ACCENTX CTHIN CTHINB SLAB
TAILADJX TAILADJY LBALANCE IBALANCE LBALANCE2 IBALANCE2 JBALANCE JBALANCE2 TBALANCE TBALANCE2 RBALANCE RBALANCE2
FBALANCE ONEBALANCE FULLWIDTH FULLWIDTH0 FULLWIDTH1 FULLWIDTH2 FULLWIDTH3 OXE ESS ESSQUESTION XO CAPO HALFSTROKE RIGHTSB FWRSB
FBALANCE ONEBALANCE WIDE-WIDTH-0 WIDE-WIDTH-1 WIDE-WIDTH-2 OXE ESS ESSQUESTION XO CAPO HALFSTROKE RIGHTSB FWRSB
MIDDLE FWMIDDLE CAPMIDDLE CAP_SMOOTH DOTRADIUS PERIODRADIUS SIDEJUT SMOOTHA SMOOTHB SMALLSMOOTHA SMALLSMOOTHB CORRECTION_OMIDX CORRECTION_OMIDS
WHITENESS adviceBlackness adviceBlackness2 MVERTSTROKE MVERTSTROKE_D OVERLAYSTROKE OPERATORSTROKE GEOMETRYSTROKE SHOULDERFINE SUPERNESS superxy
adviceSSmooth adviceGlottalStopSmooth shoulderMidSlope]

View file

@ -142,7 +142,7 @@ define-macro glyph-block-import : syntax-rules
define allExports : object
CommonShapes `[queryFeatureSelector select-variant italic-variant alias composite
into-unicode turned hcombine vcombine dual vdual fwl fwr dwl dwr dwc Rect Ring RingAt
into-unicode turned hcombine vcombine dual vdual Rect Ring RingAt
DotAt CircleRing CircleRingAt CircleDotAt OShape OShapeOutline OBarLeftShape
OBarRightShape LeftwardTopSerif LeftwardBottomSerif RightwardTopSerif
RightwardBottomSerif CenterTopSerif CenterBottomSerif DownwardRightSerif
@ -177,7 +177,7 @@ define-macro for-width-kinds : syntax-rules
`[for-width-kinds @_desired @::_body] : dirty `[ do \\
define WidthKinds {
{'.hwid' $Capture$.metrics.WIDTH $Capture$.metrics.WIDTH}
{'.fwid' $Capture$.metrics.FULLWIDTH0 ($Capture$.metrics.FULLWIDTH0 / 2)}
{'.fwid' $Capture$.metrics.WIDE-WIDTH-0 ($Capture$.metrics.WIDE-WIDTH-0 / 2)}
}
foreach {suffix MosaicWidth MosaicUnitWidth} [items-of WidthKinds] : do
define [MangleUnicode unicode] : if (MosaicWidth == @[formOf _desired]) unicode nothing
@ -226,8 +226,8 @@ define-macro glyph-block : syntax-rules
AHOOK SHOOK RHOOK JHOOK FHOOK HOOKX SMOOTH SMALLSMOOTH STROKE DOTSIZE PERIODSIZE BARPOS
GBARPOS EBARPOS OVERLAYPOS FIVEBARPOS LONGJUT JUT VJUT ACCENT ACCENTX CTHIN CTHINB SLAB
TAILADJX TAILADJY LBALANCE IBALANCE LBALANCE2 IBALANCE2 JBALANCE JBALANCE2 TBALANCE
TBALANCE2 RBALANCE RBALANCE2 FBALANCE ONEBALANCE FULLWIDTH FULLWIDTH0 FULLWIDTH1
FULLWIDTH2 FULLWIDTH3 OXE ESS ESSQUESTION XO CAPO HALFSTROKE RIGHTSB FWRSB MIDDLE
TBALANCE2 RBALANCE RBALANCE2 FBALANCE ONEBALANCE WIDE-WIDTH-0 WIDE-WIDTH-1
WIDE-WIDTH-2 OXE ESS ESSQUESTION XO CAPO HALFSTROKE RIGHTSB FWRSB MIDDLE
FWMIDDLE CAPMIDDLE CAP_SMOOTH DOTRADIUS PERIODRADIUS SIDEJUT SMOOTHA SMOOTHB
SMALLSMOOTHA SMALLSMOOTHB CORRECTION_OMIDX CORRECTION_OMIDS adviceBlackness
adviceBlackness2 MVERTSTROKE MVERTSTROKE_D OVERLAYSTROKE OPERATORSTROKE GEOMETRYSTROKE

View file

@ -1,6 +1,6 @@
{
"name": "iosevka",
"version": "3.0.0-beta.4",
"version": "3.0.0-rc.1",
"main": "./generate.js",
"engines": {
"node": ">=8.4.0"

View file

@ -41,7 +41,7 @@ isOblique = false # Use oblique shapes?
lllcrowdedness = 3.33333333
spacing = 1 # Spacing indicator
spacing = 1 # Spacing indicator
# Powerline-specific parameters
powerlineScaleY = 1 # Vertical scale
@ -49,9 +49,6 @@ powerlineScaleX = 1 # Horizontal scale
powerlineShiftY = 0 # Vertical shift
powerlineShiftX = 0 # Horizontal shift
# Full-width codes
fullwidth_codes = []
# Diversity widths
diversityM = 1
diversityF = 1
@ -257,22 +254,16 @@ overshootx = -16
sb = 1.1
### Spacings
[term]
# Fixed variant
[sp-fixed]
spacing = 0
enableLigation = false
forceMonospace = true
# Term variant with ligations
[termlig]
# Terminal variant
[sp-term]
spacing = 0
[type]
inherits = ["xx-type"]
spacing = 2
[cc]
inherits = ["xx-cc"]
spacing = 3
###### Widths
# NOTE: this section is highly experimental
# HANDLE WITH EXTREME CARE
@ -316,69 +307,6 @@ enableLigation = false
[no-cv-ss]
enableCvSs = false
###### Full-width codes
[xx-type]
spacing = 2
[xx-type.appends]
fullwidth_codes = [
8212, #—
8251, #※
# 8451, #℃
8719, #∏
8720,
8721, #∑
8733, #∝
8734, #∞
8736, #∠
8748, #∫∫
8749, #∫∫∫
8978, #⌒
8896,8897,8898,8899
]
[xx-cc]
inherits = ["xx-type"]
spacing = 3
[xx-cc.appends]
fullwidth_codes = [
164,
177,
215, #×
247,
711,
713,
167,
8741, #∥
8743, #∧
8744, #
8745, #∩
8746, #
8214, #‖
8242, #
8243, #″
8747, #∫
8750, #∮
8764, #∽
8765, #∽
8776, #≈
8780, #≌
8800, #≠
8801, #≡
8804, #≤
8805, #≥
8814, #≮
8815, #≯
8866,
8867,
8868,
8869, #⊥
8816,8817,8834,8835,8836,8837,
8853, #⊕
8854,
8857, #⊙
8712, #∈
]
###### Leading
[leading-750]
leading = 750

View file

@ -98,9 +98,8 @@ const PackageShapes = {
const PackageSpacings = {
// spacingDesc, ligation, spacingNameSuffix
"": ["Default", true, ""],
term: ["Terminal", false, "Term"],
type: ["Typesetting", true, "Type"],
"term-lig": ["Terminal-Ligature", true, "TermLig"]
fixed: ["Fixed", false, "Fixed"],
term: ["Terminal", true, "Term"]
};
async function GeneratePackageList(out) {

View file

@ -1,8 +1,10 @@
### Deprecated Series
### Packaging Reorganization
The “CC” series, which is intended to made width-compatible with legacy East Asian fonts from Iosevka 2.x is considered deprecated and will be removed soon. The variants include:
Since Iosevka 3.0.0-rc.1, the following packaging reorganization is introduced:
* `iosevka-cc-DEPRECATED-<version>`
* `iosevka-cc-slab-DEPRECATED-<version>`
* `iosevka-cc-curly-DEPRECATED-<version>`
* `iosevka-cc-curly-slab-DEPRECATED-<version>`
* `Iosevka Term``Iosevka Fixed`.
* `Iosevka TermLig``Iosevka Term`.
* `Iosevka Type` → Removed.
* `Iosevka CC` → Removed.
The default Iosevka family's spacing is also updated to focus on code editing solely.

View file

@ -3,10 +3,9 @@
Iosevka provides a large variety of variants. Prebuilt variants are described below.
- **Spacing** : How wide some specific characters are.
- _Default_: The default variant with ligatures and semantic full-width glyphs.
- _Terminal_ (“Term”): Exact monospaced font without ligatures and full-width glyphs. Since some environments cannot interpret Iosevka as monospaced, and have difficulties with ligatures included, you can use Iosevka Term as an alternative.
- _Terminal-Ligature_ (“TermLig”)Exact monospaced font with ligatures.
- _Typesetting_ (“Type”): Similar to _Default_, but more mathematical symbols are wider.
- _Default_: The default variant with ligatures. Various symbols, like arrows, are wide (2-column).
- _Terminal_ (“Term”)A narrower variant focusing terminal uses. Arrows and many other symbols are narrow.
- _Fixed_: Exact monospaced font without ligatures and wide glyphs. Since some environments cannot interpret Iosevka as monospaced, and have difficulties with ligatures included, you can use Iosevka Term as an alternative.
- **Shape** : Key shape parameters:
- *Slab*: Letters will contain slab serif.
- *Curly*: Letters like `k`, `x`, `v`, `A`, `R` will have curly leg shapes.