Add SS14, CV89 and CV90. Fixes #434.
10
README.md
|
@ -217,6 +217,7 @@ The current available styles for `design`/`upright`/`italic`/`oblique` options a
|
||||||
* `ss11`: Set character variant to “X Window Style”.
|
* `ss11`: Set character variant to “X Window Style”.
|
||||||
* `ss12`: Set character variant to “Ubuntu Mono Style”.
|
* `ss12`: Set character variant to “Ubuntu Mono Style”.
|
||||||
* `ss13`: Set character variant to “Lucida Style”.
|
* `ss13`: Set character variant to “Lucida Style”.
|
||||||
|
* `ss14`: Set character variant to “Jetbrains Mono Style”.
|
||||||
* `ss20`: Set character variant to “Curly Style”.
|
* `ss20`: Set character variant to “Curly Style”.
|
||||||
|
|
||||||
<!-- END Section-Stylistic-Sets -->
|
<!-- END Section-Stylistic-Sets -->
|
||||||
|
@ -280,6 +281,9 @@ The current available styles for `design`/`upright`/`italic`/`oblique` options a
|
||||||
* Styles for `t`:
|
* Styles for `t`:
|
||||||
* `v-t-standard`, `cv40`: Standard `t` shape (default).
|
* `v-t-standard`, `cv40`: Standard `t` shape (default).
|
||||||
* `v-t-cross`, `cv41`: Futura-like `t` shape.
|
* `v-t-cross`, `cv41`: Futura-like `t` shape.
|
||||||
|
* Styles for `u`:
|
||||||
|
* `v-u-with-bar`, `cv89`: Normal `u` with right bar (default).
|
||||||
|
* `v-u-without-bar`, `cv90`: Normal `u` without right bar, like a smaller uppercase `U`.
|
||||||
* Styles for `v`:
|
* Styles for `v`:
|
||||||
* `v-v-straight`, `cv71`: Standard, straight `V` and `v` (default).
|
* `v-v-straight`, `cv71`: Standard, straight `V` and `v` (default).
|
||||||
* `v-v-curly`, `cv72`: Slightly curly `V` and `v`, like Iosevka 2.x.
|
* `v-v-curly`, `cv72`: Slightly curly `V` and `v`, like Iosevka 2.x.
|
||||||
|
@ -293,9 +297,6 @@ The current available styles for `design`/`upright`/`italic`/`oblique` options a
|
||||||
* `v-y-straight`, `cv48`: More-straight letter `y` (default for Upright).
|
* `v-y-straight`, `cv48`: More-straight letter `y` (default for Upright).
|
||||||
* `v-y-cursive`, `cv49`: Cursive-like `y` (default for Italic).
|
* `v-y-cursive`, `cv49`: Cursive-like `y` (default for Italic).
|
||||||
* `v-y-curly`, `cv79`: More curly letter `y`, like Iosevka 2.x.
|
* `v-y-curly`, `cv79`: More curly letter `y`, like Iosevka 2.x.
|
||||||
* Styles for `ß`:
|
|
||||||
* `v-eszet-traditional`, `cv34`: Traditional, Fraktur-like Eszet.
|
|
||||||
* `v-eszet-sulzbacher`, `cv35`: A more modern, beta-like Eszet (default).
|
|
||||||
* Styles for `0`:
|
* Styles for `0`:
|
||||||
* `v-zero-slashed`, `cv13`: Slashed Zero `0` (default).
|
* `v-zero-slashed`, `cv13`: Slashed Zero `0` (default).
|
||||||
* `v-zero-dotted`, `cv14`: Dotted Zero `0`.
|
* `v-zero-dotted`, `cv14`: Dotted Zero `0`.
|
||||||
|
@ -347,6 +348,9 @@ The current available styles for `design`/`upright`/`italic`/`oblique` options a
|
||||||
* Styles for `<=`, `>=`:
|
* Styles for `<=`, `>=`:
|
||||||
* `v-lig-ltgteq-flat`, `cv66`: The lower bar of `<=` and `>=` ligation is flat (default).
|
* `v-lig-ltgteq-flat`, `cv66`: The lower bar of `<=` and `>=` ligation is flat (default).
|
||||||
* `v-lig-ltgteq-slanted`, `cv67`: The lower bar of `<=` and `>=` ligation is slanted.
|
* `v-lig-ltgteq-slanted`, `cv67`: The lower bar of `<=` and `>=` ligation is slanted.
|
||||||
|
* Styles for `ß`:
|
||||||
|
* `v-eszet-traditional`, `cv34`: Traditional, Fraktur-like Eszet.
|
||||||
|
* `v-eszet-sulzbacher`, `cv35`: A more modern, beta-like Eszet (default).
|
||||||
|
|
||||||
<!-- END Section-Cherry-Picking-Styles -->
|
<!-- END Section-Cherry-Picking-Styles -->
|
||||||
|
|
||||||
|
|
|
@ -221,6 +221,19 @@ design = ["sp-fixed", "ss13"]
|
||||||
family = "Iosevka Term SS13"
|
family = "Iosevka Term SS13"
|
||||||
design = ["sp-term", "ss13"]
|
design = ["sp-term", "ss13"]
|
||||||
|
|
||||||
|
|
||||||
|
[buildPlans.iosevka-ss14]
|
||||||
|
family = "Iosevka SS14"
|
||||||
|
design = ["ss14"]
|
||||||
|
|
||||||
|
[buildPlans.iosevka-fixed-ss14]
|
||||||
|
family = "Iosevka Fixed SS14"
|
||||||
|
design = ["sp-fixed", "ss14"]
|
||||||
|
|
||||||
|
[buildPlans.iosevka-term-ss14]
|
||||||
|
family = "Iosevka Term SS14"
|
||||||
|
design = ["sp-term", "ss14"]
|
||||||
|
|
||||||
###################################################################################################
|
###################################################################################################
|
||||||
# Proportional families
|
# Proportional families
|
||||||
[buildPlans.iosevka-aile]
|
[buildPlans.iosevka-aile]
|
||||||
|
@ -347,6 +360,10 @@ iosevka-ss13 = "iosevka-ss13"
|
||||||
iosevka-fixed-ss13 = "iosevka-fixed-ss13"
|
iosevka-fixed-ss13 = "iosevka-fixed-ss13"
|
||||||
iosevka-term-ss13 = "iosevka-term-ss13"
|
iosevka-term-ss13 = "iosevka-term-ss13"
|
||||||
|
|
||||||
|
iosevka-ss14 = "iosevka-ss14"
|
||||||
|
iosevka-fixed-ss14 = "iosevka-fixed-ss14"
|
||||||
|
iosevka-term-ss14 = "iosevka-term-ss14"
|
||||||
|
|
||||||
# Experimental variants
|
# Experimental variants
|
||||||
iosevka-aile = "iosevka-aile"
|
iosevka-aile = "iosevka-aile"
|
||||||
iosevka-etoile = "iosevka-etoile"
|
iosevka-etoile = "iosevka-etoile"
|
||||||
|
|
|
@ -9,3 +9,6 @@
|
||||||
* Fix broken shape of heavy curly V, etc.
|
* Fix broken shape of heavy curly V, etc.
|
||||||
* Improve double-line arrow ligations.
|
* Improve double-line arrow ligations.
|
||||||
* Add diamond-shaped `<>` ligation, and enabled that for Haskell.
|
* Add diamond-shaped `<>` ligation, and enabled that for Haskell.
|
||||||
|
* Added bar-less `u` variants, and JetBrains Mono:
|
||||||
|
* Assigned `cv90` to this variant.
|
||||||
|
* Assigned `ss14` to the stylistic set.
|
|
@ -3332,7 +3332,7 @@ glyph-block LetterUnified-Basic : begin
|
||||||
include : LeftwardTopSerif (RIGHTSB - STROKE * HVCONTRAST) XH SIDEJUT
|
include : LeftwardTopSerif (RIGHTSB - STROKE * HVCONTRAST) XH SIDEJUT
|
||||||
include : LeftwardTopSerif SB XH SIDEJUT
|
include : LeftwardTopSerif SB XH SIDEJUT
|
||||||
|
|
||||||
save 'u' 'u'
|
save 'u.withBar'
|
||||||
# upsilon
|
# upsilon
|
||||||
sketch # upsilon
|
sketch # upsilon
|
||||||
include MarkSet.e
|
include MarkSet.e
|
||||||
|
@ -3347,6 +3347,10 @@ glyph-block LetterUnified-Basic : begin
|
||||||
curl (RIGHTSB - OX + O) XH [heading UPWARD]
|
curl (RIGHTSB - OX + O) XH [heading UPWARD]
|
||||||
|
|
||||||
save 'upsilon' 0x3C5
|
save 'upsilon' 0x3C5
|
||||||
|
save 'u.withoutBar'
|
||||||
|
|
||||||
|
select-variant 'u' 'u'
|
||||||
|
|
||||||
define [LatinUpsilon2Shape top sma smb] : glyph-construction
|
define [LatinUpsilon2Shape top sma smb] : glyph-construction
|
||||||
include : dispiro
|
include : dispiro
|
||||||
widths.lhs
|
widths.lhs
|
||||||
|
|
Before Width: | Height: | Size: 163 KiB After Width: | Height: | Size: 167 KiB |
Before Width: | Height: | Size: 396 KiB After Width: | Height: | Size: 396 KiB |
Before Width: | Height: | Size: 339 KiB After Width: | Height: | Size: 339 KiB |
Before Width: | Height: | Size: 174 KiB After Width: | Height: | Size: 174 KiB |
Before Width: | Height: | Size: 336 KiB After Width: | Height: | Size: 336 KiB |
Before Width: | Height: | Size: 900 KiB After Width: | Height: | Size: 960 KiB |
Before Width: | Height: | Size: 319 KiB After Width: | Height: | Size: 319 KiB |
|
@ -301,6 +301,18 @@
|
||||||
<span class="sample italic" style="font-feature-settings:'cv41'">t</span>
|
<span class="sample italic" style="font-feature-settings:'cv41'">t</span>
|
||||||
</li>
|
</li>
|
||||||
</ol></li>
|
</ol></li>
|
||||||
|
<li><ol class="group">
|
||||||
|
<li>
|
||||||
|
<span class="tag">cv89</span>
|
||||||
|
<span class="sample" style="font-feature-settings:'cv89'">u</span>
|
||||||
|
<span class="sample italic" style="font-feature-settings:'cv89'">u</span>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<span class="tag">cv90</span>
|
||||||
|
<span class="sample" style="font-feature-settings:'cv90'">u</span>
|
||||||
|
<span class="sample italic" style="font-feature-settings:'cv90'">u</span>
|
||||||
|
</li>
|
||||||
|
</ol></li>
|
||||||
<li><ol class="group">
|
<li><ol class="group">
|
||||||
<li>
|
<li>
|
||||||
<span class="tag">cv71</span>
|
<span class="tag">cv71</span>
|
||||||
|
@ -354,18 +366,6 @@
|
||||||
<span class="sample italic" style="font-feature-settings:'cv79'">y</span>
|
<span class="sample italic" style="font-feature-settings:'cv79'">y</span>
|
||||||
</li>
|
</li>
|
||||||
</ol></li>
|
</ol></li>
|
||||||
<li><ol class="group">
|
|
||||||
<li>
|
|
||||||
<span class="tag">cv34</span>
|
|
||||||
<span class="sample" style="font-feature-settings:'cv34'">ß</span>
|
|
||||||
<span class="sample italic" style="font-feature-settings:'cv34'">ß</span>
|
|
||||||
</li>
|
|
||||||
<li>
|
|
||||||
<span class="tag">cv35</span>
|
|
||||||
<span class="sample" style="font-feature-settings:'cv35'">ß</span>
|
|
||||||
<span class="sample italic" style="font-feature-settings:'cv35'">ß</span>
|
|
||||||
</li>
|
|
||||||
</ol></li>
|
|
||||||
<li><ol class="group">
|
<li><ol class="group">
|
||||||
<li>
|
<li>
|
||||||
<span class="tag">cv13</span>
|
<span class="tag">cv13</span>
|
||||||
|
@ -576,6 +576,18 @@
|
||||||
<span class="sample" style="font-feature-settings:'cv67'">>=</span>
|
<span class="sample" style="font-feature-settings:'cv67'">>=</span>
|
||||||
</li>
|
</li>
|
||||||
</ol></li>
|
</ol></li>
|
||||||
|
<li><ol class="group">
|
||||||
|
<li>
|
||||||
|
<span class="tag">cv34</span>
|
||||||
|
<span class="sample" style="font-feature-settings:'cv34'">ß</span>
|
||||||
|
<span class="sample italic" style="font-feature-settings:'cv34'">ß</span>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<span class="tag">cv35</span>
|
||||||
|
<span class="sample" style="font-feature-settings:'cv35'">ß</span>
|
||||||
|
<span class="sample italic" style="font-feature-settings:'cv35'">ß</span>
|
||||||
|
</li>
|
||||||
|
</ol></li>
|
||||||
</ol>
|
</ol>
|
||||||
</section>
|
</section>
|
||||||
<section id="stylesets" class="opentype">
|
<section id="stylesets" class="opentype">
|
||||||
|
@ -651,6 +663,11 @@
|
||||||
<span class="sample" style="font-feature-settings:'ss13'">@rea<b>l</b> fox.qu<b>i</b>ck(h){ *<b>i</b>s<b>_</b>brown && <b>i</b>t<b>_</b>jumps<b>_</b>over(dogs.<b>l</b>azy) } <b>0</b><b>1</b>23456789 ABCKRWXYZ</span>
|
<span class="sample" style="font-feature-settings:'ss13'">@rea<b>l</b> fox.qu<b>i</b>ck(h){ *<b>i</b>s<b>_</b>brown && <b>i</b>t<b>_</b>jumps<b>_</b>over(dogs.<b>l</b>azy) } <b>0</b><b>1</b>23456789 ABCKRWXYZ</span>
|
||||||
<span class="sample italic" style="font-feature-settings:'ss13'">@rea<b>l</b> fox.qu<b>i</b>ck(h){ *<b>i</b>s<b>_</b>brown && <b>i</b>t<b>_</b>jumps<b>_</b>over(dogs.<b>l</b>azy) } <b>0</b><b>1</b>23456789 ABCKRWXYZ</span>
|
<span class="sample italic" style="font-feature-settings:'ss13'">@rea<b>l</b> fox.qu<b>i</b>ck(h){ *<b>i</b>s<b>_</b>brown && <b>i</b>t<b>_</b>jumps<b>_</b>over(dogs.<b>l</b>azy) } <b>0</b><b>1</b>23456789 ABCKRWXYZ</span>
|
||||||
</li>
|
</li>
|
||||||
|
<li>
|
||||||
|
<span class="tag">ss14</span><span class="description">Jetbrains Mono Style</span>
|
||||||
|
<span class="sample" style="font-feature-settings:'ss14'">@rea<b>l</b> fox.q<b>u</b><b>i</b>ck(h){ <b>*</b><b>i</b>s_brown && <b>i</b>t_j<b>u</b>mps_over(dogs.<b>l</b>azy) } <b>0</b>12<b>3</b>456789 ABCKRWXYZ</span>
|
||||||
|
<span class="sample italic" style="font-feature-settings:'ss14'">@rea<b>l</b> fox.q<b>u</b><b>i</b>ck(h){ <b>*</b><b>i</b>s_brown && <b>i</b>t_j<b>u</b>mps_over(dogs.<b>l</b>azy) } <b>0</b>12<b>3</b>456789 ABCKRWXYZ</span>
|
||||||
|
</li>
|
||||||
<li>
|
<li>
|
||||||
<span class="tag">ss20</span><span class="description">Curly Style</span>
|
<span class="tag">ss20</span><span class="description">Curly Style</span>
|
||||||
<span class="sample" style="font-feature-settings:'ss20'">@real fo<b>x</b>.quic<b>k</b>(h){ *is_bro<b>w</b>n && it_jumps_o<b>v</b>er(dogs.laz<b>y</b>) } 0123456789 <b>A</b>BC<b>K</b><b>R</b><b>W</b><b>X</b><b>Y</b>Z</span>
|
<span class="sample" style="font-feature-settings:'ss20'">@real fo<b>x</b>.quic<b>k</b>(h){ *is_bro<b>w</b>n && it_jumps_o<b>v</b>er(dogs.laz<b>y</b>) } 0123456789 <b>A</b>BC<b>K</b><b>R</b><b>W</b><b>X</b><b>Y</b>Z</span>
|
||||||
|
|
|
@ -90,6 +90,8 @@ const PackageShapes = {
|
||||||
ss10: ["Envy Code R Style", "SS10"],
|
ss10: ["Envy Code R Style", "SS10"],
|
||||||
ss11: ["X Windows Fixed Style", "SS11"],
|
ss11: ["X Windows Fixed Style", "SS11"],
|
||||||
ss12: ["Ubuntu Mono Style", "SS12"],
|
ss12: ["Ubuntu Mono Style", "SS12"],
|
||||||
|
ss13: ["Lucida Style", "SS13"],
|
||||||
|
ss14: ["JetBrains Mono Style", "SS14"],
|
||||||
aile: ["Quasi-proportional", "Aile", false, false, true],
|
aile: ["Quasi-proportional", "Aile", false, false, true],
|
||||||
etoile: ["Quasi-proportional slab-serif", "Etoile", false, false, true],
|
etoile: ["Quasi-proportional slab-serif", "Etoile", false, false, true],
|
||||||
sparkle: ["Quasi-proportional family — like iA Writer’s Duo.", "Sparkle", false, false, true]
|
sparkle: ["Quasi-proportional family — like iA Writer’s Duo.", "Sparkle", false, false, true]
|
||||||
|
|
|
@ -49,7 +49,7 @@ function getCvData(variants) {
|
||||||
|
|
||||||
function rankOf(initialChar) {
|
function rankOf(initialChar) {
|
||||||
if ("A" <= initialChar && initialChar <= "Z") return 3;
|
if ("A" <= initialChar && initialChar <= "Z") return 3;
|
||||||
if (("a" <= initialChar && initialChar <= "z") || initialChar === "ß") return 2;
|
if ("a" <= initialChar && initialChar <= "z") return 2;
|
||||||
if ("0" <= initialChar && initialChar <= "9") return 1;
|
if ("0" <= initialChar && initialChar <= "9") return 1;
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
|
@ -253,6 +253,18 @@ sampler = 't'
|
||||||
description = 'Futura-like `t` shape'
|
description = 'Futura-like `t` shape'
|
||||||
t = 'cross'
|
t = 'cross'
|
||||||
|
|
||||||
|
[simple.v-u-with-bar]
|
||||||
|
tag = "cv89"
|
||||||
|
sampler = "u"
|
||||||
|
description = "Normal `u` with right bar"
|
||||||
|
u = "withBar"
|
||||||
|
|
||||||
|
[simple.v-u-without-bar]
|
||||||
|
tag = "cv90"
|
||||||
|
sampler = "u"
|
||||||
|
description = "Normal `u` without right bar, like a smaller uppercase `U`"
|
||||||
|
u = "withoutBar"
|
||||||
|
|
||||||
[simple.v-v-straight]
|
[simple.v-v-straight]
|
||||||
tag = "cv71"
|
tag = "cv71"
|
||||||
sampler = 'v'
|
sampler = 'v'
|
||||||
|
@ -316,18 +328,6 @@ description = 'Cursive-like `y`'
|
||||||
y = "cursive"
|
y = "cursive"
|
||||||
yhooktop = "straight"
|
yhooktop = "straight"
|
||||||
|
|
||||||
[simple.v-eszet-traditional]
|
|
||||||
tag = 'cv34'
|
|
||||||
sampler = 'ß'
|
|
||||||
description = 'Traditional, Fraktur-like Eszet'
|
|
||||||
eszet = 'traditional'
|
|
||||||
|
|
||||||
[simple.v-eszet-sulzbacher]
|
|
||||||
tag = 'cv35'
|
|
||||||
sampler = 'ß'
|
|
||||||
description = 'A more modern, beta-like Eszet'
|
|
||||||
eszet = 'sulzbacher'
|
|
||||||
|
|
||||||
[simple.v-zero-slashed]
|
[simple.v-zero-slashed]
|
||||||
tag = 'cv13'
|
tag = 'cv13'
|
||||||
sampler = '0'
|
sampler = '0'
|
||||||
|
@ -554,6 +554,18 @@ description = 'The lower bar of `<=` and `>=` ligation is slanted'
|
||||||
"eq.at-lteq.lig2" = "slanted"
|
"eq.at-lteq.lig2" = "slanted"
|
||||||
"eq.at-gteq.lig2" = "slanted"
|
"eq.at-gteq.lig2" = "slanted"
|
||||||
|
|
||||||
|
[simple.v-eszet-traditional]
|
||||||
|
tag = 'cv34'
|
||||||
|
sampler = 'ß'
|
||||||
|
description = 'Traditional, Fraktur-like Eszet'
|
||||||
|
eszet = 'traditional'
|
||||||
|
|
||||||
|
[simple.v-eszet-sulzbacher]
|
||||||
|
tag = 'cv35'
|
||||||
|
sampler = 'ß'
|
||||||
|
description = 'A more modern, beta-like Eszet'
|
||||||
|
eszet = 'sulzbacher'
|
||||||
|
|
||||||
########## "Untagged" variants, used for Aile, etc.
|
########## "Untagged" variants, used for Aile, etc.
|
||||||
|
|
||||||
[simple.v-capital-i-straight]
|
[simple.v-capital-i-straight]
|
||||||
|
@ -614,7 +626,8 @@ design = [
|
||||||
'v-w-straight',
|
'v-w-straight',
|
||||||
'v-x-straight',
|
'v-x-straight',
|
||||||
'v-capital-y-straight',
|
'v-capital-y-straight',
|
||||||
'v-capital-r-straight'
|
'v-capital-r-straight',
|
||||||
|
'v-u-with-bar'
|
||||||
]
|
]
|
||||||
upright = [
|
upright = [
|
||||||
'v-a-doublestorey',
|
'v-a-doublestorey',
|
||||||
|
@ -699,6 +712,10 @@ design = ['v-at-threefold', 'v-a-doublestorey', 'v-f-straight', 'v-underscore-lo
|
||||||
description = 'Lucida Style'
|
description = 'Lucida Style'
|
||||||
design = ['v-i-hooky', 'v-l-hooky', 'v-zero-dotted', 'v-underscore-low', 'v-caret-low', 'v-numbersign-slanted', 'v-one-base']
|
design = ['v-i-hooky', 'v-l-hooky', 'v-zero-dotted', 'v-underscore-low', 'v-caret-low', 'v-numbersign-slanted', 'v-one-base']
|
||||||
|
|
||||||
|
[composite.ss14]
|
||||||
|
description = 'JetBrains Mono Style'
|
||||||
|
design = ['v-i-serifed', 'v-l-italic', 'v-u-without-bar', 'v-zero-dotted', 'v-three-flattop', 'v-capital-q-straight', 'v-asterisk-low']
|
||||||
|
|
||||||
[composite.ss20]
|
[composite.ss20]
|
||||||
description = 'Curly Style'
|
description = 'Curly Style'
|
||||||
design = ['v-v-curly', 'v-turn-v-curly', 'v-w-curly', 'v-x-curly', 'v-capital-y-curly', 'v-capital-r-curly']
|
design = ['v-v-curly', 'v-turn-v-curly', 'v-w-curly', 'v-x-curly', 'v-capital-y-curly', 'v-capital-r-curly']
|
||||||
|
|