diff --git a/README.md b/README.md index 0d85cd79c..ac908e1fe 100644 --- a/README.md +++ b/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”. * `ss12`: Set character variant to “Ubuntu Mono Style”. * `ss13`: Set character variant to “Lucida Style”. + * `ss14`: Set character variant to “Jetbrains Mono Style”. * `ss20`: Set character variant to “Curly Style”. @@ -280,6 +281,9 @@ The current available styles for `design`/`upright`/`italic`/`oblique` options a * Styles for `t`: * `v-t-standard`, `cv40`: Standard `t` shape (default). * `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`: * `v-v-straight`, `cv71`: Standard, straight `V` and `v` (default). * `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-cursive`, `cv49`: Cursive-like `y` (default for Italic). * `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`: * `v-zero-slashed`, `cv13`: Slashed Zero `0` (default). * `v-zero-dotted`, `cv14`: Dotted Zero `0`. @@ -347,6 +348,9 @@ The current available styles for `design`/`upright`/`italic`/`oblique` options a * Styles for `<=`, `>=`: * `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. + * Styles for `ß`: + * `v-eszet-traditional`, `cv34`: Traditional, Fraktur-like Eszet. + * `v-eszet-sulzbacher`, `cv35`: A more modern, beta-like Eszet (default). diff --git a/build-plans.toml b/build-plans.toml index bc362fb74..1a1122ed6 100644 --- a/build-plans.toml +++ b/build-plans.toml @@ -221,6 +221,19 @@ design = ["sp-fixed", "ss13"] family = "Iosevka 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 [buildPlans.iosevka-aile] @@ -347,6 +360,10 @@ iosevka-ss13 = "iosevka-ss13" iosevka-fixed-ss13 = "iosevka-fixed-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 iosevka-aile = "iosevka-aile" iosevka-etoile = "iosevka-etoile" diff --git a/changes/3.0.0-rc.1.md b/changes/3.0.0-rc.1.md index ca8a69db5..8e9c035f4 100644 --- a/changes/3.0.0-rc.1.md +++ b/changes/3.0.0-rc.1.md @@ -9,3 +9,6 @@ * Fix broken shape of heavy curly V, etc. * Improve double-line arrow ligations. * 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. \ No newline at end of file diff --git a/glyphs/letters-unified-basic.ptl b/glyphs/letters-unified-basic.ptl index 29b5ddf61..02635d990 100644 --- a/glyphs/letters-unified-basic.ptl +++ b/glyphs/letters-unified-basic.ptl @@ -3332,7 +3332,7 @@ glyph-block LetterUnified-Basic : begin include : LeftwardTopSerif (RIGHTSB - STROKE * HVCONTRAST) XH SIDEJUT include : LeftwardTopSerif SB XH SIDEJUT - save 'u' 'u' + save 'u.withBar' # upsilon sketch # upsilon include MarkSet.e @@ -3347,6 +3347,10 @@ glyph-block LetterUnified-Basic : begin curl (RIGHTSB - OX + O) XH [heading UPWARD] save 'upsilon' 0x3C5 + save 'u.withoutBar' + + select-variant 'u' 'u' + define [LatinUpsilon2Shape top sma smb] : glyph-construction include : dispiro widths.lhs diff --git a/images/charvars.png b/images/charvars.png index f26e36cd4..1e11459f5 100644 Binary files a/images/charvars.png and b/images/charvars.png differ diff --git a/images/languages.png b/images/languages.png index fa3f7ab66..01524d326 100644 Binary files a/images/languages.png and b/images/languages.png differ diff --git a/images/ligations.png b/images/ligations.png index 924842bf8..f60bf47ba 100644 Binary files a/images/ligations.png and b/images/ligations.png differ diff --git a/images/matrix.png b/images/matrix.png index 5416ce96b..17296d3ed 100644 Binary files a/images/matrix.png and b/images/matrix.png differ diff --git a/images/preview-all.png b/images/preview-all.png index 61608768b..36a69e402 100644 Binary files a/images/preview-all.png and b/images/preview-all.png differ diff --git a/images/stylesets.png b/images/stylesets.png index 90b56d6d3..752553e93 100644 Binary files a/images/stylesets.png and b/images/stylesets.png differ diff --git a/images/weights.png b/images/weights.png index 3696b30ca..2e5ae8769 100644 Binary files a/images/weights.png and b/images/weights.png differ diff --git a/snapshot/index.html b/snapshot/index.html index b5e08e56b..9488d8221 100644 --- a/snapshot/index.html +++ b/snapshot/index.html @@ -301,6 +301,18 @@ t +
    1. +
    2. + cv89 + u + u +
    3. +
    4. + cv90 + u + u +
    5. +
    1. cv71 @@ -354,18 +366,6 @@ y
  • -
    1. -
    2. - cv34 - ß - ß -
    3. -
    4. - cv35 - ß - ß -
    5. -
    1. cv13 @@ -576,6 +576,18 @@ >=
  • +
    1. +
    2. + cv34 + ß + ß +
    3. +
    4. + cv35 + ß + ß +
    5. +
  • @@ -651,6 +663,11 @@ @real fox.quick(h){ *is_brown && it_jumps_over(dogs.lazy) } 0123456789 ABCKRWXYZ @real fox.quick(h){ *is_brown && it_jumps_over(dogs.lazy) } 0123456789 ABCKRWXYZ +
  • + ss14Jetbrains Mono Style + @real fox.quick(h){ *is_brown && it_jumps_over(dogs.lazy) } 0123456789 ABCKRWXYZ + @real fox.quick(h){ *is_brown && it_jumps_over(dogs.lazy) } 0123456789 ABCKRWXYZ +
  • ss20Curly Style @real fox.quick(h){ *is_brown && it_jumps_over(dogs.lazy) } 0123456789 ABCKRWXYZ diff --git a/utility/generate-release-note/index.js b/utility/generate-release-note/index.js index fcd1601ad..a65a92cfa 100644 --- a/utility/generate-release-note/index.js +++ b/utility/generate-release-note/index.js @@ -90,6 +90,8 @@ const PackageShapes = { ss10: ["Envy Code R Style", "SS10"], ss11: ["X Windows Fixed Style", "SS11"], ss12: ["Ubuntu Mono Style", "SS12"], + ss13: ["Lucida Style", "SS13"], + ss14: ["JetBrains Mono Style", "SS14"], aile: ["Quasi-proportional", "Aile", 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] diff --git a/utility/generate-snapshot-page/parse-variants-data.js b/utility/generate-snapshot-page/parse-variants-data.js index 906ad512f..aefcd34ce 100644 --- a/utility/generate-snapshot-page/parse-variants-data.js +++ b/utility/generate-snapshot-page/parse-variants-data.js @@ -49,7 +49,7 @@ function getCvData(variants) { function rankOf(initialChar) { 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; return 0; } diff --git a/variants.toml b/variants.toml index 0e3138c9e..342744fd6 100644 --- a/variants.toml +++ b/variants.toml @@ -253,6 +253,18 @@ sampler = 't' description = 'Futura-like `t` shape' 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] tag = "cv71" sampler = 'v' @@ -316,18 +328,6 @@ description = 'Cursive-like `y`' y = "cursive" 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] tag = 'cv13' sampler = '0' @@ -554,6 +554,18 @@ description = 'The lower bar of `<=` and `>=` ligation is slanted' "eq.at-lteq.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. [simple.v-capital-i-straight] @@ -614,7 +626,8 @@ design = [ 'v-w-straight', 'v-x-straight', 'v-capital-y-straight', - 'v-capital-r-straight' + 'v-capital-r-straight', + 'v-u-with-bar' ] upright = [ 'v-a-doublestorey', @@ -699,6 +712,10 @@ design = ['v-at-threefold', 'v-a-doublestorey', 'v-f-straight', 'v-underscore-lo 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'] +[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] 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']