From a096544d2fc890e55fbe064eb39bce5081c69b19 Mon Sep 17 00:00:00 2001 From: be5invis Date: Sat, 25 Mar 2023 19:00:00 -0700 Subject: [PATCH] Reorder CV variants --- params/variants.toml | 3006 +++++++++++++------------- utility/transpose-variant-tensor.mjs | 102 + 2 files changed, 1606 insertions(+), 1502 deletions(-) create mode 100644 utility/transpose-variant-tensor.mjs diff --git a/params/variants.toml b/params/variants.toml index 911998870..3e9ebf474 100644 --- a/params/variants.toml +++ b/params/variants.toml @@ -6,57 +6,57 @@ tag = "cv01" [prime.capital-a.variants.straight-serifless] rank = 1 description = "Standard, straight `A`, without serifs" -selector.A = "straightSerifless" -selector."A/sansSerif" = "straightSerifless" +selector.A = "straightSerifless" +selector."A/sansSerif" = "straightSerifless" +selector.AE = "straight" + +[prime.capital-a.variants.straight-top-serifed] +rank = 2 +description = "Straight `A` with serif at top" +selector.A = "straightTopSerifed" +selector."A/sansSerif" = "straightSerifless" +selector.AE = "straight" + +[prime.capital-a.variants.straight-base-serifed] +rank = 3 +description = "Straight `A` with serif at both top and bottom" +selector.A = "straightBaseSerifed" +selector."A/sansSerif" = "straightSerifless" +selector.AE = "straight" + +[prime.capital-a.variants.straight-tri-serifed] +rank = 4 +description = "Straight `A` with serif at both top and bottom" +selector.A = "straightTriSerifed" +selector."A/sansSerif" = "straightSerifless" selector.AE = "straight" [prime.capital-a.variants.curly-serifless] -rank = 2 +rank = 5 description = "Slightly curly `A`, like Iosevka 2.x, without serifs" -selector.A = "curlySerifless" -selector."A/sansSerif" = "curlySerifless" +selector.A = "curlySerifless" +selector."A/sansSerif" = "curlySerifless" selector.AE = "curly" -[prime.capital-a.variants.straight-top-serifed] -rank = 3 -description = "Straight `A` with serif at top" -selector.A = "straightTopSerifed" -selector."A/sansSerif" = "straightSerifless" -selector.AE = "straight" - [prime.capital-a.variants.curly-top-serifed] -rank = 4 +rank = 6 description = "Slightly curly `A`, like Iosevka 2.x, with serif at top" -selector.A = "curlyTopSerifed" -selector."A/sansSerif" = "curlySerifless" +selector.A = "curlyTopSerifed" +selector."A/sansSerif" = "curlySerifless" selector.AE = "curly" -[prime.capital-a.variants.straight-base-serifed] -rank = 5 -description = "Straight `A` with serif at both top and bottom" -selector.A = "straightBaseSerifed" -selector."A/sansSerif" = "straightSerifless" -selector.AE = "straight" - [prime.capital-a.variants.curly-base-serifed] -rank = 6 -description = "Slightly curly `A`, like Iosevka 2.x, with serif at both top and bottom" -selector.A = "curlyBaseSerifed" -selector."A/sansSerif" = "curlySerifless" -selector.AE = "curly" - -[prime.capital-a.variants.straight-tri-serifed] rank = 7 -description = "Straight `A` with serif at both top and bottom" -selector.A = "straightTriSerifed" -selector."A/sansSerif" = "straightSerifless" -selector.AE = "straight" +description = "Slightly curly `A`, like Iosevka 2.x, with serif at both top and bottom" +selector.A = "curlyBaseSerifed" +selector."A/sansSerif" = "curlySerifless" +selector.AE = "curly" [prime.capital-a.variants.curly-tri-serifed] rank = 8 description = "Slightly curly `A`, like Iosevka 2.x, with serif at both top and bottom" -selector.A = "curlyTriSerifed" -selector."A/sansSerif" = "curlySerifless" +selector.A = "curlyTriSerifed" +selector."A/sansSerif" = "curlySerifless" selector.AE = "curly" @@ -72,34 +72,34 @@ selector.B = "standardSerifless" selector."B/sansSerif" = "standardSerifless" selector.smcpB = "standardSerifless" -[prime.capital-b.variants.more-asymmetric-serifless] -rank = 2 -description = "`B` in more asymmetric proportion to differentiate with `8`, without serifs" -selector.B = "moreAsymmetricSerifless" -selector."B/sansSerif" = "moreAsymmetricSerifless" -selector.smcpB = "standardSerifless" - [prime.capital-b.variants.standard-unilateral-serifed] -rank = 3 +rank = 2 description = "`B` in near-symmetric proportion with motion serifs at top" selector.B = "standardUnilateralSerifed" selector."B/sansSerif" = "standardSerifless" selector.smcpB = "standardUnilateralSerifed" -[prime.capital-b.variants.more-asymmetric-unilateral-serifed] -rank = 4 -description = "`B` in more asymmetric proportion with motion serifs at top" -selector.B = "moreAsymmetricUnilateralSerifed" -selector."B/sansSerif" = "moreAsymmetricSerifless" -selector.smcpB = "standardUnilateralSerifed" - [prime.capital-b.variants.standard-bilateral-serifed] -rank = 5 +rank = 3 description = "`B` in near-symmetric proportion with motion serifs at both top and bottom" selector.B = "standardBilateralSerifed" selector."B/sansSerif" = "standardSerifless" selector.smcpB = "standardBilateralSerifed" +[prime.capital-b.variants.more-asymmetric-serifless] +rank = 4 +description = "`B` in more asymmetric proportion to differentiate with `8`, without serifs" +selector.B = "moreAsymmetricSerifless" +selector."B/sansSerif" = "moreAsymmetricSerifless" +selector.smcpB = "standardSerifless" + +[prime.capital-b.variants.more-asymmetric-unilateral-serifed] +rank = 5 +description = "`B` in more asymmetric proportion with motion serifs at top" +selector.B = "moreAsymmetricUnilateralSerifed" +selector."B/sansSerif" = "moreAsymmetricSerifless" +selector.smcpB = "standardUnilateralSerifed" + [prime.capital-b.variants.more-asymmetric-bilateral-serifed] rank = 6 description = "`B` in more asymmetric proportion with motion serifs at both top and bottom" @@ -114,34 +114,34 @@ selector.B = "standardInterruptedSerifless" selector."B/sansSerif" = "standardInterruptedSerifless" selector.smcpB = "standardInterruptedSerifless" -[prime.capital-b.variants.more-asymmetric-interrupted-serifless] -rank = 8 -description = "`B` in more asymmetric proportion to differentiate with `8`, with interrupted middle bar, without serifs" -selector.B = "moreAsymmetricInterruptedSerifless" -selector."B/sansSerif" = "moreAsymmetricInterruptedSerifless" -selector.smcpB = "standardInterruptedSerifless" - [prime.capital-b.variants.standard-interrupted-unilateral-serifed] -rank = 9 +rank = 8 description = "`B` in near-symmetric proportion with interrupted middle bar and motion serifs at top" selector.B = "standardInterruptedUnilateralSerifed" selector."B/sansSerif" = "standardInterruptedSerifless" selector.smcpB = "standardInterruptedUnilateralSerifed" -[prime.capital-b.variants.more-asymmetric-interrupted-unilateral-serifed] -rank = 10 -description = "`B` in more asymmetric proportion with interrupted middle bar and `8` with motion serifs at top" -selector.B = "moreAsymmetricInterruptedUnilateralSerifed" -selector."B/sansSerif" = "moreAsymmetricInterruptedSerifless" -selector.smcpB = "standardInterruptedUnilateralSerifed" - [prime.capital-b.variants.standard-interrupted-bilateral-serifed] -rank = 11 +rank = 9 description = "`B` in near-symmetric proportion with interrupted middle bar and motion serifs at both top and bottom" selector.B = "standardInterruptedBilateralSerifed" selector."B/sansSerif" = "standardInterruptedSerifless" selector.smcpB = "standardInterruptedBilateralSerifed" +[prime.capital-b.variants.more-asymmetric-interrupted-serifless] +rank = 10 +description = "`B` in more asymmetric proportion to differentiate with `8`, with interrupted middle bar, without serifs" +selector.B = "moreAsymmetricInterruptedSerifless" +selector."B/sansSerif" = "moreAsymmetricInterruptedSerifless" +selector.smcpB = "standardInterruptedSerifless" + +[prime.capital-b.variants.more-asymmetric-interrupted-unilateral-serifed] +rank = 11 +description = "`B` in more asymmetric proportion with interrupted middle bar and `8` with motion serifs at top" +selector.B = "moreAsymmetricInterruptedUnilateralSerifed" +selector."B/sansSerif" = "moreAsymmetricInterruptedSerifless" +selector.smcpB = "standardInterruptedUnilateralSerifed" + [prime.capital-b.variants.more-asymmetric-interrupted-bilateral-serifed] rank = 12 description = "`B` in more asymmetric proportion with interrupted middle bar and `8` with motion serifs at both top and bottom" @@ -216,30 +216,30 @@ description = "Standard `D` without serifs" selector.D = "standardSerifless" selector."D/sansSerif" = "standardSerifless" -[prime.capital-d.variants.more-rounded-serifless] -rank = 2 -description = "More rounded `D` to differentiate with `O`, without serifs" -selector.D = "moreRoundedSerifless" -selector."D/sansSerif" = "moreRoundedSerifless" - [prime.capital-d.variants.standard-unilateral-serifed] -rank = 3 +rank = 2 description = "Standard `D` with serifs at top" selector.D = "standardUnilateralSerifed" selector."D/sansSerif" = "standardSerifless" -[prime.capital-d.variants.more-rounded-unilateral-serifed] -rank = 4 -description = "More rounded `D` to differentiate with `O` with motion serifs at top" -selector.D = "moreRoundedUnilateralSerifed" -selector."D/sansSerif" = "moreRoundedSerifless" - [prime.capital-d.variants.standard-bilateral-serifed] -rank = 5 +rank = 3 description = "Standard `D` with serifs at both top and bottom" selector.D = "standardBilateralSerifed" selector."D/sansSerif" = "standardSerifless" +[prime.capital-d.variants.more-rounded-serifless] +rank = 4 +description = "More rounded `D` to differentiate with `O`, without serifs" +selector.D = "moreRoundedSerifless" +selector."D/sansSerif" = "moreRoundedSerifless" + +[prime.capital-d.variants.more-rounded-unilateral-serifed] +rank = 5 +description = "More rounded `D` to differentiate with `O` with motion serifs at top" +selector.D = "moreRoundedUnilateralSerifed" +selector."D/sansSerif" = "moreRoundedSerifless" + [prime.capital-d.variants.more-rounded-bilateral-serifed] rank = 6 description = "More rounded `D` to differentiate with `O` with serifs at both top and bottom" @@ -310,90 +310,90 @@ selector.G = "toothedSeriflessHookless" selector."G/sansSerif" = "toothedSeriflessHookless" selector.GHookTop = "toothedSeriflessHookless" -[prime.capital-g.variants.toothless-corner-serifless-hookless] -rank = 2 -description = "Corner toothless G" -selector.G = "toothlessCornerSeriflessHookless" -selector."G/sansSerif" = "toothlessCornerSeriflessHookless" -selector.GHookTop = "toothlessCornerSeriflessHookless" - -[prime.capital-g.variants.toothless-rounded-serifless-hookless] -rank = 3 -description = "Round toothless G" -selector.G = "toothlessRoundedSeriflessHookless" -selector."G/sansSerif" = "toothlessRoundedSeriflessHookless" -selector.GHookTop = "toothlessRoundedSeriflessHookless" - [prime.capital-g.variants.toothed-serifless-hooked] -rank = 4 +rank = 2 description = "Toothed G with inward hook at terminal" selector.G = "toothedSeriflessHooked" selector."G/sansSerif" = "toothedSeriflessHooked" selector.GHookTop = "toothedSeriflessHooked" -[prime.capital-g.variants.toothless-corner-serifless-hooked] -rank = 5 -description = "Corner toothless G with inward hook at terminal" -selector.G = "toothlessCornerSeriflessHooked" -selector."G/sansSerif" = "toothlessCornerSeriflessHooked" -selector.GHookTop = "toothlessCornerSeriflessHooked" - -[prime.capital-g.variants.toothless-rounded-serifless-hooked] -rank = 6 -description = "Round toothless G with inward hook at terminal" -selector.G = "toothlessRoundedSeriflessHooked" -selector."G/sansSerif" = "toothlessRoundedSeriflessHooked" -selector.GHookTop = "toothlessRoundedSeriflessHooked" - [prime.capital-g.variants.toothed-serifless-capped] -rank = 7 +rank = 3 description = "Toothed G with a cap terminal" selector.G = "toothedSeriflessCapped" selector."G/sansSerif" = "toothedSeriflessCapped" selector.GHookTop = "toothedSeriflessCapped" -[prime.capital-g.variants.toothless-corner-serifless-capped] -rank = 8 -description = "Corner toothless G with a cap terminal" -selector.G = "toothlessCornerSeriflessCapped" -selector."G/sansSerif" = "toothlessCornerSeriflessCapped" -selector.GHookTop = "toothlessCornerSeriflessCapped" - -[prime.capital-g.variants.toothless-rounded-serifless-capped] -rank = 9 -description = "Round toothless G with a cap terminal" -selector.G = "toothlessRoundedSeriflessCapped" -selector."G/sansSerif" = "toothlessRoundedSeriflessCapped" -selector.GHookTop = "toothlessRoundedSeriflessCapped" - [prime.capital-g.variants.toothed-serifed-hookless] -rank = 10 +rank = 4 description = "Toothed G with top serif" selector.G = "toothedSerifedHookless" selector."G/sansSerif" = "toothedSeriflessHookless" selector.GHookTop = "toothedSeriflessHookless" -[prime.capital-g.variants.toothless-corner-serifed-hookless] -rank = 11 -description = "Corner toothless G with top serif" -selector.G = "toothlessCornerSerifedHookless" -selector."G/sansSerif" = "toothlessCornerSeriflessHookless" -selector.GHookTop = "toothlessCornerSeriflessHookless" - -[prime.capital-g.variants.toothless-rounded-serifed-hookless] -rank = 12 -description = "Round toothless G with top serif" -selector.G = "toothlessRoundedSerifedHookless" -selector."G/sansSerif" = "toothlessRoundedSeriflessHookless" -selector.GHookTop = "toothlessRoundedSeriflessHookless" - [prime.capital-g.variants.toothed-serifed-hooked] -rank = 13 +rank = 5 description = "Toothed G with inward hook at terminal and top serif" selector.G = "toothedSerifedHooked" selector."G/sansSerif" = "toothedSeriflessHooked" selector.GHookTop = "toothedSeriflessHooked" +[prime.capital-g.variants.toothed-serifed-capped] +rank = 6 +description = "Toothed G with a cap terminal and top serif" +selector.G = "toothedSerifedCapped" +selector."G/sansSerif" = "toothedSeriflessCapped" +selector.GHookTop = "toothedSeriflessCapped" + +[prime.capital-g.variants.toothed-inward-serifed-hookless] +rank = 7 +description = "Toothed G with inward top serif" +selector.G = "toothedInwardSerifedHookless" +selector."G/sansSerif" = "toothedSeriflessHookless" +selector.GHookTop = "toothedSeriflessHookless" + +[prime.capital-g.variants.toothed-inward-serifed-hooked] +rank = 8 +description = "Toothed G with inward hook at terminal and inward top serif" +selector.G = "toothedInwardSerifedHooked" +selector."G/sansSerif" = "toothedSeriflessHooked" +selector.GHookTop = "toothedSeriflessHooked" + +[prime.capital-g.variants.toothed-inward-serifed-capped] +rank = 9 +description = "Toothed G with a cap terminal and inward top serif" +selector.G = "toothedInwardSerifedCapped" +selector."G/sansSerif" = "toothedSeriflessCapped" +selector.GHookTop = "toothedSeriflessCapped" + +[prime.capital-g.variants.toothless-corner-serifless-hookless] +rank = 10 +description = "Corner toothless G" +selector.G = "toothlessCornerSeriflessHookless" +selector."G/sansSerif" = "toothlessCornerSeriflessHookless" +selector.GHookTop = "toothlessCornerSeriflessHookless" + +[prime.capital-g.variants.toothless-corner-serifless-hooked] +rank = 11 +description = "Corner toothless G with inward hook at terminal" +selector.G = "toothlessCornerSeriflessHooked" +selector."G/sansSerif" = "toothlessCornerSeriflessHooked" +selector.GHookTop = "toothlessCornerSeriflessHooked" + +[prime.capital-g.variants.toothless-corner-serifless-capped] +rank = 12 +description = "Corner toothless G with a cap terminal" +selector.G = "toothlessCornerSeriflessCapped" +selector."G/sansSerif" = "toothlessCornerSeriflessCapped" +selector.GHookTop = "toothlessCornerSeriflessCapped" + +[prime.capital-g.variants.toothless-corner-serifed-hookless] +rank = 13 +description = "Corner toothless G with top serif" +selector.G = "toothlessCornerSerifedHookless" +selector."G/sansSerif" = "toothlessCornerSeriflessHookless" +selector.GHookTop = "toothlessCornerSeriflessHookless" + [prime.capital-g.variants.toothless-corner-serifed-hooked] rank = 14 description = "Corner toothless G with inward hook at terminal and top serif" @@ -401,90 +401,90 @@ selector.G = "toothlessCornerSerifedHooked" selector."G/sansSerif" = "toothlessCornerSeriflessHooked" selector.GHookTop = "toothlessCornerSeriflessHooked" -[prime.capital-g.variants.toothless-rounded-serifed-hooked] -rank = 15 -description = "Round toothless G with inward hook at terminal and top serif" -selector.G = "toothlessRoundedSerifedHooked" -selector."G/sansSerif" = "toothlessRoundedSeriflessHooked" -selector.GHookTop = "toothlessRoundedSeriflessHooked" - -[prime.capital-g.variants.toothed-serifed-capped] -rank = 16 -description = "Toothed G with a cap terminal and top serif" -selector.G = "toothedSerifedCapped" -selector."G/sansSerif" = "toothedSeriflessCapped" -selector.GHookTop = "toothedSeriflessCapped" - [prime.capital-g.variants.toothless-corner-serifed-capped] -rank = 17 +rank = 15 description = "Corner toothless G with a cap terminal and top serif" selector.G = "toothlessCornerSerifedCapped" selector."G/sansSerif" = "toothlessCornerSeriflessCapped" selector.GHookTop = "toothlessCornerSeriflessCapped" -[prime.capital-g.variants.toothless-rounded-serifed-capped] -rank = 18 -description = "Round toothless G with a cap terminal and top serif" -selector.G = "toothlessRoundedSerifedCapped" -selector."G/sansSerif" = "toothlessRoundedSeriflessCapped" -selector.GHookTop = "toothlessRoundedSeriflessCapped" - -[prime.capital-g.variants.toothed-inward-serifed-hookless] -rank = 19 -description = "Toothed G with inward top serif" -selector.G = "toothedInwardSerifedHookless" -selector."G/sansSerif" = "toothedSeriflessHookless" -selector.GHookTop = "toothedSeriflessHookless" - [prime.capital-g.variants.toothless-corner-inward-serifed-hookless] -rank = 20 +rank = 16 description = "Corner toothless G with inward top serif" selector.G = "toothlessCornerInwardSerifedHookless" selector."G/sansSerif" = "toothlessCornerSeriflessHookless" selector.GHookTop = "toothlessCornerSeriflessHookless" -[prime.capital-g.variants.toothless-rounded-inward-serifed-hookless] -rank = 21 -description = "Round toothless G with inward top serif" -selector.G = "toothlessRoundedInwardSerifedHookless" -selector."G/sansSerif" = "toothlessRoundedSeriflessHookless" -selector.GHookTop = "toothlessRoundedSeriflessHookless" - -[prime.capital-g.variants.toothed-inward-serifed-hooked] -rank = 22 -description = "Toothed G with inward hook at terminal and inward top serif" -selector.G = "toothedInwardSerifedHooked" -selector."G/sansSerif" = "toothedSeriflessHooked" -selector.GHookTop = "toothedSeriflessHooked" - [prime.capital-g.variants.toothless-corner-inward-serifed-hooked] -rank = 23 +rank = 17 description = "Corner toothless G with inward hook at terminal and inward top serif" selector.G = "toothlessCornerInwardSerifedHooked" selector."G/sansSerif" = "toothlessCornerSeriflessHooked" selector.GHookTop = "toothlessCornerSeriflessHooked" -[prime.capital-g.variants.toothless-rounded-inward-serifed-hooked] -rank = 24 -description = "Round toothless G with inward hook at terminal and inward top serif" -selector.G = "toothlessRoundedInwardSerifedHooked" -selector."G/sansSerif" = "toothlessRoundedSeriflessHooked" -selector.GHookTop = "toothlessRoundedSeriflessHooked" - -[prime.capital-g.variants.toothed-inward-serifed-capped] -rank = 25 -description = "Toothed G with a cap terminal and inward top serif" -selector.G = "toothedInwardSerifedCapped" -selector."G/sansSerif" = "toothedSeriflessCapped" -selector.GHookTop = "toothedSeriflessCapped" - [prime.capital-g.variants.toothless-corner-inward-serifed-capped] -rank = 26 +rank = 18 description = "Corner toothless G with a cap terminal and inward top serif" selector.G = "toothlessCornerInwardSerifedCapped" selector."G/sansSerif" = "toothlessCornerSeriflessCapped" selector.GHookTop = "toothlessCornerSeriflessCapped" +[prime.capital-g.variants.toothless-rounded-serifless-hookless] +rank = 19 +description = "Round toothless G" +selector.G = "toothlessRoundedSeriflessHookless" +selector."G/sansSerif" = "toothlessRoundedSeriflessHookless" +selector.GHookTop = "toothlessRoundedSeriflessHookless" + +[prime.capital-g.variants.toothless-rounded-serifless-hooked] +rank = 20 +description = "Round toothless G with inward hook at terminal" +selector.G = "toothlessRoundedSeriflessHooked" +selector."G/sansSerif" = "toothlessRoundedSeriflessHooked" +selector.GHookTop = "toothlessRoundedSeriflessHooked" + +[prime.capital-g.variants.toothless-rounded-serifless-capped] +rank = 21 +description = "Round toothless G with a cap terminal" +selector.G = "toothlessRoundedSeriflessCapped" +selector."G/sansSerif" = "toothlessRoundedSeriflessCapped" +selector.GHookTop = "toothlessRoundedSeriflessCapped" + +[prime.capital-g.variants.toothless-rounded-serifed-hookless] +rank = 22 +description = "Round toothless G with top serif" +selector.G = "toothlessRoundedSerifedHookless" +selector."G/sansSerif" = "toothlessRoundedSeriflessHookless" +selector.GHookTop = "toothlessRoundedSeriflessHookless" + +[prime.capital-g.variants.toothless-rounded-serifed-hooked] +rank = 23 +description = "Round toothless G with inward hook at terminal and top serif" +selector.G = "toothlessRoundedSerifedHooked" +selector."G/sansSerif" = "toothlessRoundedSeriflessHooked" +selector.GHookTop = "toothlessRoundedSeriflessHooked" + +[prime.capital-g.variants.toothless-rounded-serifed-capped] +rank = 24 +description = "Round toothless G with a cap terminal and top serif" +selector.G = "toothlessRoundedSerifedCapped" +selector."G/sansSerif" = "toothlessRoundedSeriflessCapped" +selector.GHookTop = "toothlessRoundedSeriflessCapped" + +[prime.capital-g.variants.toothless-rounded-inward-serifed-hookless] +rank = 25 +description = "Round toothless G with inward top serif" +selector.G = "toothlessRoundedInwardSerifedHookless" +selector."G/sansSerif" = "toothlessRoundedSeriflessHookless" +selector.GHookTop = "toothlessRoundedSeriflessHookless" + +[prime.capital-g.variants.toothless-rounded-inward-serifed-hooked] +rank = 26 +description = "Round toothless G with inward hook at terminal and inward top serif" +selector.G = "toothlessRoundedInwardSerifedHooked" +selector."G/sansSerif" = "toothlessRoundedSeriflessHooked" +selector.GHookTop = "toothlessRoundedSeriflessHooked" + [prime.capital-g.variants.toothless-rounded-inward-serifed-capped] rank = 27 description = "Round toothless G with a cap terminal and inward top serif" @@ -703,35 +703,8 @@ selector."grek/KaiSymbol" = "straightSerifless" selector."grek/kappa" = "straightSerifless" selector.KDescender = "straightSerifless" -[prime.capital-k.variants.curly-serifless] -rank = 2 -description = "Slightly curly `K`, like Iosevka 2.x, without serifs" -selector.K = "curlySerifless" -selector."K/sansSerif" = "curlySerifless" -selector."grek/KaiSymbol" = "curlySerifless" -selector."grek/kappa" = "curlySerifless" -selector.KDescender = "curlySerifless" - -[prime.capital-k.variants.symmetric-touching-serifless] -rank = 3 -description = "`K` with symmetric legs touching the vertical bar, without serifs" -selector.K = "symmetricTouchingSerifless" -selector."K/sansSerif" = "symmetricTouchingSerifless" -selector."grek/KaiSymbol" = "symmetricTouchingSerifless" -selector."grek/kappa" = "symmetricTouchingSerifless" -selector.KDescender = "symmetricTouchingSerifless" - -[prime.capital-k.variants.symmetric-connected-serifless] -rank = 4 -description = "`K` with symmetric legs connected to the vertical bar, without serifs" -selector.K = "symmetricConnectedSerifless" -selector."K/sansSerif" = "symmetricConnectedSerifless" -selector."grek/KaiSymbol" = "symmetricConnectedSerifless" -selector."grek/kappa" = "symmetricConnectedSerifless" -selector.KDescender = "symmetricConnectedSerifless" - [prime.capital-k.variants.straight-top-left-serifed] -rank = 5 +rank = 2 description = "`K` with standard shape and serifs at top left" selector.K = "straightTopLeftSerifed" selector."K/sansSerif" = "straightSerifless" @@ -739,35 +712,8 @@ selector."grek/KaiSymbol" = "straightTopLeftSerifed" selector."grek/kappa" = "straightSerifless" selector.KDescender = "straightTopLeftSerifed" -[prime.capital-k.variants.curly-top-left-serifed] -rank = 6 -description = "Slightly curly `K`, like Iosevka 2.x, with serifs at top left" -selector.K = "curlyTopLeftSerifed" -selector."K/sansSerif" = "curlySerifless" -selector."grek/KaiSymbol" = "curlyTopLeftSerifed" -selector."grek/kappa" = "curlySerifless" -selector.KDescender = "curlyTopLeftSerifed" - -[prime.capital-k.variants.symmetric-touching-top-left-serifed] -rank = 7 -description = "`K` with symmetric legs touching the vertical bar, and serifs at top left" -selector.K = "symmetricTouchingTopLeftSerifed" -selector."K/sansSerif" = "symmetricTouchingSerifless" -selector."grek/KaiSymbol" = "symmetricTouchingTopLeftSerifed" -selector."grek/kappa" = "symmetricTouchingSerifless" -selector.KDescender = "symmetricTouchingTopLeftSerifed" - -[prime.capital-k.variants.symmetric-connected-top-left-serifed] -rank = 8 -description = "`K` with symmetric legs connected to the vertical bar, and serifs at top left" -selector.K = "symmetricConnectedTopLeftSerifed" -selector."K/sansSerif" = "symmetricConnectedSerifless" -selector."grek/KaiSymbol" = "symmetricConnectedTopLeftSerifed" -selector."grek/kappa" = "symmetricConnectedSerifless" -selector.KDescender = "symmetricConnectedTopLeftSerifed" - [prime.capital-k.variants.straight-bottom-right-serifed] -rank = 9 +rank = 3 description = "`K` with standard shape and serifs at bottom right" selector.K = "straightBottomRightSerifed" selector."K/sansSerif" = "straightSerifless" @@ -775,35 +721,8 @@ selector."grek/KaiSymbol" = "straightBottomRightSerifed2" selector."grek/kappa" = "straightSerifless" selector.KDescender = "straightBottomRightSerifed" -[prime.capital-k.variants.curly-bottom-right-serifed] -rank = 10 -description = "Slightly curly `K`, like Iosevka 2.x, with serifs at bottom right" -selector.K = "curlyBottomRightSerifed" -selector."K/sansSerif" = "curlySerifless" -selector."grek/KaiSymbol" = "curlyBottomRightSerifed2" -selector."grek/kappa" = "curlySerifless" -selector.KDescender = "curlyBottomRightSerifed" - -[prime.capital-k.variants.symmetric-touching-bottom-right-serifed] -rank = 11 -description = "`K` with symmetric legs touching the vertical bar, and serifs at bottom right" -selector.K = "symmetricTouchingBottomRightSerifed" -selector."K/sansSerif" = "symmetricTouchingSerifless" -selector."grek/KaiSymbol" = "symmetricTouchingBottomRightSerifed2" -selector."grek/kappa" = "symmetricTouchingSerifless" -selector.KDescender = "symmetricTouchingBottomRightSerifed" - -[prime.capital-k.variants.symmetric-connected-bottom-right-serifed] -rank = 12 -description = "`K` with symmetric legs connected to the vertical bar, and serifs at bottom right" -selector.K = "symmetricConnectedBottomRightSerifed" -selector."K/sansSerif" = "symmetricConnectedSerifless" -selector."grek/KaiSymbol" = "symmetricConnectedBottomRightSerifed2" -selector."grek/kappa" = "symmetricConnectedSerifless" -selector.KDescender = "symmetricConnectedBottomRightSerifed" - [prime.capital-k.variants.straight-serifed] -rank = 13 +rank = 4 description = "`K` with standard shape, and serifs" selector.K = "straightSerifed" selector."K/sansSerif" = "straightSerifless" @@ -811,35 +730,8 @@ selector."grek/KaiSymbol" = "straightSerifed2" selector."grek/kappa" = "straightSerifless" selector.KDescender = "straightSerifed" -[prime.capital-k.variants.curly-serifed] -rank = 14 -description = "Slightly curly `K`, like Iosevka 2.x, and with serifs" -selector.K = "curlySerifed" -selector."K/sansSerif" = "curlySerifless" -selector."grek/KaiSymbol" = "curlySerifed2" -selector."grek/kappa" = "curlySerifless" -selector.KDescender = "curlySerifed" - -[prime.capital-k.variants.symmetric-touching-serifed] -rank = 15 -description = "`K` with symmetric legs touching the vertical bar, and serifs" -selector.K = "symmetricTouchingSerifed" -selector."K/sansSerif" = "symmetricTouchingSerifless" -selector."grek/KaiSymbol" = "symmetricTouchingSerifed2" -selector."grek/kappa" = "symmetricTouchingSerifless" -selector.KDescender = "symmetricTouchingSerifed" - -[prime.capital-k.variants.symmetric-connected-serifed] -rank = 16 -description = "`K` with symmetric legs connected to the vertical bar, and serifs" -selector.K = "symmetricConnectedSerifed" -selector."K/sansSerif" = "symmetricConnectedSerifless" -selector."grek/KaiSymbol" = "symmetricConnectedSerifed2" -selector."grek/kappa" = "symmetricConnectedSerifless" -selector.KDescender = "symmetricConnectedSerifed" - [prime.capital-k.variants.straight-top-left-and-bottom-right-serifed] -rank = 17 +rank = 5 description = "`K` with standard shape and serifs at top left and bottom right" selector.K = "straightTopLeftAndBottomRightSerifed" selector."K/sansSerif" = "straightSerifless" @@ -847,8 +739,44 @@ selector."grek/KaiSymbol" = "straightTopLeftAndBottomRightSerifed2" selector."grek/kappa" = "straightSerifless" selector.KDescender = "straightTopLeftSerifed" +[prime.capital-k.variants.curly-serifless] +rank = 6 +description = "Slightly curly `K`, like Iosevka 2.x, without serifs" +selector.K = "curlySerifless" +selector."K/sansSerif" = "curlySerifless" +selector."grek/KaiSymbol" = "curlySerifless" +selector."grek/kappa" = "curlySerifless" +selector.KDescender = "curlySerifless" + +[prime.capital-k.variants.curly-top-left-serifed] +rank = 7 +description = "Slightly curly `K`, like Iosevka 2.x, with serifs at top left" +selector.K = "curlyTopLeftSerifed" +selector."K/sansSerif" = "curlySerifless" +selector."grek/KaiSymbol" = "curlyTopLeftSerifed" +selector."grek/kappa" = "curlySerifless" +selector.KDescender = "curlyTopLeftSerifed" + +[prime.capital-k.variants.curly-bottom-right-serifed] +rank = 8 +description = "Slightly curly `K`, like Iosevka 2.x, with serifs at bottom right" +selector.K = "curlyBottomRightSerifed" +selector."K/sansSerif" = "curlySerifless" +selector."grek/KaiSymbol" = "curlyBottomRightSerifed2" +selector."grek/kappa" = "curlySerifless" +selector.KDescender = "curlyBottomRightSerifed" + +[prime.capital-k.variants.curly-serifed] +rank = 9 +description = "Slightly curly `K`, like Iosevka 2.x, and with serifs" +selector.K = "curlySerifed" +selector."K/sansSerif" = "curlySerifless" +selector."grek/KaiSymbol" = "curlySerifed2" +selector."grek/kappa" = "curlySerifless" +selector.KDescender = "curlySerifed" + [prime.capital-k.variants.curly-top-left-and-bottom-right-serifed] -rank = 18 +rank = 10 description = "Slightly curly `K`, like Iosevka 2.x, with serifs at top left and bottom right" selector.K = "curlyTopLeftAndBottomRightSerifed" selector."K/sansSerif" = "curlySerifless" @@ -856,8 +784,44 @@ selector."grek/KaiSymbol" = "curlyTopLeftAndBottomRightSerifed2" selector."grek/kappa" = "curlySerifless" selector.KDescender = "curlyTopLeftSerifed" +[prime.capital-k.variants.symmetric-touching-serifless] +rank = 11 +description = "`K` with symmetric legs touching the vertical bar, without serifs" +selector.K = "symmetricTouchingSerifless" +selector."K/sansSerif" = "symmetricTouchingSerifless" +selector."grek/KaiSymbol" = "symmetricTouchingSerifless" +selector."grek/kappa" = "symmetricTouchingSerifless" +selector.KDescender = "symmetricTouchingSerifless" + +[prime.capital-k.variants.symmetric-touching-top-left-serifed] +rank = 12 +description = "`K` with symmetric legs touching the vertical bar, and serifs at top left" +selector.K = "symmetricTouchingTopLeftSerifed" +selector."K/sansSerif" = "symmetricTouchingSerifless" +selector."grek/KaiSymbol" = "symmetricTouchingTopLeftSerifed" +selector."grek/kappa" = "symmetricTouchingSerifless" +selector.KDescender = "symmetricTouchingTopLeftSerifed" + +[prime.capital-k.variants.symmetric-touching-bottom-right-serifed] +rank = 13 +description = "`K` with symmetric legs touching the vertical bar, and serifs at bottom right" +selector.K = "symmetricTouchingBottomRightSerifed" +selector."K/sansSerif" = "symmetricTouchingSerifless" +selector."grek/KaiSymbol" = "symmetricTouchingBottomRightSerifed2" +selector."grek/kappa" = "symmetricTouchingSerifless" +selector.KDescender = "symmetricTouchingBottomRightSerifed" + +[prime.capital-k.variants.symmetric-touching-serifed] +rank = 14 +description = "`K` with symmetric legs touching the vertical bar, and serifs" +selector.K = "symmetricTouchingSerifed" +selector."K/sansSerif" = "symmetricTouchingSerifless" +selector."grek/KaiSymbol" = "symmetricTouchingSerifed2" +selector."grek/kappa" = "symmetricTouchingSerifless" +selector.KDescender = "symmetricTouchingSerifed" + [prime.capital-k.variants.symmetric-touching-top-left-and-bottom-right-serifed] -rank = 19 +rank = 15 description = "`K` with symmetric legs touching the vertical bar, and serifs at top left and bottom right" selector.K = "symmetricTouchingTopLeftAndBottomRightSerifed" selector."K/sansSerif" = "symmetricTouchingSerifless" @@ -865,6 +829,42 @@ selector."grek/KaiSymbol" = "symmetricTouchingTopLeftAndBottomRightSerifed2" selector."grek/kappa" = "symmetricTouchingSerifless" selector.KDescender = "symmetricTouchingTopLeftSerifed" +[prime.capital-k.variants.symmetric-connected-serifless] +rank = 16 +description = "`K` with symmetric legs connected to the vertical bar, without serifs" +selector.K = "symmetricConnectedSerifless" +selector."K/sansSerif" = "symmetricConnectedSerifless" +selector."grek/KaiSymbol" = "symmetricConnectedSerifless" +selector."grek/kappa" = "symmetricConnectedSerifless" +selector.KDescender = "symmetricConnectedSerifless" + +[prime.capital-k.variants.symmetric-connected-top-left-serifed] +rank = 17 +description = "`K` with symmetric legs connected to the vertical bar, and serifs at top left" +selector.K = "symmetricConnectedTopLeftSerifed" +selector."K/sansSerif" = "symmetricConnectedSerifless" +selector."grek/KaiSymbol" = "symmetricConnectedTopLeftSerifed" +selector."grek/kappa" = "symmetricConnectedSerifless" +selector.KDescender = "symmetricConnectedTopLeftSerifed" + +[prime.capital-k.variants.symmetric-connected-bottom-right-serifed] +rank = 18 +description = "`K` with symmetric legs connected to the vertical bar, and serifs at bottom right" +selector.K = "symmetricConnectedBottomRightSerifed" +selector."K/sansSerif" = "symmetricConnectedSerifless" +selector."grek/KaiSymbol" = "symmetricConnectedBottomRightSerifed2" +selector."grek/kappa" = "symmetricConnectedSerifless" +selector.KDescender = "symmetricConnectedBottomRightSerifed" + +[prime.capital-k.variants.symmetric-connected-serifed] +rank = 19 +description = "`K` with symmetric legs connected to the vertical bar, and serifs" +selector.K = "symmetricConnectedSerifed" +selector."K/sansSerif" = "symmetricConnectedSerifless" +selector."grek/KaiSymbol" = "symmetricConnectedSerifed2" +selector."grek/kappa" = "symmetricConnectedSerifless" +selector.KDescender = "symmetricConnectedSerifed" + [prime.capital-k.variants.symmetric-connected-top-left-and-bottom-right-serifed] rank = 20 description = "`K` with symmetric legs connected to the vertical bar, and serifs at top left and bottom right" @@ -911,12 +911,12 @@ selector.M = "hanging" selector."M/sansSerif" = "hanging" selector."cyrl/em" = "hangingSmallCyrl" -[prime.capital-m.variants.flat-bottom] +[prime.capital-m.variants.hanging-motion-serifed] rank = 2 -description = "`M` with middle aligned to baseline" -selector.M = "flatBottom" -selector."M/sansSerif" = "flatBottom" -selector."cyrl/em" = "flatBottomSmallCyrl" +description = "`M` with middle being hanging off baseline and motion serifs" +selector.M = "hangingMotionSerifed" +selector."M/sansSerif" = "hanging" +selector."cyrl/em" = "hangingMotionSerifed" [prime.capital-m.variants.slanted-sides-hanging] rank = 3 @@ -925,19 +925,19 @@ selector.M = "slantedSidesHanging" selector."M/sansSerif" = "slantedSidesHanging" selector."cyrl/em" = "slantedSidesHangingSmallCyrl" -[prime.capital-m.variants.slanted-sides-flat-bottom] +[prime.capital-m.variants.slanted-sides-hanging-motion-serifed] rank = 4 -description = "`M` with slanted sides and middle aligned to baseline" -selector.M = "slantedSidesFlatBottom" -selector."M/sansSerif" = "slantedSidesFlatBottom" -selector."cyrl/em" = "slantedSidesFlatBottomSmallCyrl" +description = "`M` with slanted sides, middle being hanging off baseline, and motion serifs" +selector.M = "slantedSidesHangingMotionSerifed" +selector."M/sansSerif" = "slantedSidesHanging" +selector."cyrl/em" = "slantedSidesHangingMotionSerifed" -[prime.capital-m.variants.hanging-motion-serifed] +[prime.capital-m.variants.flat-bottom] rank = 5 -description = "`M` with middle being hanging off baseline and motion serifs" -selector.M = "hangingMotionSerifed" -selector."M/sansSerif" = "hanging" -selector."cyrl/em" = "hangingMotionSerifed" +description = "`M` with middle aligned to baseline" +selector.M = "flatBottom" +selector."M/sansSerif" = "flatBottom" +selector."cyrl/em" = "flatBottomSmallCyrl" [prime.capital-m.variants.flat-bottom-motion-serifed] rank = 6 @@ -946,12 +946,12 @@ selector.M = "flatBottomMotionSerifed" selector."M/sansSerif" = "flatBottom" selector."cyrl/em" = "flatBottomMotionSerifed" -[prime.capital-m.variants.slanted-sides-hanging-motion-serifed] +[prime.capital-m.variants.slanted-sides-flat-bottom] rank = 7 -description = "`M` with slanted sides, middle being hanging off baseline, and motion serifs" -selector.M = "slantedSidesHangingMotionSerifed" -selector."M/sansSerif" = "slantedSidesHanging" -selector."cyrl/em" = "slantedSidesHangingMotionSerifed" +description = "`M` with slanted sides and middle aligned to baseline" +selector.M = "slantedSidesFlatBottom" +selector."M/sansSerif" = "slantedSidesFlatBottom" +selector."cyrl/em" = "slantedSidesFlatBottomSmallCyrl" [prime.capital-m.variants.slanted-sides-flat-bottom-motion-serifed] rank = 8 @@ -972,18 +972,18 @@ description = "Standard N" selector.N = "standard" selector."N/sansSerif" = "standard" -[prime.capital-n.variants.asymmetric] -rank = 2 -description = "More asymmetric N, with the diagonal bar stops at middle of right stem" -selector.N = "asymmetric" -selector."N/sansSerif" = "asymmetric" - [prime.capital-n.variants.motion-serifed] -rank = 3 +rank = 2 description = "Standard N with motion serifs" selector.N = "motionSerifed" selector."N/sansSerif" = "standard" +[prime.capital-n.variants.asymmetric] +rank = 3 +description = "More asymmetric N, with the diagonal bar stops at middle of right stem" +selector.N = "asymmetric" +selector."N/sansSerif" = "asymmetric" + [prime.capital-n.variants.asymmetric-motion-serifed] rank = 4 description = "More asymmetric N, with the diagonal bar stops at middle of right stem and motion serifs" @@ -1001,31 +1001,31 @@ rank = 1 description = "Closed `P`" selector.P = "closed" selector."P/sansSerif" = "closed" -selector."PHookLeft" = "closed" -selector."currency/rubleSign" = "closed" - -[prime.capital-p.variants.open] -rank = 2 -description = "P with open contour at bottom" -selector.P = "open" -selector."P/sansSerif" = "open" -selector."PHookLeft" = "open" +selector.PHookLeft = "closed" selector."currency/rubleSign" = "closed" [prime.capital-p.variants.closed-motion-serifed] -rank = 3 +rank = 2 description = "Closed `P` with motion serifs" selector.P = "closedMotionSerifed" selector."P/sansSerif" = "closed" -selector."PHookLeft" = "closedMotionSerifed" +selector.PHookLeft = "closedMotionSerifed" selector."currency/rubleSign" = "closedMotionSerifed" +[prime.capital-p.variants.open] +rank = 3 +description = "P with open contour at bottom" +selector.P = "open" +selector."P/sansSerif" = "open" +selector.PHookLeft = "open" +selector."currency/rubleSign" = "closed" + [prime.capital-p.variants.open-motion-serifed] rank = 4 description = "P with open contour at bottom and motion serifs" selector.P = "openMotionSerifed" selector."P/sansSerif" = "open" -selector."PHookLeft" = "openMotionSerifed" +selector.PHookLeft = "openMotionSerifed" selector."currency/rubleSign" = "closedMotionSerifed" @@ -1092,76 +1092,76 @@ selector.R = "straight" selector."R/sansSerif" = "straight" selector.RRotunda = "straight" -[prime.capital-r.variants.curly] -rank = 2 -description = " Slightly curly-legged `R`, like Iosevka 2.x" -selector.R = "curly" -selector."R/sansSerif" = "curly" -selector.RRotunda = "curly" - -[prime.capital-r.variants.standing] -rank = 3 -description = "`R` with near-vertical standing leg" -selector.R = "standing" -selector."R/sansSerif" = "standing" -selector.RRotunda = "standing" - -[prime.capital-r.variants.straight-open] -rank = 4 -description = "Standard, straight-leg `R`, with open contour at bottom" -selector.R = "straightOpen" -selector."R/sansSerif" = "straightOpen" -selector.RRotunda = "straight" - -[prime.capital-r.variants.curly-open] -rank = 5 -description = " Slightly curly-legged `R`, like Iosevka 2.x, with open contour at bottom" -selector.R = "curlyOpen" -selector."R/sansSerif" = "curlyOpen" -selector.RRotunda = "curly" - -[prime.capital-r.variants.standing-open] -rank = 6 -description = "`R` with near-vertical standing leg, with open contour at bottom" -selector.R = "standingOpen" -selector."R/sansSerif" = "standingOpen" -selector.RRotunda = "standing" - [prime.capital-r.variants.straight-motion-serifed] -rank = 7 +rank = 2 description = "Standard, straight-leg `R`, with motion serifs" selector.R = "straightMotionSerifed" selector."R/sansSerif" = "straight" selector.RRotunda = "straightSerifless" +[prime.capital-r.variants.curly] +rank = 3 +description = " Slightly curly-legged `R`, like Iosevka 2.x" +selector.R = "curly" +selector."R/sansSerif" = "curly" +selector.RRotunda = "curly" + [prime.capital-r.variants.curly-motion-serifed] -rank = 8 +rank = 4 description = " Slightly curly-legged `R`, like Iosevka 2.x, with motion serifs" selector.R = "curlyMotionSerifed" selector."R/sansSerif" = "curly" selector.RRotunda = "curlySerifless" +[prime.capital-r.variants.standing] +rank = 5 +description = "`R` with near-vertical standing leg" +selector.R = "standing" +selector."R/sansSerif" = "standing" +selector.RRotunda = "standing" + [prime.capital-r.variants.standing-motion-serifed] -rank = 9 +rank = 6 description = "`R` with near-vertical standing leg" selector.R = "standingMotionSerifed" selector."R/sansSerif" = "standing" selector.RRotunda = "standingSerifless" +[prime.capital-r.variants.straight-open] +rank = 7 +description = "Standard, straight-leg `R`, with open contour at bottom" +selector.R = "straightOpen" +selector."R/sansSerif" = "straightOpen" +selector.RRotunda = "straight" + [prime.capital-r.variants.straight-open-motion-serifed] -rank = 10 +rank = 8 description = "Standard, straight-leg `R`, with open contour at bottom and motion serifs" selector.R = "straightOpenMotionSerifed" selector."R/sansSerif" = "straightOpen" selector.RRotunda = "straightSerifless" +[prime.capital-r.variants.curly-open] +rank = 9 +description = " Slightly curly-legged `R`, like Iosevka 2.x, with open contour at bottom" +selector.R = "curlyOpen" +selector."R/sansSerif" = "curlyOpen" +selector.RRotunda = "curly" + [prime.capital-r.variants.curly-open-motion-serifed] -rank = 11 +rank = 10 description = " Slightly curly-legged `R`, like Iosevka 2.x, with open contour at bottom and motion serifs" selector.R = "curlyOpenMotionSerifed" selector."R/sansSerif" = "curlyOpen" selector.RRotunda = "curlySerifless" +[prime.capital-r.variants.standing-open] +rank = 11 +description = "`R` with near-vertical standing leg, with open contour at bottom" +selector.R = "standingOpen" +selector."R/sansSerif" = "standingOpen" +selector.RRotunda = "standing" + [prime.capital-r.variants.standing-open-motion-serifed] rank = 12 description = "`R` with near-vertical standing leg, with open contour at bottom and motion serifs" @@ -1254,60 +1254,60 @@ description = "`U` with bottom-right tooth" selector.U = "toothed" selector."U/sansSerif" = "toothed" -[prime.capital-u.variants.toothless-corner] -rank = 2 -description = "Toothless (corner bottom-right) `U`" -selector.U = "toothlessCorner" -selector."U/sansSerif" = "toothlessCorner" - -[prime.capital-u.variants.toothless-rounded] -rank = 3 -description = "Toothless (rounded) `U`" -selector.U = "toothlessRounded" -selector."U/sansSerif" = "toothlessRounded" - -[prime.capital-u.variants.tailed] -rank = 4 -description = "`U` with right bar and a slightly curly tail" -selector.U = "tailed" -selector."U/sansSerif" = "tailed" - [prime.capital-u.variants.motion-serifed] -rank = 5 +rank = 2 description = "Normal `U` with right bar and motion serifs" selector.U = "motionSerifed" selector."U/sansSerif" = "toothed" -[prime.capital-u.variants.tailed-motion-serifed] -rank = 6 -description = "`U` with right bar, motion serifs and a slightly curly tail" -selector.U = "tailedMotionSerifed" -selector."U/sansSerif" = "tailed" +[prime.capital-u.variants.toothless-corner] +rank = 3 +description = "Toothless (corner bottom-right) `U`" +selector.U = "toothlessCorner" +selector."U/sansSerif" = "toothlessCorner" [prime.capital-u.variants.toothless-corner-unilateral-motion-serifed] -rank = 7 +rank = 4 description = "Toothless (corner bottom-right) `U` with motion serifs, like Museo" selector.U = "toothlessCornerUnilateralMotionSerifed" selector."U/sansSerif" = "toothlessCorner" -[prime.capital-u.variants.toothless-rounded-unilateral-motion-serifed] -rank = 8 -description = "Toothless (rounded) `U` with motion serifs, like Museo" -selector.U = "toothlessRoundedUnilateralMotionSerifed" -selector."U/sansSerif" = "toothlessRounded" - [prime.capital-u.variants.toothless-corner-bilateral-motion-serifed] -rank = 9 +rank = 5 description = "Toothless (corner bottom-right) `U` with motion serifs, like Museo" selector.U = "toothlessCornerBilateralMotionSerifed" selector."U/sansSerif" = "toothlessCorner" +[prime.capital-u.variants.toothless-rounded] +rank = 6 +description = "Toothless (rounded) `U`" +selector.U = "toothlessRounded" +selector."U/sansSerif" = "toothlessRounded" + +[prime.capital-u.variants.toothless-rounded-unilateral-motion-serifed] +rank = 7 +description = "Toothless (rounded) `U` with motion serifs, like Museo" +selector.U = "toothlessRoundedUnilateralMotionSerifed" +selector."U/sansSerif" = "toothlessRounded" + [prime.capital-u.variants.toothless-rounded-bilateral-motion-serifed] -rank = 10 +rank = 8 description = "Toothless (rounded) `U` with motion serifs, like Museo" selector.U = "toothlessRoundedBilateralMotionSerifed" selector."U/sansSerif" = "toothlessRounded" +[prime.capital-u.variants.tailed] +rank = 9 +description = "`U` with right bar and a slightly curly tail" +selector.U = "tailed" +selector."U/sansSerif" = "tailed" + +[prime.capital-u.variants.tailed-motion-serifed] +rank = 10 +description = "`U` with right bar, motion serifs and a slightly curly tail" +selector.U = "tailedMotionSerifed" +selector."U/sansSerif" = "tailed" + [prime.capital-v] @@ -1321,20 +1321,20 @@ selector.V = "straight" selector."V/sansSerif" = "straight" selector.VHookTop = "straight" -[prime.capital-v.variants.curly] -rank = 2 -description = " Slightly curly `V`, like Iosevka 2.x" -selector.V = "curly" -selector."V/sansSerif" = "curly" -selector.VHookTop = "curly" - [prime.capital-v.variants.straight-motion-serifed] -rank = 3 +rank = 2 description = "Standard, straight `V`, and motion serifs" selector.V = "straightMotionSerifed" selector."V/sansSerif" = "straight" selector.VHookTop = "straightMotionSerifed" +[prime.capital-v.variants.curly] +rank = 3 +description = " Slightly curly `V`, like Iosevka 2.x" +selector.V = "curly" +selector."V/sansSerif" = "curly" +selector.VHookTop = "curly" + [prime.capital-v.variants.curly-motion-serifed] rank = 4 description = " Slightly curly `V`, like Iosevka 2.x, and motion serifs" @@ -1355,76 +1355,76 @@ selector.W = "straight" selector."W/sansSerif" = "straight" selector.WHookTop = "straight" -[prime.capital-w.variants.curly] -rank = 2 -description = "Slightly curly `W`, like Iosevka 2.x" -selector.W = "curly" -selector."W/sansSerif" = "curly" -selector.WHookTop = "curly" - -[prime.capital-w.variants.straight-flat-top] -rank = 3 -description = "Standard, straight `W`, and the middle is forced to be aligned the top" -selector.W = "straightFlatTop" -selector."W/sansSerif" = "straightFlatTop" -selector.WHookTop = "straightFlatTop" - -[prime.capital-w.variants.straight-double-v] -rank = 4 -description = "Straight `W` looks like double V" -selector.W = "straightDoubleV" -selector."W/sansSerif" = "straightDoubleV" -selector.WHookTop = "straightDoubleV" - -[prime.capital-w.variants.straight-asymmetric] -rank = 5 -description = "Straight `W` looks asymmetric" -selector.W = "straightAsymmetric" -selector."W/sansSerif" = "straightAsymmetric" -selector.WHookTop = "straightAsymmetric" - -[prime.capital-w.variants.straight-vertical-sides] -rank = 6 -description = "Straight `W` with vertical sides" -selector.W = "straightVerticalSides" -selector."W/sansSerif" = "straightVerticalSides" -selector.WHookTop = "straightVerticalSides" - [prime.capital-w.variants.straight-motion-serifed] -rank = 7 +rank = 2 description = "Standard, straight `W`, with motion serifs" selector.W = "straightMotionSerifed" selector."W/sansSerif" = "straight" selector.WHookTop = "straightMotionSerifed" +[prime.capital-w.variants.curly] +rank = 3 +description = "Slightly curly `W`, like Iosevka 2.x" +selector.W = "curly" +selector."W/sansSerif" = "curly" +selector.WHookTop = "curly" + [prime.capital-w.variants.curly-motion-serifed] -rank = 8 +rank = 4 description = "Slightly curly `W`, like Iosevka 2.x, with motion serifs" selector.W = "curlyMotionSerifed" selector."W/sansSerif" = "curly" selector.WHookTop = "curlyMotionSerifed" +[prime.capital-w.variants.straight-flat-top] +rank = 5 +description = "Standard, straight `W`, and the middle is forced to be aligned the top" +selector.W = "straightFlatTop" +selector."W/sansSerif" = "straightFlatTop" +selector.WHookTop = "straightFlatTop" + [prime.capital-w.variants.straight-flat-top-motion-serifed] -rank = 9 +rank = 6 description = "Standard, straight `W`, and the middle is forced to be aligned the top, with motion serifs" selector.W = "straightFlatTopMotionSerifed" selector."W/sansSerif" = "straightFlatTop" selector.WHookTop = "straightFlatTopMotionSerifed" +[prime.capital-w.variants.straight-double-v] +rank = 7 +description = "Straight `W` looks like double V" +selector.W = "straightDoubleV" +selector."W/sansSerif" = "straightDoubleV" +selector.WHookTop = "straightDoubleV" + [prime.capital-w.variants.straight-double-v-motion-serifed] -rank = 10 +rank = 8 description = "Straight `W` looks like double V, with motion serifs" selector.W = "straightDoubleVMotionSerifed" selector."W/sansSerif" = "straightDoubleV" selector.WHookTop = "straightDoubleVMotionSerifed" +[prime.capital-w.variants.straight-asymmetric] +rank = 9 +description = "Straight `W` looks asymmetric" +selector.W = "straightAsymmetric" +selector."W/sansSerif" = "straightAsymmetric" +selector.WHookTop = "straightAsymmetric" + [prime.capital-w.variants.straight-asymmetric-motion-serifed] -rank = 11 +rank = 10 description = "Straight `W` looks asymmetric, with motion serifs" selector.W = "straightAsymmetricMotionSerifed" selector."W/sansSerif" = "straightAsymmetric" selector.WHookTop = "straightAsymmetricMotionSerifed" +[prime.capital-w.variants.straight-vertical-sides] +rank = 11 +description = "Straight `W` with vertical sides" +selector.W = "straightVerticalSides" +selector."W/sansSerif" = "straightVerticalSides" +selector.WHookTop = "straightVerticalSides" + [prime.capital-w.variants.straight-vertical-sides-motion-serifed] rank = 12 description = "Straight `W` with vertical sides and motion serifs" @@ -1444,30 +1444,30 @@ description = "Serifless, straight `X`" selector.X = "straightSerifless" selector."X/sansSerif" = "straightSerifless" -[prime.capital-x.variants.curly-serifless] -rank = 2 -description = "Serifless, slightly curly `X`, like Iosevka 2.x" -selector.X = "curlySerifless" -selector."X/sansSerif" = "curlySerifless" - [prime.capital-x.variants.straight-motion-serifed] -rank = 3 +rank = 2 description = "Straight `X` with motion serifs" selector.X = "straightMotionSerifed" selector."X/sansSerif" = "straightSerifless" -[prime.capital-x.variants.curly-motion-serifed] -rank = 4 -description = "Slightly curly `X`, like Iosevka 2.x, with motion serifs" -selector.X = "curlyMotionSerifed" -selector."X/sansSerif" = "curlySerifless" - [prime.capital-x.variants.straight-serifed] -rank = 5 +rank = 3 description = "Straight `X` with full serifs" selector.X = "straightSerifed" selector."X/sansSerif" = "straightSerifless" +[prime.capital-x.variants.curly-serifless] +rank = 4 +description = "Serifless, slightly curly `X`, like Iosevka 2.x" +selector.X = "curlySerifless" +selector."X/sansSerif" = "curlySerifless" + +[prime.capital-x.variants.curly-motion-serifed] +rank = 5 +description = "Slightly curly `X`, like Iosevka 2.x, with motion serifs" +selector.X = "curlyMotionSerifed" +selector."X/sansSerif" = "curlySerifless" + [prime.capital-x.variants.curly-serifed] rank = 6 description = "Slightly curly `X`, like Iosevka 2.x, with full serifs" @@ -1484,56 +1484,56 @@ tag = "cv24" rank = 1 description = "Straight `Y` without serifs" selector.Y = "straightSerifless" -selector.'grek/upsilonHookedSymbolShape' = "straightSerifless" +selector."grek/upsilonHookedSymbolShape" = "straightSerifless" +selector."Y/sansSerif" = "straightSerifless" + +[prime.capital-y.variants.straight-base-serifed] +rank = 2 +description = "Standard, straight `Y`, with serif at bottom" +selector.Y = "straightBaseSerifed" +selector."grek/upsilonHookedSymbolShape" = "straightBaseSerifed" +selector."Y/sansSerif" = "straightSerifless" + +[prime.capital-y.variants.straight-motion-serifed] +rank = 3 +description = "Standard, straight `Y`, with motion serifs" +selector.Y = "straightMotionSerifed" +selector."grek/upsilonHookedSymbolShape" = "straightSerifless" +selector."Y/sansSerif" = "straightSerifless" + +[prime.capital-y.variants.straight-serifed] +rank = 4 +description = "Standard, straight `Y`, with serifs" +selector.Y = "straightSerifed" +selector."grek/upsilonHookedSymbolShape" = "straightBaseSerifed" selector."Y/sansSerif" = "straightSerifless" [prime.capital-y.variants.curly-serifless] -rank = 2 +rank = 5 description = "Slightly curly `Y`, like Iosevka 2.x, without serifs" selector.Y = "curlySerifless" -selector.'grek/upsilonHookedSymbolShape' = "straightSerifless" +selector."grek/upsilonHookedSymbolShape" = "straightSerifless" selector."Y/sansSerif" = "curlySerifless" -[prime.capital-y.variants.straight-base-serifed] -rank = 3 -description = "Standard, straight `Y`, with serif at bottom" -selector.Y = "straightBaseSerifed" -selector.'grek/upsilonHookedSymbolShape' = "straightBaseSerifed" -selector."Y/sansSerif" = "straightSerifless" - [prime.capital-y.variants.curly-base-serifed] -rank = 4 +rank = 6 description = "Slightly curly `Y`, like Iosevka 2.x, with serif at bottom" selector.Y = "curlyBaseSerifed" -selector.'grek/upsilonHookedSymbolShape' = "straightBaseSerifed" +selector."grek/upsilonHookedSymbolShape" = "straightBaseSerifed" selector."Y/sansSerif" = "curlySerifless" -[prime.capital-y.variants.straight-motion-serifed] -rank = 5 -description = "Standard, straight `Y`, with motion serifs" -selector.Y = "straightMotionSerifed" -selector.'grek/upsilonHookedSymbolShape' = "straightSerifless" -selector."Y/sansSerif" = "straightSerifless" - [prime.capital-y.variants.curly-motion-serifed] -rank = 6 +rank = 7 description = "Slightly curly `Y`, like Iosevka 2.x, with motion serifs" selector.Y = "curlyMotionSerifed" -selector.'grek/upsilonHookedSymbolShape' = "straightSerifless" +selector."grek/upsilonHookedSymbolShape" = "straightSerifless" selector."Y/sansSerif" = "curlySerifless" -[prime.capital-y.variants.straight-serifed] -rank = 7 -description = "Standard, straight `Y`, with serifs" -selector.Y = "straightSerifed" -selector.'grek/upsilonHookedSymbolShape' = "straightBaseSerifed" -selector."Y/sansSerif" = "straightSerifless" - [prime.capital-y.variants.curly-serifed] rank = 8 description = "Slightly curly `Y`, like Iosevka 2.x, with serifs" selector.Y = "curlySerifed" -selector.'grek/upsilonHookedSymbolShape' = "straightBaseSerifed" +selector."grek/upsilonHookedSymbolShape" = "straightBaseSerifed" selector."Y/sansSerif" = "curlySerifless" @@ -1569,35 +1569,8 @@ selector."Z/reduced" = "straightSerifless" selector."Z/reduced/sansSerif" = "straightSerifless" selector.ZDesc = "straightSeriflessWithHorizontalCrossBar" -[prime.capital-z.variants.curly-serifless] -rank = 4 -description = "Curly `Z` without serifs" -selector.Z = "curlySerifless" -selector."Z/sansSerif" = "curlySerifless" -selector."Z/reduced" = "curlySerifless" -selector."Z/reduced/sansSerif" = "curlySerifless" -selector.ZDesc = "curlySerifless" - -[prime.capital-z.variants.curly-serifless-with-crossbar] -rank = 5 -description = "Curly `Z` with a diagonal crossbar, and without serifs" -selector.Z = "curlySeriflessWithCrossBar" -selector."Z/sansSerif" = "curlySeriflessWithCrossBar" -selector."Z/reduced" = "curlySerifless" -selector."Z/reduced/sansSerif" = "curlySerifless" -selector.ZDesc = "curlySeriflessWithCrossBar" - -[prime.capital-z.variants.curly-serifless-with-horizontal-crossbar] -rank = 6 -description = "Curly `Z` with a horizontal crossbar, and without serifs" -selector.Z = "curlySeriflessWithHorizontalCrossBar" -selector."Z/sansSerif" = "curlySeriflessWithHorizontalCrossBar" -selector."Z/reduced" = "curlySerifless" -selector."Z/reduced/sansSerif" = "curlySerifless" -selector.ZDesc = "curlySeriflessWithHorizontalCrossBar" - [prime.capital-z.variants.straight-serifed] -rank = 7 +rank = 4 description = "Straight `Z` with top and bottom serifs" selector.Z = "straightSerifed" selector."Z/sansSerif" = "straightSerifless" @@ -1606,7 +1579,7 @@ selector."Z/reduced/sansSerif" = "straightSerifless" selector.ZDesc = "straightTopSerifed" [prime.capital-z.variants.straight-serifed-with-crossbar] -rank = 8 +rank = 5 description = "Straight `Z` with a diagonal crossbar and serifs" selector.Z = "straightSerifedWithCrossBar" selector."Z/sansSerif" = "straightSeriflessWithCrossBar" @@ -1615,7 +1588,7 @@ selector."Z/reduced/sansSerif" = "straightSerifless" selector.ZDesc = "straightTopSerifedWithCrossbar" [prime.capital-z.variants.straight-serifed-with-horizontal-crossbar] -rank = 9 +rank = 6 description = "Straight `Z` with a horizontal crossbar and serifs" selector.Z = "straightSerifedWithHorizontalCrossBar" selector."Z/sansSerif" = "straightSeriflessWithHorizontalCrossBar" @@ -1623,35 +1596,8 @@ selector."Z/reduced" = "straightSerifed" selector."Z/reduced/sansSerif" = "straightSerifless" selector.ZDesc = "straightTopSerifedWithHorizontalCrossBar" -[prime.capital-z.variants.curly-serifed] -rank = 10 -description = "Curly `Z` with top and bottom serifs" -selector.Z = "curlySerifed" -selector."Z/sansSerif" = "curlySerifless" -selector."Z/reduced" = "curlySerifed" -selector."Z/reduced/sansSerif" = "curlySerifless" -selector.ZDesc = "curlyTopSerifed" - -[prime.capital-z.variants.curly-serifed-with-crossbar] -rank = 11 -description = "Curly `Z` with a diagonal crossbar and serifs" -selector.Z = "curlySerifedWithCrossBar" -selector."Z/sansSerif" = "curlySeriflessWithCrossBar" -selector."Z/reduced" = "curlySerifed" -selector."Z/reduced/sansSerif" = "curlySerifless" -selector.ZDesc = "curlyTopSerifedWithCrossbar" - -[prime.capital-z.variants.curly-serifed-with-horizontal-crossbar] -rank = 12 -description = "Curly `Z` with a horizontal crossbar and serifs" -selector.Z = "curlySerifedWithHorizontalCrossBar" -selector."Z/sansSerif" = "curlySeriflessWithHorizontalCrossBar" -selector."Z/reduced" = "curlySerifed" -selector."Z/reduced/sansSerif" = "curlySerifless" -selector.ZDesc = "curlyTopSerifedWithHorizontalCrossBar" - [prime.capital-z.variants.straight-bottom-serifed] -rank = 13 +rank = 7 description = "Standard `Z` with serif at bottom" selector.Z = "straightBottomSerifed" selector."Z/sansSerif" = "straightSerifless" @@ -1660,7 +1606,7 @@ selector."Z/reduced/sansSerif" = "straightSerifless" selector.ZDesc = "straightSerifless" [prime.capital-z.variants.straight-bottom-serifed-with-crossbar] -rank = 14 +rank = 8 description = "Standard `Z` with a diagonal crossbar and serif at bottom" selector.Z = "straightBottomSerifedWithCrossbar" selector."Z/sansSerif" = "straightSeriflessWithCrossBar" @@ -1669,7 +1615,7 @@ selector."Z/reduced/sansSerif" = "straightSerifless" selector.ZDesc = "straightSeriflessWithCrossBar" [prime.capital-z.variants.straight-bottom-serifed-with-horizontal-crossbar] -rank = 15 +rank = 9 description = "Standard `Z` with a horizontal crossbar and serif at bottom" selector.Z = "straightBottomSerifedWithHorizontalCrossBar" selector."Z/sansSerif" = "straightSeriflessWithHorizontalCrossBar" @@ -1677,35 +1623,8 @@ selector."Z/reduced" = "straightBottomSerifed" selector."Z/reduced/sansSerif" = "straightSerifless" selector.ZDesc = "straightSeriflessWithHorizontalCrossBar" -[prime.capital-z.variants.curly-bottom-serifed-with-crossbar] -rank = 16 -description = "Curly `Z` with serif at bottom" -selector.Z = "curlyBottomSerifed" -selector."Z/sansSerif" = "curlySerifless" -selector."Z/reduced" = "curlyBottomSerifed" -selector."Z/reduced/sansSerif" = "curlySerifless" -selector.ZDesc = "curlySerifless" - -[prime.capital-z.variants.curly-bottom-serifed-with-horizontal-crossbar] -rank = 17 -description = "Curly `Z` with a diagonal crossbar and serif at bottom" -selector.Z = "curlyBottomSerifedWithCrossbar" -selector."Z/sansSerif" = "curlySeriflessWithCrossBar" -selector."Z/reduced" = "curlyBottomSerifed" -selector."Z/reduced/sansSerif" = "curlySerifless" -selector.ZDesc = "curlySeriflessWithCrossBar" - -[prime.capital-z.variants.curly-bottom-serifed] -rank = 18 -description = "Curly `Z` with a horizontal crossbar and serif at bottom" -selector.Z = "curlyBottomSerifedWithHorizontalCrossBar" -selector."Z/sansSerif" = "curlySeriflessWithHorizontalCrossBar" -selector."Z/reduced" = "curlyBottomSerifed" -selector."Z/reduced/sansSerif" = "curlySerifless" -selector.ZDesc = "curlySeriflessWithHorizontalCrossBar" - [prime.capital-z.variants.straight-top-serifed] -rank = 19 +rank = 10 description = "Standard `Z` with serif at top" selector.Z = "straightTopSerifed" selector."Z/sansSerif" = "straightSerifless" @@ -1714,7 +1633,7 @@ selector."Z/reduced/sansSerif" = "straightSerifless" selector.ZDesc = "straightTopSerifed" [prime.capital-z.variants.straight-top-serifed-with-crossbar] -rank = 20 +rank = 11 description = "Standard `Z` with a diagonal crossbar and serif at top" selector.Z = "straightTopSerifedWithCrossbar" selector."Z/sansSerif" = "straightSeriflessWithCrossBar" @@ -1723,7 +1642,7 @@ selector."Z/reduced/sansSerif" = "straightSerifless" selector.ZDesc = "straightTopSerifedWithCrossbar" [prime.capital-z.variants.straight-top-serifed-with-horizontal-crossbar] -rank = 21 +rank = 12 description = "Standard `Z` with a horizontal crossbar and serif at top" selector.Z = "straightTopSerifedWithHorizontalCrossBar" selector."Z/sansSerif" = "straightSeriflessWithHorizontalCrossBar" @@ -1731,6 +1650,87 @@ selector."Z/reduced" = "straightTopSerifed" selector."Z/reduced/sansSerif" = "straightSerifless" selector.ZDesc = "straightTopSerifedWithHorizontalCrossBar" +[prime.capital-z.variants.curly-serifless] +rank = 13 +description = "Curly `Z` without serifs" +selector.Z = "curlySerifless" +selector."Z/sansSerif" = "curlySerifless" +selector."Z/reduced" = "curlySerifless" +selector."Z/reduced/sansSerif" = "curlySerifless" +selector.ZDesc = "curlySerifless" + +[prime.capital-z.variants.curly-serifless-with-crossbar] +rank = 14 +description = "Curly `Z` with a diagonal crossbar, and without serifs" +selector.Z = "curlySeriflessWithCrossBar" +selector."Z/sansSerif" = "curlySeriflessWithCrossBar" +selector."Z/reduced" = "curlySerifless" +selector."Z/reduced/sansSerif" = "curlySerifless" +selector.ZDesc = "curlySeriflessWithCrossBar" + +[prime.capital-z.variants.curly-serifless-with-horizontal-crossbar] +rank = 15 +description = "Curly `Z` with a horizontal crossbar, and without serifs" +selector.Z = "curlySeriflessWithHorizontalCrossBar" +selector."Z/sansSerif" = "curlySeriflessWithHorizontalCrossBar" +selector."Z/reduced" = "curlySerifless" +selector."Z/reduced/sansSerif" = "curlySerifless" +selector.ZDesc = "curlySeriflessWithHorizontalCrossBar" + +[prime.capital-z.variants.curly-serifed] +rank = 16 +description = "Curly `Z` with top and bottom serifs" +selector.Z = "curlySerifed" +selector."Z/sansSerif" = "curlySerifless" +selector."Z/reduced" = "curlySerifed" +selector."Z/reduced/sansSerif" = "curlySerifless" +selector.ZDesc = "curlyTopSerifed" + +[prime.capital-z.variants.curly-serifed-with-crossbar] +rank = 17 +description = "Curly `Z` with a diagonal crossbar and serifs" +selector.Z = "curlySerifedWithCrossBar" +selector."Z/sansSerif" = "curlySeriflessWithCrossBar" +selector."Z/reduced" = "curlySerifed" +selector."Z/reduced/sansSerif" = "curlySerifless" +selector.ZDesc = "curlyTopSerifedWithCrossbar" + +[prime.capital-z.variants.curly-serifed-with-horizontal-crossbar] +rank = 18 +description = "Curly `Z` with a horizontal crossbar and serifs" +selector.Z = "curlySerifedWithHorizontalCrossBar" +selector."Z/sansSerif" = "curlySeriflessWithHorizontalCrossBar" +selector."Z/reduced" = "curlySerifed" +selector."Z/reduced/sansSerif" = "curlySerifless" +selector.ZDesc = "curlyTopSerifedWithHorizontalCrossBar" + +[prime.capital-z.variants.curly-bottom-serifed-with-crossbar] +rank = 19 +description = "Curly `Z` with serif at bottom" +selector.Z = "curlyBottomSerifed" +selector."Z/sansSerif" = "curlySerifless" +selector."Z/reduced" = "curlyBottomSerifed" +selector."Z/reduced/sansSerif" = "curlySerifless" +selector.ZDesc = "curlySerifless" + +[prime.capital-z.variants.curly-bottom-serifed-with-horizontal-crossbar] +rank = 20 +description = "Curly `Z` with a diagonal crossbar and serif at bottom" +selector.Z = "curlyBottomSerifedWithCrossbar" +selector."Z/sansSerif" = "curlySeriflessWithCrossBar" +selector."Z/reduced" = "curlyBottomSerifed" +selector."Z/reduced/sansSerif" = "curlySerifless" +selector.ZDesc = "curlySeriflessWithCrossBar" + +[prime.capital-z.variants.curly-bottom-serifed] +rank = 21 +description = "Curly `Z` with a horizontal crossbar and serif at bottom" +selector.Z = "curlyBottomSerifedWithHorizontalCrossBar" +selector."Z/sansSerif" = "curlySeriflessWithHorizontalCrossBar" +selector."Z/reduced" = "curlyBottomSerifed" +selector."Z/reduced/sansSerif" = "curlySerifless" +selector.ZDesc = "curlySeriflessWithHorizontalCrossBar" + [prime.capital-z.variants.curly-top-serifed] rank = 22 description = "Curly `Z` with serif at top" @@ -1931,38 +1931,38 @@ selector."b/sansSerif" = "toothed" selector."b/zhuangToneSixBase" = "toothed" selector.bHookTop = "toothed" -[prime.b.variants.toothless-corner] -rank = 2 -description = "`b` without bottom-left tooth, with a corner transition" -selector.b = "toothlessCorner" -selector."b/sansSerif" = "toothlessCorner" -selector."b/zhuangToneSixBase" = "toothlessCorner" -selector.bHookTop = "toothlessCorner" - -[prime.b.variants.toothless-rounded] -rank = 3 -description = "`b` without bottom-left tooth, with a rounded transition" -selector.b = "toothlessRounded" -selector."b/sansSerif" = "toothlessRounded" -selector."b/zhuangToneSixBase" = "toothlessRounded" -selector.bHookTop = "toothlessRounded" - [prime.b.variants.toothed-motion-serifed] -rank = 4 +rank = 2 description = "`b` with motion serif, and with bottom-left tooth" selector.b = "toothedMotionSerifed" selector."b/sansSerif" = "toothed" selector."b/zhuangToneSixBase" = "toothed" selector.bHookTop = "toothed" +[prime.b.variants.toothless-corner] +rank = 3 +description = "`b` without bottom-left tooth, with a corner transition" +selector.b = "toothlessCorner" +selector."b/sansSerif" = "toothlessCorner" +selector."b/zhuangToneSixBase" = "toothlessCorner" +selector.bHookTop = "toothlessCorner" + [prime.b.variants.toothless-corner-motion-serifed] -rank = 5 +rank = 4 description = "`b` with motion serif, and without bottom-left tooth, with a corner transition" selector.b = "toothlessCornerMotionSerifed" selector."b/sansSerif" = "toothlessCorner" selector."b/zhuangToneSixBase" = "toothlessCorner" selector.bHookTop = "toothlessCorner" +[prime.b.variants.toothless-rounded] +rank = 5 +description = "`b` without bottom-left tooth, with a rounded transition" +selector.b = "toothlessRounded" +selector."b/sansSerif" = "toothlessRounded" +selector."b/zhuangToneSixBase" = "toothlessRounded" +selector.bHookTop = "toothlessRounded" + [prime.b.variants.toothless-rounded-motion-serifed] rank = 6 description = "`b` with motion serif, and without bottom-left tooth, with a rounded transition" @@ -2049,41 +2049,8 @@ selector.dCurlyTail = "toothedSerifless" selector.dHookTop = "toothedSerifless" selector."dHookTop/hookBottomBase" = "toothedSerifless" -[prime.d.variants.toothless-corner-serifless] -rank = 2 -description = "`d` without bottom-right tooth, with a corner transition, and without serif" -selector.d = "toothlessCornerSerifless" -selector."d/sansSerif" = "toothlessCornerSerifless" -selector."d/phoneticLeft" = "toothedSerifless" -selector."d/hookBottomBase" = "toothlessCornerSeriflessHBB" -selector.dCurlyTail = "toothedSerifless" -selector.dHookTop = "toothlessCornerSerifless" -selector."dHookTop/hookBottomBase" = "toothlessCornerSeriflessHBB" - -[prime.d.variants.toothless-rounded-serifless] -rank = 3 -description = "`d` without bottom-right tooth, with a rounded transition, and without serif" -selector.d = "toothlessRoundedSerifless" -selector."d/sansSerif" = "toothlessRoundedSerifless" -selector."d/phoneticLeft" = "toothedSerifless" -selector."d/hookBottomBase" = "toothlessRoundedSeriflessHBB" -selector.dCurlyTail = "toothedSerifless" -selector.dHookTop = "toothlessRoundedSerifless" -selector."dHookTop/hookBottomBase" = "toothlessRoundedSeriflessHBB" - -[prime.d.variants.tailed-serifless] -rank = 4 -description = "`d` with a bottom-right tail, and without serif" -selector.d = "tailedSerifless" -selector."d/sansSerif" = "tailedSerifless" -selector."d/phoneticLeft" = "toothedSerifless" -selector."d/hookBottomBase" = "toothedSerifless" -selector.dCurlyTail = "toothedSerifless" -selector.dHookTop = "tailedSerifless" -selector."dHookTop/hookBottomBase" = "toothedSerifless" - [prime.d.variants.toothed-top-serifed] -rank = 5 +rank = 2 description = "`d` with bottom-right tooth and top serif" selector.d = "toothedTopSerifed" selector."d/sansSerif" = "toothedSerifless" @@ -2094,7 +2061,7 @@ selector.dHookTop = "toothedSerifless" selector."dHookTop/hookBottomBase" = "toothedSerifless" [prime.d.variants.toothed-serifed] -rank = 6 +rank = 3 description = "`d` with serifs" selector.d = "toothedSerifed" selector."d/sansSerif" = "toothedSerifless" @@ -2104,8 +2071,19 @@ selector.dCurlyTail = "toothedTopSerifed" selector.dHookTop = "toothedBottomSerifed" selector."dHookTop/hookBottomBase" = "toothedSerifless" +[prime.d.variants.toothless-corner-serifless] +rank = 4 +description = "`d` without bottom-right tooth, with a corner transition, and without serif" +selector.d = "toothlessCornerSerifless" +selector."d/sansSerif" = "toothlessCornerSerifless" +selector."d/phoneticLeft" = "toothedSerifless" +selector."d/hookBottomBase" = "toothlessCornerSeriflessHBB" +selector.dCurlyTail = "toothedSerifless" +selector.dHookTop = "toothlessCornerSerifless" +selector."dHookTop/hookBottomBase" = "toothlessCornerSeriflessHBB" + [prime.d.variants.toothless-corner-serifed] -rank = 7 +rank = 5 description = "`d` without bottom-right tooth, with a corner transition and top serif" selector.d = "toothlessCornerSerifed" selector."d/sansSerif" = "toothlessCornerSerifless" @@ -2115,8 +2093,19 @@ selector.dCurlyTail = "toothedTopSerifed" selector.dHookTop = "toothlessCornerSerifless" selector."dHookTop/hookBottomBase" = "toothlessCornerSeriflessHBB" +[prime.d.variants.toothless-rounded-serifless] +rank = 6 +description = "`d` without bottom-right tooth, with a rounded transition, and without serif" +selector.d = "toothlessRoundedSerifless" +selector."d/sansSerif" = "toothlessRoundedSerifless" +selector."d/phoneticLeft" = "toothedSerifless" +selector."d/hookBottomBase" = "toothlessRoundedSeriflessHBB" +selector.dCurlyTail = "toothedSerifless" +selector.dHookTop = "toothlessRoundedSerifless" +selector."dHookTop/hookBottomBase" = "toothlessRoundedSeriflessHBB" + [prime.d.variants.toothless-rounded-serifed] -rank = 8 +rank = 7 description = "`d` without bottom-right tooth, with a rounded transition and top serif" selector.d = "toothlessRoundedSerifed" selector."d/sansSerif" = "toothlessRoundedSerifless" @@ -2126,6 +2115,17 @@ selector.dCurlyTail = "toothedTopSerifed" selector.dHookTop = "toothlessRoundedSerifless" selector."dHookTop/hookBottomBase" = "toothlessRoundedSeriflessHBB" +[prime.d.variants.tailed-serifless] +rank = 8 +description = "`d` with a bottom-right tail, and without serif" +selector.d = "tailedSerifless" +selector."d/sansSerif" = "tailedSerifless" +selector."d/phoneticLeft" = "toothedSerifless" +selector."d/hookBottomBase" = "toothedSerifless" +selector.dCurlyTail = "toothedSerifless" +selector.dHookTop = "tailedSerifless" +selector."dHookTop/hookBottomBase" = "toothedSerifless" + [prime.d.variants.tailed-serifed] rank = 9 description = "`d` with a bottom-right tail and top serif" @@ -2758,126 +2758,126 @@ selector."k/sansSerif" = "straightSerifless" selector.kHookTop = "straightSerifless" selector.kDescender = "straightSerifless" -[prime.k.variants.curly-serifless] -rank = 2 -description = "Slightly curly `k`, like Iosevka 2.x, and without serifs" -selector.k = "curlySerifless" -selector."k/sansSerif" = "curlySerifless" -selector.kHookTop = "curlySerifless" -selector.kDescender = "curlySerifless" - -[prime.k.variants.cursive-serifless] -rank = 3 -description = "`k` with a cursive loop, and without serifs" -selector.k = "cursiveSerifless" -selector."k/sansSerif" = "cursiveSerifless" -selector.kHookTop = "cursiveSerifless" -selector.kDescender = "cursiveSerifless" - -[prime.k.variants.diagonal-tailed-cursive-serifless] -rank = 4 -description = "`k` with a cursive loop and diagonal tail, and without serifs" -selector.k = "diagonalTailedSerifedCursiveSerifless" -selector."k/sansSerif" = "diagonalTailedSerifedCursiveSerifless" -selector.kHookTop = "diagonalTailedSerifedCursiveSerifless" -selector.kDescender = "cursiveSerifless" - -[prime.k.variants.symmetric-touching-serifless] -rank = 5 -description = "`k` with symmetric legs touching the vertical bar, and without serifs" -selector.k = "symmetricTouchingSerifless" -selector."k/sansSerif" = "symmetricTouchingSerifless" -selector.kHookTop = "symmetricTouchingSerifless" -selector.kDescender = "symmetricTouchingSerifless" - -[prime.k.variants.symmetric-connected-serifless] -rank = 6 -description = "`k` with symmetric legs connected to the vertical bar, and without serifs" -selector.k = "symmetricConnectedSerifless" -selector."k/sansSerif" = "symmetricConnectedSerifless" -selector.kHookTop = "symmetricConnectedSerifless" -selector.kDescender = "symmetricConnectedSerifless" - [prime.k.variants.straight-top-left-serifed] -rank = 7 +rank = 2 description = "`k` with serifs at top left" selector.k = "straightTopLeftSerifed" selector."k/sansSerif" = "straightSerifless" selector.kHookTop = "straightSerifless" selector.kDescender = "straightTopLeftSerifed" -[prime.k.variants.curly-top-left-serifed] -rank = 8 -description = "Slightly curly `k`, like Iosevka 2.x, with serifs at top left" -selector.k = "curlyTopLeftSerifed" -selector."k/sansSerif" = "curlySerifless" -selector.kHookTop = "curlySerifless" -selector.kDescender = "curlyTopLeftSerifed" - -[prime.k.variants.cursive-top-left-serifed] -rank = 9 -description = "`k` with a cursive loop and serifs at top left" -selector.k = "cursiveTopLeftSerifed" -selector."k/sansSerif" = "cursiveSerifless" -selector.kHookTop = "cursiveSerifless" -selector.kDescender = "cursiveTopLeftSerifed" - -[prime.k.variants.diagonal-tailed-cursive-top-left-serifed] -rank = 10 -description = "`k` with a cursive loop, diagonal tail and serifs at top left" -selector.k = "diagonalTailedSerifedCursiveTopLeftSerifed" -selector."k/sansSerif" = "diagonalTailedSerifedCursiveSerifless" -selector.kHookTop = "diagonalTailedSerifedCursiveSerifless" -selector.kDescender = "cursiveTopLeftSerifed" - -[prime.k.variants.symmetric-touching-top-left-serifed] -rank = 11 -description = "`k` with symmetric legs touching the vertical bar and serifs at top left" -selector.k = "symmetricTouchingTopLeftSerifed" -selector."k/sansSerif" = "symmetricTouchingSerifless" -selector.kHookTop = "symmetricTouchingSerifless" -selector.kDescender = "symmetricTouchingTopLeftSerifed" - -[prime.k.variants.symmetric-connected-top-left-serifed] -rank = 12 -description = "`k` with symmetric legs connected to the vertical bar and serifs at top left" -selector.k = "symmetricConnectedTopLeftSerifed" -selector."k/sansSerif" = "symmetricConnectedSerifless" -selector.kHookTop = "symmetricConnectedSerifless" -selector.kDescender = "symmetricConnectedTopLeftSerifed" - [prime.k.variants.straight-bottom-right-serifed] -rank = 13 +rank = 3 description = "`k` with serifs at bottom right" selector.k = "straightBottomRightSerifed" selector."k/sansSerif" = "straightSerifless" selector.kHookTop = "straightBottomRightSerifed" selector.kDescender = "straightBottomRightSerifed" +[prime.k.variants.straight-top-left-and-bottom-right-serifed] +rank = 4 +description = "`k` with serifs at top left and bottom right" +selector.k = "straightTopLeftAndBottomRightSerifed" +selector."k/sansSerif" = "straightSerifless" +selector.kHookTop = "straightBottomRightSerifed" +selector.kDescender = "straightTopLeftAndBottomRightSerifed" + +[prime.k.variants.straight-serifed] +rank = 5 +description = "`k` with serifs" +selector.k = "straightSerifed" +selector."k/sansSerif" = "straightSerifless" +selector.kHookTop = "straightSerifed" +selector.kDescender = "straightSerifed" + +[prime.k.variants.curly-serifless] +rank = 6 +description = "Slightly curly `k`, like Iosevka 2.x, and without serifs" +selector.k = "curlySerifless" +selector."k/sansSerif" = "curlySerifless" +selector.kHookTop = "curlySerifless" +selector.kDescender = "curlySerifless" + +[prime.k.variants.curly-top-left-serifed] +rank = 7 +description = "Slightly curly `k`, like Iosevka 2.x, with serifs at top left" +selector.k = "curlyTopLeftSerifed" +selector."k/sansSerif" = "curlySerifless" +selector.kHookTop = "curlySerifless" +selector.kDescender = "curlyTopLeftSerifed" + [prime.k.variants.curly-bottom-right-serifed] -rank = 14 +rank = 8 description = "Slightly curly `k`, like Iosevka 2.x, with serifs at bottom right" selector.k = "curlyBottomRightSerifed" selector."k/sansSerif" = "curlySerifless" selector.kHookTop = "curlyBottomRightSerifed" selector.kDescender = "curlyBottomRightSerifed" -[prime.k.variants.cursive-bottom-right-serifed] -rank = 15 -description = "`k` with a cursive loop and serifs at bottom right" -selector.k = "cursiveBottomRightSerifed" -selector."k/sansSerif" = "cursiveSerifless" -selector.kHookTop = "cursiveBottomRightSerifed" -selector.kDescender = "cursiveBottomRightSerifed" +[prime.k.variants.curly-top-left-and-bottom-right-serifed] +rank = 9 +description = "Slightly curly `k`, like Iosevka 2.x, with serifs at top left and bottom right" +selector.k = "curlyTopLeftAndBottomRightSerifed" +selector."k/sansSerif" = "curlySerifless" +selector.kHookTop = "curlyBottomRightSerifed" +selector.kDescender = "curlyTopLeftAndBottomRightSerifed" + +[prime.k.variants.curly-serifed] +rank = 10 +description = "Slightly curly `k`, like Iosevka 2.x, with serifs" +selector.k = "curlySerifed" +selector."k/sansSerif" = "curlySerifless" +selector.kHookTop = "curlySerifed" +selector.kDescender = "curlySerifed" + +[prime.k.variants.symmetric-touching-serifless] +rank = 11 +description = "`k` with symmetric legs touching the vertical bar, and without serifs" +selector.k = "symmetricTouchingSerifless" +selector."k/sansSerif" = "symmetricTouchingSerifless" +selector.kHookTop = "symmetricTouchingSerifless" +selector.kDescender = "symmetricTouchingSerifless" + +[prime.k.variants.symmetric-touching-top-left-serifed] +rank = 12 +description = "`k` with symmetric legs touching the vertical bar and serifs at top left" +selector.k = "symmetricTouchingTopLeftSerifed" +selector."k/sansSerif" = "symmetricTouchingSerifless" +selector.kHookTop = "symmetricTouchingSerifless" +selector.kDescender = "symmetricTouchingTopLeftSerifed" [prime.k.variants.symmetric-touching-bottom-right-serifed] -rank = 16 +rank = 13 description = "`k` with symmetric legs touching the vertical bar and serifs at bottom right" selector.k = "symmetricTouchingBottomRightSerifed" selector."k/sansSerif" = "symmetricTouchingSerifless" selector.kHookTop = "symmetricTouchingBottomRightSerifed" selector.kDescender = "symmetricTouchingBottomRightSerifed" +[prime.k.variants.symmetric-touching-top-left-and-bottom-right-serifed] +rank = 14 +description = "`k` with symmetric legs touching the vertical bar and serifs at top left and bottom right" +selector.k = "symmetricTouchingTopLeftAndBottomRightSerifed" +selector."k/sansSerif" = "symmetricTouchingSerifless" +selector.kHookTop = "symmetricTouchingBottomRightSerifed" +selector.kDescender = "symmetricTouchingTopLeftAndBottomRightSerifed" + +[prime.k.variants.symmetric-touching-serifed] +rank = 15 +description = "`k` with symmetric legs touching the vertical bar and serifs" +selector.k = "symmetricTouchingSerifed" +selector."k/sansSerif" = "symmetricTouchingSerifless" +selector.kHookTop = "symmetricTouchingSerifed" +selector.kDescender = "symmetricTouchingSerifed" + +[prime.k.variants.symmetric-connected-serifless] +rank = 16 +description = "`k` with symmetric legs connected to the vertical bar, and without serifs" +selector.k = "symmetricConnectedSerifless" +selector."k/sansSerif" = "symmetricConnectedSerifless" +selector.kHookTop = "symmetricConnectedSerifless" +selector.kDescender = "symmetricConnectedSerifless" + [prime.k.variants.symmetric-connected-bottom-right-serifed] rank = 17 description = "`k` with symmetric legs connected to the vertical bar and serifs at bottom right" @@ -2886,61 +2886,61 @@ selector."k/sansSerif" = "symmetricConnectedSerifless" selector.kHookTop = "symmetricConnectedBottomRightSerifed" selector.kDescender = "symmetricConnectedBottomRightSerifed" -[prime.k.variants.straight-top-left-and-bottom-right-serifed] +[prime.k.variants.symmetric-connected-top-left-serifed] rank = 18 -description = "`k` with serifs at top left and bottom right" -selector.k = "straightTopLeftAndBottomRightSerifed" -selector."k/sansSerif" = "straightSerifless" -selector.kHookTop = "straightBottomRightSerifed" -selector.kDescender = "straightTopLeftAndBottomRightSerifed" - -[prime.k.variants.curly-top-left-and-bottom-right-serifed] -rank = 19 -description = "Slightly curly `k`, like Iosevka 2.x, with serifs at top left and bottom right" -selector.k = "curlyTopLeftAndBottomRightSerifed" -selector."k/sansSerif" = "curlySerifless" -selector.kHookTop = "curlyBottomRightSerifed" -selector.kDescender = "curlyTopLeftAndBottomRightSerifed" - -[prime.k.variants.cursive-top-left-and-bottom-right-serifed] -rank = 20 -description = "`k` with a cursive loop and serifs at top left and bottom right" -selector.k = "cursiveTopLeftAndBottomRightSerifed" -selector."k/sansSerif" = "cursiveSerifless" -selector.kHookTop = "cursiveBottomRightSerifed" -selector.kDescender = "cursiveTopLeftAndBottomRightSerifed" - -[prime.k.variants.symmetric-touching-top-left-and-bottom-right-serifed] -rank = 21 -description = "`k` with symmetric legs touching the vertical bar and serifs at top left and bottom right" -selector.k = "symmetricTouchingTopLeftAndBottomRightSerifed" -selector."k/sansSerif" = "symmetricTouchingSerifless" -selector.kHookTop = "symmetricTouchingBottomRightSerifed" -selector.kDescender = "symmetricTouchingTopLeftAndBottomRightSerifed" +description = "`k` with symmetric legs connected to the vertical bar and serifs at top left" +selector.k = "symmetricConnectedTopLeftSerifed" +selector."k/sansSerif" = "symmetricConnectedSerifless" +selector.kHookTop = "symmetricConnectedSerifless" +selector.kDescender = "symmetricConnectedTopLeftSerifed" [prime.k.variants.symmetric-connected-top-left-and-bottom-right-serifed] -rank = 22 +rank = 19 description = "`k` with symmetric legs connected to the vertical bar and serifs at top left and bottom right" selector.k = "symmetricConnectedTopLeftAndBottomRightSerifed" selector."k/sansSerif" = "symmetricConnectedSerifless" selector.kHookTop = "symmetricConnectedBottomRightSerifed" selector.kDescender = "symmetricConnectedTopLeftAndBottomRightSerifed" -[prime.k.variants.straight-serifed] -rank = 23 -description = "`k` with serifs" -selector.k = "straightSerifed" -selector."k/sansSerif" = "straightSerifless" -selector.kHookTop = "straightSerifed" -selector.kDescender = "straightSerifed" +[prime.k.variants.symmetric-connected-serifed] +rank = 20 +description = "`k` with symmetric legs connected to the vertical bar and serifs" +selector.k = "symmetricConnectedSerifed" +selector."k/sansSerif" = "symmetricConnectedSerifless" +selector.kHookTop = "symmetricConnectedSerifed" +selector.kDescender = "symmetricConnectedSerifed" -[prime.k.variants.curly-serifed] +[prime.k.variants.cursive-serifless] +rank = 21 +description = "`k` with a cursive loop, and without serifs" +selector.k = "cursiveSerifless" +selector."k/sansSerif" = "cursiveSerifless" +selector.kHookTop = "cursiveSerifless" +selector.kDescender = "cursiveSerifless" + +[prime.k.variants.cursive-top-left-serifed] +rank = 22 +description = "`k` with a cursive loop and serifs at top left" +selector.k = "cursiveTopLeftSerifed" +selector."k/sansSerif" = "cursiveSerifless" +selector.kHookTop = "cursiveSerifless" +selector.kDescender = "cursiveTopLeftSerifed" + +[prime.k.variants.cursive-bottom-right-serifed] +rank = 23 +description = "`k` with a cursive loop and serifs at bottom right" +selector.k = "cursiveBottomRightSerifed" +selector."k/sansSerif" = "cursiveSerifless" +selector.kHookTop = "cursiveBottomRightSerifed" +selector.kDescender = "cursiveBottomRightSerifed" + +[prime.k.variants.cursive-top-left-and-bottom-right-serifed] rank = 24 -description = "Slightly curly `k`, like Iosevka 2.x, with serifs" -selector.k = "curlySerifed" -selector."k/sansSerif" = "curlySerifless" -selector.kHookTop = "curlySerifed" -selector.kDescender = "curlySerifed" +description = "`k` with a cursive loop and serifs at top left and bottom right" +selector.k = "cursiveTopLeftAndBottomRightSerifed" +selector."k/sansSerif" = "cursiveSerifless" +selector.kHookTop = "cursiveBottomRightSerifed" +selector.kDescender = "cursiveTopLeftAndBottomRightSerifed" [prime.k.variants.cursive-serifed] rank = 25 @@ -2950,22 +2950,21 @@ selector."k/sansSerif" = "cursiveSerifless" selector.kHookTop = "cursiveSerifed" selector.kDescender = "cursiveSerifed" -[prime.k.variants.symmetric-touching-serifed] +[prime.k.variants.diagonal-tailed-cursive-serifless] rank = 26 -description = "`k` with symmetric legs touching the vertical bar and serifs" -selector.k = "symmetricTouchingSerifed" -selector."k/sansSerif" = "symmetricTouchingSerifless" -selector.kHookTop = "symmetricTouchingSerifed" -selector.kDescender = "symmetricTouchingSerifed" +description = "`k` with a cursive loop and diagonal tail, and without serifs" +selector.k = "diagonalTailedSerifedCursiveSerifless" +selector."k/sansSerif" = "diagonalTailedSerifedCursiveSerifless" +selector.kHookTop = "diagonalTailedSerifedCursiveSerifless" +selector.kDescender = "cursiveSerifless" -[prime.k.variants.symmetric-connected-serifed] +[prime.k.variants.diagonal-tailed-cursive-top-left-serifed] rank = 27 -description = "`k` with symmetric legs connected to the vertical bar and serifs" -selector.k = "symmetricConnectedSerifed" -selector."k/sansSerif" = "symmetricConnectedSerifless" -selector.kHookTop = "symmetricConnectedSerifed" -selector.kDescender = "symmetricConnectedSerifed" - +description = "`k` with a cursive loop, diagonal tail and serifs at top left" +selector.k = "diagonalTailedSerifedCursiveTopLeftSerifed" +selector."k/sansSerif" = "diagonalTailedSerifedCursiveSerifless" +selector.kHookTop = "diagonalTailedSerifedCursiveSerifless" +selector.kDescender = "cursiveTopLeftSerifed" [prime.l] @@ -3142,17 +3141,26 @@ selector."m/sansSerif" = "normal" selector."cyrl/te.italic" = "normal" selector.mLTail = "normal" -[prime.m.variants.short-leg] +[prime.m.variants.top-left-serifed] rank = 2 -description = "`m` with shorter middle leg, like Ubuntu Mono" -selector.m = "shortLeg" -selector."m/tailless" = "shortLeg" -selector."m/sansSerif" = "shortLeg" -selector."cyrl/te.italic" = "normal" -selector.mLTail = "shortLeg" +description = "`m` with serif at top left, normal middle leg touching baseline" +selector.m = "topLeftSerifed" +selector."m/tailless" = "topLeftSerifed" +selector."m/sansSerif" = "normal" +selector."cyrl/te.italic" = "topLeftSerifed" +selector.mLTail = "topLeftSerifed" + +[prime.m.variants.top-left-and-bottom-right-serifed] +rank = 3 +description = "`m` with serifs at top left and bottom right, normal middle leg touching baseline" +selector.m = "topLeftAndBottomRightSerifed" +selector."m/tailless" = "topLeftAndBottomRightSerifed" +selector."m/sansSerif" = "normal" +selector."cyrl/te.italic" = "topLeftAndBottomRightSerifed" +selector.mLTail = "topLeftSerifed" [prime.m.variants.tailed] -rank = 3 +rank = 4 description = "`m` with normal middle leg, touching the baseline, and a curly tail" selector.m = "tailed" selector."m/tailless" = "normal" @@ -3160,17 +3168,17 @@ selector."m/sansSerif" = "tailed" selector."cyrl/te.italic" = "tailed" selector.mLTail = "normal" -[prime.m.variants.short-leg-tailed] -rank = 4 -description = "`m` with shorter middle leg, like Ubuntu Mono, and a curly tail" -selector.m = "shortLegTailed" -selector."m/tailless" = "shortLeg" -selector."m/sansSerif" = "shortLegTailed" -selector."cyrl/te.italic" = "tailed" -selector.mLTail = "shortLeg" +[prime.m.variants.tailed-top-left-serifed] +rank = 5 +description = "`m` with serif at top left, normal middle leg touching baseline, and a curly tail" +selector.m = "topLeftSerifedTailed" +selector."m/tailless" = "topLeftSerifed" +selector."m/sansSerif" = "tailed" +selector."cyrl/te.italic" = "topLeftSerifedTailed" +selector.mLTail = "topLeftSerifed" [prime.m.variants.earless-corner-double-arch] -rank = 5 +rank = 6 description = "Earless (corner top-left) `m` with normal middle leg touching baseline" selector.m = "earlessCornerDoubleArch" selector."m/tailless" = "earlessCornerDoubleArch" @@ -3178,15 +3186,6 @@ selector."m/sansSerif" = "earlessCornerDoubleArch" selector."cyrl/te.italic" = "normal" selector.mLTail = "earlessCornerDoubleArch" -[prime.m.variants.earless-corner-double-arch-short-leg] -rank = 6 -description = "Earless (corner top-left) `m` with a shorter middle leg like Ubuntu Mono" -selector.m = "earlessCornerDoubleArchShortLeg" -selector."m/tailless" = "earlessCornerDoubleArchShortLeg" -selector."m/sansSerif" = "earlessCornerDoubleArchShortLeg" -selector."cyrl/te.italic" = "normal" -selector.mLTail = "earlessCornerDoubleArchShortLeg" - [prime.m.variants.earless-corner-double-arch-tailed] rank = 7 description = "Earless (corner top-left) `m` with normal middle leg touching baseline, and a curly tail" @@ -3196,17 +3195,8 @@ selector."m/sansSerif" = "earlessCornerDoubleArchTailed" selector."cyrl/te.italic" = "tailed" selector.mLTail = "earlessCornerDoubleArch" -[prime.m.variants.earless-corner-double-arch-short-leg-tailed] -rank = 8 -description = "Earless (corner top-left) `m` with a shorter middle leg like Ubuntu Mono, and a curly tail" -selector.m = "earlessCornerDoubleArchShortLegTailed" -selector."m/tailless" = "earlessCornerDoubleArchShortLeg" -selector."m/sansSerif" = "earlessCornerDoubleArchShortLegTailed" -selector."cyrl/te.italic" = "tailed" -selector.mLTail = "earlessCornerDoubleArchShortLeg" - [prime.m.variants.earless-rounded-double-arch] -rank = 9 +rank = 8 description = "Earless (rounded top-left) `m` with normal middle leg touching baseline" selector.m = "earlessRoundedDoubleArch" selector."m/tailless" = "earlessRoundedDoubleArch" @@ -3214,17 +3204,8 @@ selector."m/sansSerif" = "earlessRoundedDoubleArch" selector."cyrl/te.italic" = "normal" selector.mLTail = "earlessRoundedDoubleArch" -[prime.m.variants.earless-rounded-double-arch-short-leg] -rank = 10 -description = "Earless (rounded top-left) `m` with a shorter middle leg like Ubuntu Mono" -selector.m = "earlessRoundedDoubleArchShortLeg" -selector."m/tailless" = "earlessRoundedDoubleArchShortLeg" -selector."m/sansSerif" = "earlessRoundedDoubleArchShortLeg" -selector."cyrl/te.italic" = "normal" -selector.mLTail = "earlessRoundedDoubleArchShortLeg" - [prime.m.variants.earless-rounded-double-arch-tailed] -rank = 11 +rank = 9 description = "Earless (rounded top-left) `m` with normal middle leg touching baseline, and a curly tail" selector.m = "earlessRoundedDoubleArchTailed" selector."m/tailless" = "earlessRoundedDoubleArch" @@ -3232,17 +3213,8 @@ selector."m/sansSerif" = "earlessRoundedDoubleArchTailed" selector."cyrl/te.italic" = "tailed" selector.mLTail = "earlessRoundedDoubleArch" -[prime.m.variants.earless-rounded-double-arch-short-leg-tailed] -rank = 12 -description = "Earless (rounded top-left) `m` with a shorter middle leg like Ubuntu Mono, and a curly tail" -selector.m = "earlessRoundedDoubleArchShortLegTailed" -selector."m/tailless" = "earlessRoundedDoubleArchShortLeg" -selector."m/sansSerif" = "earlessRoundedDoubleArchShortLegTailed" -selector."cyrl/te.italic" = "tailed" -selector.mLTail = "earlessRoundedDoubleArchShortLeg" - [prime.m.variants.earless-single-arch] -rank = 13 +rank = 10 description = "Earless (single-arch) `m` with normal middle leg touching baseline" selector.m = "earlessSingleArch" selector."m/tailless" = "earlessSingleArch" @@ -3250,17 +3222,8 @@ selector."m/sansSerif" = "earlessSingleArch" selector."cyrl/te.italic" = "normal" selector.mLTail = "earlessSingleArch" -[prime.m.variants.earless-single-arch-short-leg] -rank = 14 -description = "Earless (single-arch) `m` with a shorter middle leg like Ubuntu Mono" -selector.m = "earlessSingleArchShortLeg" -selector."m/tailless" = "earlessSingleArchShortLeg" -selector."m/sansSerif" = "earlessSingleArchShortLeg" -selector."cyrl/te.italic" = "normal" -selector.mLTail = "earlessSingleArchShortLeg" - [prime.m.variants.earless-single-arch-tailed] -rank = 15 +rank = 11 description = "Earless (single-arch) `m` with normal middle leg touching baseline, and a curly tail" selector.m = "earlessSingleArchTailed" selector."m/tailless" = "earlessSingleArch" @@ -3268,26 +3231,17 @@ selector."m/sansSerif" = "earlessSingleArchTailed" selector."cyrl/te.italic" = "tailed" selector.mLTail = "earlessSingleArch" -[prime.m.variants.earless-single-arch-short-leg-tailed] -rank = 16 -description = "Earless (single-arch) `m` with a shorter middle leg like Ubuntu Mono, and a curly tail" -selector.m = "earlessSingleArchShortLegTailed" -selector."m/tailless" = "earlessSingleArchShortLeg" -selector."m/sansSerif" = "earlessSingleArchShortLegTailed" -selector."cyrl/te.italic" = "tailed" -selector.mLTail = "earlessSingleArchShortLeg" - -[prime.m.variants.top-left-serifed] -rank = 17 -description = "`m` with serif at top left, normal middle leg touching baseline" -selector.m = "topLeftSerifed" -selector."m/tailless" = "topLeftSerifed" -selector."m/sansSerif" = "normal" -selector."cyrl/te.italic" = "topLeftSerifed" -selector.mLTail = "topLeftSerifed" +[prime.m.variants.short-leg] +rank = 12 +description = "`m` with shorter middle leg, like Ubuntu Mono" +selector.m = "shortLeg" +selector."m/tailless" = "shortLeg" +selector."m/sansSerif" = "shortLeg" +selector."cyrl/te.italic" = "normal" +selector.mLTail = "shortLeg" [prime.m.variants.short-leg-top-left-serifed] -rank = 18 +rank = 13 description = "`m` with serif at top left, a shorter middle leg like Ubuntu Mono" selector.m = "shortLegTopLeftSerifed" selector."m/tailless" = "shortLegTopLeftSerifed" @@ -3295,17 +3249,8 @@ selector."m/sansSerif" = "shortLeg" selector."cyrl/te.italic" = "topLeftSerifed" selector.mLTail = "shortLegTopLeftSerifed" -[prime.m.variants.tailed-top-left-serifed] -rank = 19 -description = "`m` with serif at top left, normal middle leg touching baseline, and a curly tail" -selector.m = "topLeftSerifedTailed" -selector."m/tailless" = "topLeftSerifed" -selector."m/sansSerif" = "tailed" -selector."cyrl/te.italic" = "topLeftSerifedTailed" -selector.mLTail = "topLeftSerifed" - [prime.m.variants.short-leg-tailed-top-left-serifed] -rank = 20 +rank = 14 description = "`m` with serif at top left, a shorter middle leg like Ubuntu Mono, and a curly tail" selector.m = "shortLegTopLeftSerifedTailed" selector."m/tailless" = "shortLegTopLeftSerifed" @@ -3313,17 +3258,17 @@ selector."m/sansSerif" = "shortLegTailed" selector."cyrl/te.italic" = "topLeftSerifedTailed" selector.mLTail = "shortLegTopLeftSerifed" -[prime.m.variants.top-left-and-bottom-right-serifed] -rank = 21 -description = "`m` with serifs at top left and bottom right, normal middle leg touching baseline" -selector.m = "topLeftAndBottomRightSerifed" -selector."m/tailless" = "topLeftAndBottomRightSerifed" -selector."m/sansSerif" = "normal" -selector."cyrl/te.italic" = "topLeftAndBottomRightSerifed" -selector.mLTail = "topLeftSerifed" +[prime.m.variants.short-leg-tailed] +rank = 15 +description = "`m` with shorter middle leg, like Ubuntu Mono, and a curly tail" +selector.m = "shortLegTailed" +selector."m/tailless" = "shortLeg" +selector."m/sansSerif" = "shortLegTailed" +selector."cyrl/te.italic" = "tailed" +selector.mLTail = "shortLeg" [prime.m.variants.short-leg-top-left-and-bottom-right-serifed] -rank = 22 +rank = 16 description = "`m` with serifs at top left and bottom right, a shorter middle leg like Ubuntu Mono" selector.m = "shortLegTopLeftAndBottomRightSerifed" selector."m/tailless" = "shortLegTopLeftAndBottomRightSerifed" @@ -3331,6 +3276,60 @@ selector."m/sansSerif" = "shortLeg" selector."cyrl/te.italic" = "topLeftAndBottomRightSerifed" selector.mLTail = "shortLegTopLeftSerifed" +[prime.m.variants.earless-corner-double-arch-short-leg] +rank = 17 +description = "Earless (corner top-left) `m` with a shorter middle leg like Ubuntu Mono" +selector.m = "earlessCornerDoubleArchShortLeg" +selector."m/tailless" = "earlessCornerDoubleArchShortLeg" +selector."m/sansSerif" = "earlessCornerDoubleArchShortLeg" +selector."cyrl/te.italic" = "normal" +selector.mLTail = "earlessCornerDoubleArchShortLeg" + +[prime.m.variants.earless-corner-double-arch-short-leg-tailed] +rank = 18 +description = "Earless (corner top-left) `m` with a shorter middle leg like Ubuntu Mono, and a curly tail" +selector.m = "earlessCornerDoubleArchShortLegTailed" +selector."m/tailless" = "earlessCornerDoubleArchShortLeg" +selector."m/sansSerif" = "earlessCornerDoubleArchShortLegTailed" +selector."cyrl/te.italic" = "tailed" +selector.mLTail = "earlessCornerDoubleArchShortLeg" + +[prime.m.variants.earless-rounded-double-arch-short-leg] +rank = 19 +description = "Earless (rounded top-left) `m` with a shorter middle leg like Ubuntu Mono" +selector.m = "earlessRoundedDoubleArchShortLeg" +selector."m/tailless" = "earlessRoundedDoubleArchShortLeg" +selector."m/sansSerif" = "earlessRoundedDoubleArchShortLeg" +selector."cyrl/te.italic" = "normal" +selector.mLTail = "earlessRoundedDoubleArchShortLeg" + +[prime.m.variants.earless-rounded-double-arch-short-leg-tailed] +rank = 20 +description = "Earless (rounded top-left) `m` with a shorter middle leg like Ubuntu Mono, and a curly tail" +selector.m = "earlessRoundedDoubleArchShortLegTailed" +selector."m/tailless" = "earlessRoundedDoubleArchShortLeg" +selector."m/sansSerif" = "earlessRoundedDoubleArchShortLegTailed" +selector."cyrl/te.italic" = "tailed" +selector.mLTail = "earlessRoundedDoubleArchShortLeg" + +[prime.m.variants.earless-single-arch-short-leg] +rank = 21 +description = "Earless (single-arch) `m` with a shorter middle leg like Ubuntu Mono" +selector.m = "earlessSingleArchShortLeg" +selector."m/tailless" = "earlessSingleArchShortLeg" +selector."m/sansSerif" = "earlessSingleArchShortLeg" +selector."cyrl/te.italic" = "normal" +selector.mLTail = "earlessSingleArchShortLeg" + +[prime.m.variants.earless-single-arch-short-leg-tailed] +rank = 22 +description = "Earless (single-arch) `m` with a shorter middle leg like Ubuntu Mono, and a curly tail" +selector.m = "earlessSingleArchShortLegTailed" +selector."m/tailless" = "earlessSingleArchShortLeg" +selector."m/sansSerif" = "earlessSingleArchShortLegTailed" +selector."cyrl/te.italic" = "tailed" +selector.mLTail = "earlessSingleArchShortLeg" + [prime.n] @@ -3348,8 +3347,32 @@ selector."eng/phoneticRight" = "straight" selector."cyrl/pe.italic" = "straight" selector."cyrl/peItalicDescBase" = "straight" -[prime.n.variants.tailed] +[prime.n.variants.straight-motion-serifed] rank = 2 +description = "`n` with motion serifs and straight ending" +selector.n = "straightMotionSerifed" +selector."n/sansSerif" = "straight" +selector."n/descBase" = "straightTopLeftSerifed" +selector.eng = "straightTopLeftSerifed" +selector."eng/phoneticRight" = "straightTopLeftSerifed" +selector."cyrl/pe.italic" = "straightMotionSerifed" +selector."cyrl/peItalicDescBase" = "straightMotionSerifed" + + +[prime.n.variants.straight-top-left-serifed] +rank = 3 +description = "`n` with motion serifs at top left and straight ending" +selector.n = "straightTopLeftSerifed" +selector."n/sansSerif" = "straight" +selector."n/descBase" = "straightTopLeftSerifed" +selector.eng = "straightTopLeftSerifed" +selector."eng/phoneticRight" = "straightTopLeftSerifed" +selector."cyrl/pe.italic" = "straightTopLeftSerifed" +selector."cyrl/peItalicDescBase" = "straightMotionSerifed" + + +[prime.n.variants.tailed] +rank = 4 description = "`n` with a curly tail" selector.n = "tailed" selector."n/sansSerif" = "tailed" @@ -3359,8 +3382,20 @@ selector."eng/phoneticRight" = "straight" selector."cyrl/pe.italic" = "tailed" selector."cyrl/peItalicDescBase" = "straight" +[prime.n.variants.tailed-motion-serifed] +rank = 5 +description = "`n` with motion serifs and a curly tail" +selector.n = "tailedMotionSerifed" +selector."n/sansSerif" = "tailed" +selector."n/descBase" = "straightTopLeftSerifed" +selector.eng = "straightTopLeftSerifed" +selector."eng/phoneticRight" = "straightTopLeftSerifed" +selector."cyrl/pe.italic" = "tailedMotionSerifed" +selector."cyrl/peItalicDescBase" = "straightMotionSerifed" + + [prime.n.variants.earless-corner-straight] -rank = 3 +rank = 6 description = "Earless (corner top-left) `n` with straight ending" selector.n = "earlessCornerStraight" selector."n/sansSerif" = "earlessCornerStraight" @@ -3371,7 +3406,7 @@ selector."cyrl/pe.italic" = "straight" selector."cyrl/peItalicDescBase" = "straight" [prime.n.variants.earless-corner-tailed] -rank = 4 +rank = 7 description = "Earless (corner top-left) `n` with a curly tail" selector.n = "earlessCornerTailed" selector."n/sansSerif" = "earlessCornerTailed" @@ -3382,7 +3417,7 @@ selector."cyrl/pe.italic" = "tailed" selector."cyrl/peItalicDescBase" = "straight" [prime.n.variants.earless-rounded-straight] -rank = 5 +rank = 8 description = "Earless (rounded top-left) `n` with straight ending" selector.n = "earlessRoundedStraight" selector."n/sansSerif" = "earlessRoundedStraight" @@ -3393,7 +3428,7 @@ selector."cyrl/pe.italic" = "straight" selector."cyrl/peItalicDescBase" = "straight" [prime.n.variants.earless-rounded-tailed] -rank = 6 +rank = 9 description = "Earless (rounded top-left) `n` with a curly tail" selector.n = "earlessRoundedTailed" selector."n/sansSerif" = "earlessRoundedTailed" @@ -3403,39 +3438,6 @@ selector."eng/phoneticRight" = "earlessRoundedStraightHTB" selector."cyrl/pe.italic" = "tailed" selector."cyrl/peItalicDescBase" = "straight" -[prime.n.variants.straight-motion-serifed] -rank = 7 -description = "`n` with motion serifs and straight ending" -selector.n = "straightMotionSerifed" -selector."n/sansSerif" = "straight" -selector."n/descBase" = "straightTopLeftSerifed" -selector.eng = "straightTopLeftSerifed" -selector."eng/phoneticRight" = "straightTopLeftSerifed" -selector."cyrl/pe.italic" = "straightMotionSerifed" -selector."cyrl/peItalicDescBase" = "straightMotionSerifed" - -[prime.n.variants.tailed-motion-serifed] -rank = 8 -description = "`n` with motion serifs and a curly tail" -selector.n = "tailedMotionSerifed" -selector."n/sansSerif" = "tailed" -selector."n/descBase" = "straightTopLeftSerifed" -selector.eng = "straightTopLeftSerifed" -selector."eng/phoneticRight" = "straightTopLeftSerifed" -selector."cyrl/pe.italic" = "tailedMotionSerifed" -selector."cyrl/peItalicDescBase" = "straightMotionSerifed" - -[prime.n.variants.straight-top-left-serifed] -rank = 9 -description = "`n` with motion serifs at top left and straight ending" -selector.n = "straightTopLeftSerifed" -selector."n/sansSerif" = "straight" -selector."n/descBase" = "straightTopLeftSerifed" -selector.eng = "straightTopLeftSerifed" -selector."eng/phoneticRight" = "straightTopLeftSerifed" -selector."cyrl/pe.italic" = "straightTopLeftSerifed" -selector."cyrl/peItalicDescBase" = "straightMotionSerifed" - [prime.p] @@ -3483,24 +3485,8 @@ selector."q/sansSerif" = "straight" selector.qRTail = "straight" selector.qHookTop = "straight" -[prime.q.variants.earless-corner] -rank = 2 -description = "Earless (cornered top-left) single-storey `q`" -selector.q = "earlessCorner" -selector."q/sansSerif" = "earlessCorner" -selector.qRTail = "earlessCorner" -selector.qHookTop = "straight" - -[prime.q.variants.earless-rounded] -rank = 3 -description = "Earless (rounded top-left) single-storey `q`" -selector.q = "earlessRounded" -selector."q/sansSerif" = "earlessRounded" -selector.qRTail = "earlessRounded" -selector.qHookTop = "straight" - [prime.q.variants.straight-motion-serifed] -rank = 4 +rank = 2 description = "`q` with straight bar and motion serifs" selector.q = "straightMotionSerifed" selector."q/sansSerif" = "straight" @@ -3508,31 +3494,15 @@ selector.qRTail = "straightMotionSerifed" selector.qHookTop = "straight" [prime.q.variants.tailed] -rank = 5 +rank = 3 description = "`q` with tail" selector.q = "tailed" selector."q/sansSerif" = "tailed" selector.qRTail = "straight" selector.qHookTop = "tailed" -[prime.q.variants.earless-corner-tailed] -rank = 6 -description = "Earless (cornered top-left) single-storey `q` with curly tail" -selector.q = "earlessCornerTailed" -selector."q/sansSerif" = "earlessCornerTailed" -selector.qRTail = "earlessCorner" -selector.qHookTop = "tailed" - -[prime.q.variants.earless-rounded-tailed] -rank = 7 -description = "Earless (rounded top-left) single-storey `q` with curly tail" -selector.q = "earlessRoundedTailed" -selector."q/sansSerif" = "earlessRoundedTailed" -selector.qRTail = "earlessRounded" -selector.qHookTop = "tailed" - [prime.q.variants.tailed-motion-serifed] -rank = 8 +rank = 4 description = "`q` with tail and motion serifs" selector.q = "tailedMotionSerifed" selector."q/sansSerif" = "tailed" @@ -3540,37 +3510,69 @@ selector.qRTail = "straightMotionSerifed" selector.qHookTop = "tailed" [prime.q.variants.diagonal-tailed] -rank = 9 +rank = 5 description = "`q` with diagonal tail" selector.q = "diagonalTailed" selector."q/sansSerif" = "diagonalTailed" selector.qRTail = "straight" selector.qHookTop = "diagonalTailed" +[prime.q.variants.diagonal-tailed-motion-serifed] +rank = 6 +description = "`q` with diagonal tail and motion serifs" +selector.q = "diagonalTailedMotionSerifed" +selector."q/sansSerif" = "diagonalTailed" +selector.qRTail = "straightMotionSerifed" +selector.qHookTop = "diagonalTailed" + +[prime.q.variants.earless-corner] +rank = 7 +description = "Earless (cornered top-left) single-storey `q`" +selector.q = "earlessCorner" +selector."q/sansSerif" = "earlessCorner" +selector.qRTail = "earlessCorner" +selector.qHookTop = "straight" + +[prime.q.variants.earless-corner-tailed] +rank = 8 +description = "Earless (cornered top-left) single-storey `q` with curly tail" +selector.q = "earlessCornerTailed" +selector."q/sansSerif" = "earlessCornerTailed" +selector.qRTail = "earlessCorner" +selector.qHookTop = "tailed" + [prime.q.variants.earless-corner-diagonal-tailed] -rank = 10 +rank = 9 description = "Earless (cornered top-left) single-storey `q` with curly diagonal tail" selector.q = "earlessCornerDiagonalTailed" selector."q/sansSerif" = "earlessCornerDiagonalTailed" selector.qRTail = "earlessCorner" selector.qHookTop = "diagonalTailed" -[prime.q.variants.earless-rounded-diagonal-tailed] +[prime.q.variants.earless-rounded] +rank = 10 +description = "Earless (rounded top-left) single-storey `q`" +selector.q = "earlessRounded" +selector."q/sansSerif" = "earlessRounded" +selector.qRTail = "earlessRounded" +selector.qHookTop = "straight" + +[prime.q.variants.earless-rounded-tailed] rank = 11 +description = "Earless (rounded top-left) single-storey `q` with curly tail" +selector.q = "earlessRoundedTailed" +selector."q/sansSerif" = "earlessRoundedTailed" +selector.qRTail = "earlessRounded" +selector.qHookTop = "tailed" + +[prime.q.variants.earless-rounded-diagonal-tailed] +rank = 12 description = "Earless (rounded top-left) single-storey `q` with curly diagonal tail" selector.q = "earlessRoundedDiagonalTailed" selector."q/sansSerif" = "earlessRoundedDiagonalTailed" selector.qRTail = "earlessRounded" selector.qHookTop = "diagonalTailed" -[prime.q.variants.diagonal-tailed-motion-serifed] -rank = 12 -description = "`q` with diagonal tail and motion serifs" -selector.q = "diagonalTailedMotionSerifed" -selector."q/sansSerif" = "diagonalTailed" -selector.qRTail = "straightMotionSerifed" -selector.qHookTop = "diagonalTailed" - [prime.r] sampler = "r" @@ -4017,31 +4019,31 @@ selector."cyrl/dzhe.italic" = "toothed" selector."cyrl/tse.italic" = "toothed" selector."ue/u" = "toothed" -[prime.u.variants.toothless-corner] +[prime.u.variants.motion-serifed] rank = 2 -description = "Toothless (corner bottom-right) `u`" -selector.u = "toothlessCorner" -selector."u/sansSerif" = "toothlessCorner" -selector."u/uRTailBase" = "urtBase" -selector."cyrl/i.italic" = "toothed" -selector."cyrl/sha.italic" = "toothed" -selector."cyrl/shcha.italic" = "toothed" -selector."cyrl/i.italic.reduced" = "toothed" -selector."cyrl/dzhe.italic" = "toothed" -selector."cyrl/tse.italic" = "toothed" -selector."ue/u" = "toothed" +description = "Normal `u` with right bar and motion serifs" +selector.u = "motionSerifed" +selector."u/sansSerif" = "toothed" +selector."u/uRTailBase" = "urtBaseMotionSerifed" +selector."cyrl/i.italic" = "motionSerifed" +selector."cyrl/sha.italic" = "motionSerifed" +selector."cyrl/shcha.italic" = "motionSerifed" +selector."cyrl/i.italic.reduced" = "motionSerifed" +selector."cyrl/dzhe.italic" = "motionSerifed" +selector."cyrl/tse.italic" = "motionSerifed" +selector."ue/u" = "motionSerifed" -[prime.u.variants.toothless-rounded] +[prime.u.variants.bottom-right-serifed] rank = 3 -description = "Toothless (rounded) `u`, like a smaller uppercase `U`" -selector.u = "toothlessRounded" -selector."u/sansSerif" = "toothlessRounded" -selector."u/uRTailBase" = "urtBase" -selector."cyrl/i.italic" = "toothed" -selector."cyrl/sha.italic" = "toothed" +description = "`u` with right bar and a slightly curly tail" +selector.u = "bottomRightSerifed" +selector."u/sansSerif" = "toothed" +selector."u/uRTailBase" = "urtBaseSerifless" +selector."cyrl/i.italic" = "bottomRightSerifed" +selector."cyrl/sha.italic" = "bottomRightSerifed" selector."cyrl/shcha.italic" = "toothed" selector."cyrl/i.italic.reduced" = "toothed" -selector."cyrl/dzhe.italic" = "toothed" +selector."cyrl/dzhe.italic" = "bottomRightSerifed" selector."cyrl/tse.italic" = "toothed" selector."ue/u" = "toothed" @@ -4059,22 +4061,8 @@ selector."cyrl/dzhe.italic" = "tailed" selector."cyrl/tse.italic" = "toothed" selector."ue/u" = "toothed" -[prime.u.variants.motion-serifed] -rank = 5 -description = "Normal `u` with right bar and motion serifs" -selector.u = "motionSerifed" -selector."u/sansSerif" = "toothed" -selector."u/uRTailBase" = "urtBaseMotionSerifed" -selector."cyrl/i.italic" = "motionSerifed" -selector."cyrl/sha.italic" = "motionSerifed" -selector."cyrl/shcha.italic" = "motionSerifed" -selector."cyrl/i.italic.reduced" = "motionSerifed" -selector."cyrl/dzhe.italic" = "motionSerifed" -selector."cyrl/tse.italic" = "motionSerifed" -selector."ue/u" = "motionSerifed" - [prime.u.variants.tailed-motion-serifed] -rank = 6 +rank = 5 description = "`u` with right bar, motion serifs and a slightly curly tail" selector.u = "tailedMotionSerifed" selector."u/sansSerif" = "tailed" @@ -4087,6 +4075,20 @@ selector."cyrl/dzhe.italic" = "tailedMotionSerifed" selector."cyrl/tse.italic" = "motionSerifed" selector."ue/u" = "motionSerifed" +[prime.u.variants.toothless-corner] +rank = 6 +description = "Toothless (corner bottom-right) `u`" +selector.u = "toothlessCorner" +selector."u/sansSerif" = "toothlessCorner" +selector."u/uRTailBase" = "urtBase" +selector."cyrl/i.italic" = "toothed" +selector."cyrl/sha.italic" = "toothed" +selector."cyrl/shcha.italic" = "toothed" +selector."cyrl/i.italic.reduced" = "toothed" +selector."cyrl/dzhe.italic" = "toothed" +selector."cyrl/tse.italic" = "toothed" +selector."ue/u" = "toothed" + [prime.u.variants.toothless-corner-motion-serifed] rank = 7 description = "Toothless (corner bottom-right) `u` with motion serifs" @@ -4101,8 +4103,22 @@ selector."cyrl/dzhe.italic" = "motionSerifed" selector."cyrl/tse.italic" = "motionSerifed" selector."ue/u" = "motionSerifed" -[prime.u.variants.toothless-rounded-motion-serifed] +[prime.u.variants.toothless-rounded] rank = 8 +description = "Toothless (rounded) `u`, like a smaller uppercase `U`" +selector.u = "toothlessRounded" +selector."u/sansSerif" = "toothlessRounded" +selector."u/uRTailBase" = "urtBase" +selector."cyrl/i.italic" = "toothed" +selector."cyrl/sha.italic" = "toothed" +selector."cyrl/shcha.italic" = "toothed" +selector."cyrl/i.italic.reduced" = "toothed" +selector."cyrl/dzhe.italic" = "toothed" +selector."cyrl/tse.italic" = "toothed" +selector."ue/u" = "toothed" + +[prime.u.variants.toothless-rounded-motion-serifed] +rank = 9 description = "Toothless (rounded) `u` with motion serifs" selector.u = "toothlessRoundedMotionSerifed" selector."u/sansSerif" = "toothlessRounded" @@ -4115,20 +4131,6 @@ selector."cyrl/dzhe.italic" = "motionSerifed" selector."cyrl/tse.italic" = "motionSerifed" selector."ue/u" = "motionSerifed" -[prime.u.variants.bottom-right-serifed] -rank = 9 -description = "`u` with right bar and a slightly curly tail" -selector.u = "bottomRightSerifed" -selector."u/sansSerif" = "toothed" -selector."u/uRTailBase" = "urtBaseSerifless" -selector."cyrl/i.italic" = "bottomRightSerifed" -selector."cyrl/sha.italic" = "bottomRightSerifed" -selector."cyrl/shcha.italic" = "toothed" -selector."cyrl/i.italic.reduced" = "toothed" -selector."cyrl/dzhe.italic" = "bottomRightSerifed" -selector."cyrl/tse.italic" = "toothed" -selector."ue/u" = "toothed" - [prime.v] @@ -4142,34 +4144,34 @@ selector.v = "straight" selector."v/sansSerif" = "straight" selector."v/nonCursive" = "straight" -[prime.v.variants.curly] -rank = 2 -description = "Slightly curly `v`, like Iosevka 2.x" -selector.v = "curly" -selector."v/sansSerif" = "curly" -selector."v/nonCursive" = "curly" - -[prime.v.variants.cursive] -rank = 3 -description = "Cursive `v`" -selector.v = "cursive" -selector."v/sansSerif" = "cursive" -selector."v/nonCursive" = "straight" - [prime.v.variants.straight-motion-serifed] -rank = 4 +rank = 2 description = "Standard, straight `v`, with motion serifs" selector.v = "straightMotionSerifed" selector."v/sansSerif" = "straight" selector."v/nonCursive" = "straightMotionSerifed" +[prime.v.variants.curly] +rank = 3 +description = "Slightly curly `v`, like Iosevka 2.x" +selector.v = "curly" +selector."v/sansSerif" = "curly" +selector."v/nonCursive" = "curly" + [prime.v.variants.curly-motion-serifed] -rank = 5 +rank = 4 description = "Slightly curly `v`, like Iosevka 2.x, with motion serifs" selector.v = "curlyMotionSerifed" selector."v/sansSerif" = "curly" selector."v/nonCursive" = "curlyMotionSerifed" +[prime.v.variants.cursive] +rank = 5 +description = "Cursive `v`" +selector.v = "cursive" +selector."v/sansSerif" = "cursive" +selector."v/nonCursive" = "straight" + [prime.v.variants.cursive-serifed] rank = 6 description = "Cursive `v` with motion serifs" @@ -4190,90 +4192,90 @@ selector.w = "straight" selector."w/sansSerif" = "straight" selector.wHookTop = "straight" -[prime.w.variants.curly] -rank = 2 -description = "Slightly curly `w`, like Iosevka 2.x" -selector.w = "curly" -selector."w/sansSerif" = "curly" -selector.wHookTop = "curly" - -[prime.w.variants.straight-flat-top] -rank = 3 -description = "Standard, straight `w`, and the middle is forced to be aligned the top" -selector.w = "straightFlatTop" -selector."w/sansSerif" = "straightFlatTop" -selector.wHookTop = "straightFlatTop" - -[prime.w.variants.straight-double-v] -rank = 4 -description = "Straight `w` looks like double V" -selector.w = "straightDoubleV" -selector."w/sansSerif" = "straightDoubleV" -selector.wHookTop = "straightDoubleV" - -[prime.w.variants.straight-asymmetric] -rank = 5 -description = "Straight `w` looks asymmetric" -selector.w = "straightAsymmetric" -selector."w/sansSerif" = "straightAsymmetric" -selector.wHookTop = "straightAsymmetric" - -[prime.w.variants.straight-vertical-sides] -rank = 6 -description = "Straight `w` with vertical sides" -selector.w = "straightVerticalSides" -selector."w/sansSerif" = "straightVerticalSides" -selector.wHookTop = "straightVerticalSides" - -[prime.w.variants.cursive] -rank = 7 -description = "Cursive `w`" -selector.w = "cursive" -selector."w/sansSerif" = "cursive" -selector.wHookTop = "cursive" - [prime.w.variants.straight-motion-serifed] -rank = 8 +rank = 2 description = "Standard, straight `w`, with motion serifs" selector.w = "straightMotionSerifed" selector."w/sansSerif" = "straight" selector.wHookTop = "straightMotionSerifed" +[prime.w.variants.curly] +rank = 3 +description = "Slightly curly `w`, like Iosevka 2.x" +selector.w = "curly" +selector."w/sansSerif" = "curly" +selector.wHookTop = "curly" + [prime.w.variants.curly-motion-serifed] -rank = 9 +rank = 4 description = "Slightly curly `w`, like Iosevka 2.x, with motion serifs" selector.w = "curlyMotionSerifed" selector."w/sansSerif" = "curly" selector.wHookTop = "curlyMotionSerifed" +[prime.w.variants.straight-flat-top] +rank = 5 +description = "Standard, straight `w`, and the middle is forced to be aligned the top" +selector.w = "straightFlatTop" +selector."w/sansSerif" = "straightFlatTop" +selector.wHookTop = "straightFlatTop" + [prime.w.variants.straight-flat-top-motion-serifed] -rank = 10 +rank = 6 description = "Standard, straight `w`, and the middle is forced to be aligned the top, with motion serifs" selector.w = "straightFlatTopMotionSerifed" selector."w/sansSerif" = "straightFlatTop" selector.wHookTop = "straightFlatTopMotionSerifed" +[prime.w.variants.straight-double-v] +rank = 7 +description = "Straight `w` looks like double V" +selector.w = "straightDoubleV" +selector."w/sansSerif" = "straightDoubleV" +selector.wHookTop = "straightDoubleV" + [prime.w.variants.straight-double-v-motion-serifed] -rank = 11 +rank = 8 description = "Straight `w` looks like double V, with motion serifs" selector.w = "straightDoubleVMotionSerifed" selector."w/sansSerif" = "straightDoubleV" selector.wHookTop = "straightDoubleVMotionSerifed" +[prime.w.variants.straight-asymmetric] +rank = 9 +description = "Straight `w` looks asymmetric" +selector.w = "straightAsymmetric" +selector."w/sansSerif" = "straightAsymmetric" +selector.wHookTop = "straightAsymmetric" + [prime.w.variants.straight-asymmetric-motion-serifed] -rank = 12 +rank = 10 description = "Straight `w` looks asymmetric, with motion serifs" selector.w = "straightAsymmetricMotionSerifed" selector."w/sansSerif" = "straightAsymmetric" selector.wHookTop = "straightAsymmetricMotionSerifed" +[prime.w.variants.straight-vertical-sides] +rank = 11 +description = "Straight `w` with vertical sides" +selector.w = "straightVerticalSides" +selector."w/sansSerif" = "straightVerticalSides" +selector.wHookTop = "straightVerticalSides" + [prime.w.variants.straight-vertical-sides-motion-serifed] -rank = 13 +rank = 12 description = "Straight `w` with vertical sides and motion serifs" selector.w = "straightVerticalSidesMotionSerifed" selector."w/sansSerif" = "straightVerticalSides" selector.wHookTop = "straightVerticalSidesMotionSerifed" +[prime.w.variants.cursive] +rank = 13 +description = "Cursive `w`" +selector.w = "cursive" +selector."w/sansSerif" = "cursive" +selector.wHookTop = "cursive" + [prime.w.variants.cursive-motion-serifed] rank = 14 description = "Cursive `w` with motion serifs" @@ -4295,24 +4297,8 @@ selector."x/sansSerif" = "straightSerifless" selector."cyrl/ha" = "straightSerifless" selector."grek/chi" = "straightSerifless" -[prime.x.variants.curly-serifless] -rank = 2 -description = "Serifless, slightly curly `x`, like Iosevka 2.x" -selector.x = "curlySerifless" -selector."x/sansSerif" = "curlySerifless" -selector."cyrl/ha" = "curlySerifless" -selector."grek/chi" = "curlySerifless" - -[prime.x.variants.straight-motion-serifed] -rank = 3 -description = "Straight `x` with motion serifs" -selector.x = "straightMotionSerifed" -selector."x/sansSerif" = "straightSerifless" -selector."cyrl/ha" = "straightMotionSerifed" -selector."grek/chi" = "straightMotionSerifed" - [prime.x.variants.curly-motion-serifed] -rank = 4 +rank = 2 description = "Slightly curly `x`, like Iosevka 2.x, with motion serifs" selector.x = "curlyMotionSerifed" selector."x/sansSerif" = "curlySerifless" @@ -4320,13 +4306,29 @@ selector."cyrl/ha" = "curlyMotionSerifed" selector."grek/chi" = "curlyMotionSerifed" [prime.x.variants.straight-serifed] -rank = 5 +rank = 3 description = "Straight `x` with full serifs" selector.x = "straightSerifed" selector."x/sansSerif" = "straightSerifless" selector."cyrl/ha" = "straightSerifed" selector."grek/chi" = "straightBilateralMotionSerifed" +[prime.x.variants.curly-serifless] +rank = 4 +description = "Serifless, slightly curly `x`, like Iosevka 2.x" +selector.x = "curlySerifless" +selector."x/sansSerif" = "curlySerifless" +selector."cyrl/ha" = "curlySerifless" +selector."grek/chi" = "curlySerifless" + +[prime.x.variants.straight-motion-serifed] +rank = 5 +description = "Straight `x` with motion serifs" +selector.x = "straightMotionSerifed" +selector."x/sansSerif" = "straightSerifless" +selector."cyrl/ha" = "straightMotionSerifed" +selector."grek/chi" = "straightMotionSerifed" + [prime.x.variants.curly-serifed] rank = 6 description = "Slightly curly `x`, like Iosevka 2.x, with full serifs" @@ -4357,86 +4359,86 @@ selector.yLoop = "straightLoop" selector."y/nonCursive" = "straight" selector."y/sansSerif" = "straight" -[prime.y.variants.straight-turn] -rank = 2 -description = "Letter `y` with straight upper and a tail turns leftward" -selector.y = "straightTurn" -selector.yLoop = "straightLoop" -selector."y/nonCursive" = "straightTurn" -selector."y/sansSerif" = "straightTurn" - -[prime.y.variants.curly] -rank = 3 -description = "More curly letter `y`, like Iosevka 2.x" -selector.y = "curly" -selector.yLoop = "curlyLoop" -selector."y/nonCursive" = "curly" -selector."y/sansSerif" = "curly" - -[prime.y.variants.curly-turn] -rank = 4 -description = "More curly letter `y`, like Iosevka 2.x, with a tail turns leftward" -selector.y = "curlyTurn" -selector.yLoop = "curlyLoop" -selector."y/nonCursive" = "curlyTurn" -selector."y/sansSerif" = "curlyTurn" - -[prime.y.variants.cursive] -rank = 5 -description = "Cursive-like `y`" -selector.y = "cursive" -selector.yLoop = "straightLoop" -selector."y/nonCursive" = "straightTurn" -selector."y/sansSerif" = "cursive" - -[prime.y.variants.cursive-flat-hook] -rank = 6 -description = "Cursive-like `y` with flat terminal hook" -selector.y = "cursiveFlatHook" -selector.yLoop = "straightLoop" -selector."y/nonCursive" = "straightTurn" -selector."y/sansSerif" = "cursiveFlatHook" - [prime.y.variants.straight-motion-serifed] -rank = 7 +rank = 2 description = "Letter `y` that is fully straight, with motion serifs" selector.y = "straightMotionSerifed" selector.yLoop = "straightLoopMotionSerifed" selector."y/nonCursive" = "straightMotionSerifed" selector."y/sansSerif" = "straight" +[prime.y.variants.straight-turn] +rank = 3 +description = "Letter `y` with straight upper and a tail turns leftward" +selector.y = "straightTurn" +selector.yLoop = "straightLoop" +selector."y/nonCursive" = "straightTurn" +selector."y/sansSerif" = "straightTurn" + [prime.y.variants.straight-turn-motion-serifed] -rank = 8 +rank = 4 description = "Letter `y` with straight upper and a tail turns leftward, and motion serifs" selector.y = "straightTurnMotionSerifed" selector.yLoop = "straightLoopMotionSerifed" selector."y/nonCursive" = "straightTurnMotionSerifed" selector."y/sansSerif" = "straightTurn" +[prime.y.variants.curly] +rank = 5 +description = "More curly letter `y`, like Iosevka 2.x" +selector.y = "curly" +selector.yLoop = "curlyLoop" +selector."y/nonCursive" = "curly" +selector."y/sansSerif" = "curly" + [prime.y.variants.curly-motion-serifed] -rank = 9 +rank = 6 description = "More curly letter `y`, like Iosevka 2.x, with motion serifs" selector.y = "curlyMotionSerifed" selector.yLoop = "curlyLoopMotionSerifed" selector."y/nonCursive" = "curlyMotionSerifed" selector."y/sansSerif" = "curly" +[prime.y.variants.curly-turn] +rank = 7 +description = "More curly letter `y`, like Iosevka 2.x, with a tail turns leftward" +selector.y = "curlyTurn" +selector.yLoop = "curlyLoop" +selector."y/nonCursive" = "curlyTurn" +selector."y/sansSerif" = "curlyTurn" + [prime.y.variants.curly-turn-motion-serifed] -rank = 10 +rank = 8 description = "More curly letter `y`, like Iosevka 2.x, with a tail turns leftward and motion serifs" selector.y = "curlyTurnMotionSerifed" selector.yLoop = "curlyLoopMotionSerifed" selector."y/nonCursive" = "curlyTurnMotionSerifed" selector."y/sansSerif" = "curlyTurn" +[prime.y.variants.cursive] +rank = 9 +description = "Cursive-like `y`" +selector.y = "cursive" +selector.yLoop = "straightLoop" +selector."y/nonCursive" = "straightTurn" +selector."y/sansSerif" = "cursive" + [prime.y.variants.cursive-motion-serifed] -rank = 11 +rank = 10 description = "Cursive-like `y`, with motion serifs" selector.y = "cursiveMotionSerifed" selector.yLoop = "straightLoopMotionSerifed" selector."y/nonCursive" = "straightTurnMotionSerifed" selector."y/sansSerif" = "cursive" +[prime.y.variants.cursive-flat-hook] +rank = 11 +description = "Cursive-like `y` with flat terminal hook" +selector.y = "cursiveFlatHook" +selector.yLoop = "straightLoop" +selector."y/nonCursive" = "straightTurn" +selector."y/sansSerif" = "cursiveFlatHook" + [prime.y.variants.cursive-flat-hook-motion-serifed] rank = 12 description = "Cursive-like `y` with flat terminal hook, and motion serifs" @@ -4475,32 +4477,8 @@ selector."z/sansSerif" = "straightSeriflessWithHorizontalCrossBar" selector."z/reduced" = "straightSerifless" selector.zDesc = "straightSeriflessWithHorizontalCrossBar" -[prime.z.variants.curly-serifless] -rank = 4 -description = "Curly `z` without serifs" -selector.z = "curlySerifless" -selector."z/sansSerif" = "curlySerifless" -selector."z/reduced" = "curlySerifless" -selector.zDesc = "curlySerifless" - -[prime.z.variants.curly-serifless-with-crossbar] -rank = 5 -description = "Curly `z` with a diagonal crossbar, and without serifs" -selector.z = "curlySeriflessWithCrossBar" -selector."z/sansSerif" = "curlySeriflessWithCrossBar" -selector."z/reduced" = "curlySerifless" -selector.zDesc = "curlySeriflessWithCrossBar" - -[prime.z.variants.curly-serifless-with-horizontal-crossbar] -rank = 6 -description = "Curly `z` with a horizontal crossbar, and without serifs" -selector.z = "curlySeriflessWithHorizontalCrossBar" -selector."z/sansSerif" = "curlySeriflessWithHorizontalCrossBar" -selector."z/reduced" = "curlySerifless" -selector.zDesc = "curlySeriflessWithHorizontalCrossBar" - [prime.z.variants.straight-serifed] -rank = 7 +rank = 4 description = "Straight `z` with top and bottom serifs" selector.z = "straightSerifed" selector."z/sansSerif" = "straightSerifless" @@ -4508,7 +4486,7 @@ selector."z/reduced" = "straightSerifed" selector.zDesc = "straightTopSerifed" [prime.z.variants.straight-serifed-with-crossbar] -rank = 8 +rank = 5 description = "Straight `z` with a diagonal crossbar and serifs" selector.z = "straightSerifedWithCrossBar" selector."z/sansSerif" = "straightSeriflessWithCrossBar" @@ -4516,39 +4494,15 @@ selector."z/reduced" = "straightSerifed" selector.zDesc = "straightTopSerifedWithCrossbar" [prime.z.variants.straight-serifed-with-horizontal-crossbar] -rank = 9 +rank = 6 description = "Straight `z` with a horizontal crossbar and serifs" selector.z = "straightSerifedWithHorizontalCrossBar" selector."z/sansSerif" = "straightSeriflessWithHorizontalCrossBar" selector."z/reduced" = "straightSerifed" selector.zDesc = "straightTopSerifedWithHorizontalCrossBar" -[prime.z.variants.curly-serifed] -rank = 10 -description = "Curly `z` with top and bottom serifs" -selector.z = "curlySerifed" -selector."z/sansSerif" = "curlySerifless" -selector."z/reduced" = "curlySerifed" -selector.zDesc = "curlyTopSerifed" - -[prime.z.variants.curly-serifed-with-crossbar] -rank = 11 -description = "Curly `z` with a diagonal crossbar and serifs" -selector.z = "curlySerifedWithCrossBar" -selector."z/sansSerif" = "curlySeriflessWithCrossBar" -selector."z/reduced" = "curlySerifed" -selector.zDesc = "curlyTopSerifedWithCrossbar" - -[prime.z.variants.curly-serifed-with-horizontal-crossbar] -rank = 12 -description = "Curly `z` with a horizontal crossbar and serifs" -selector.z = "curlySerifedWithHorizontalCrossBar" -selector."z/sansSerif" = "curlySeriflessWithHorizontalCrossBar" -selector."z/reduced" = "curlySerifed" -selector.zDesc = "curlyTopSerifedWithHorizontalCrossBar" - [prime.z.variants.straight-bottom-serifed] -rank = 13 +rank = 7 description = "Standard `z` with serif at bottom" selector.z = "straightBottomSerifed" selector."z/sansSerif" = "straightSerifless" @@ -4556,7 +4510,7 @@ selector."z/reduced" = "straightBottomSerifed" selector.zDesc = "straightSerifless" [prime.z.variants.straight-bottom-serifed-with-crossbar] -rank = 14 +rank = 8 description = "Standard `z` with a diagonal crossbar and serif at bottom" selector.z = "straightBottomSerifedWithCrossbar" selector."z/sansSerif" = "straightSeriflessWithCrossBar" @@ -4564,39 +4518,15 @@ selector."z/reduced" = "straightBottomSerifed" selector.zDesc = "straightSeriflessWithCrossBar" [prime.z.variants.straight-bottom-serifed-with-horizontal-crossbar] -rank = 15 +rank = 9 description = "Standard `z` with a horizontal crossbar and serif at bottom" selector.z = "straightBottomSerifedWithHorizontalCrossBar" selector."z/sansSerif" = "straightSeriflessWithHorizontalCrossBar" selector."z/reduced" = "straightBottomSerifed" selector.zDesc = "straightSeriflessWithHorizontalCrossBar" -[prime.z.variants.curly-bottom-serifed-with-crossbar] -rank = 16 -description = "Curly `z` with serif at bottom" -selector.z = "curlyBottomSerifed" -selector."z/sansSerif" = "curlySerifless" -selector."z/reduced" = "curlyBottomSerifed" -selector.zDesc = "curlySerifless" - -[prime.z.variants.curly-bottom-serifed-with-horizontal-crossbar] -rank = 17 -description = "Curly `z` with a diagonal crossbar and serif at bottom" -selector.z = "curlyBottomSerifedWithCrossbar" -selector."z/sansSerif" = "curlySeriflessWithCrossBar" -selector."z/reduced" = "curlyBottomSerifed" -selector.zDesc = "curlySeriflessWithCrossBar" - -[prime.z.variants.curly-bottom-serifed] -rank = 18 -description = "Curly `z` with a horizontal crossbar and serif at bottom" -selector.z = "curlyBottomSerifedWithHorizontalCrossBar" -selector."z/sansSerif" = "curlySeriflessWithHorizontalCrossBar" -selector."z/reduced" = "curlyBottomSerifed" -selector.zDesc = "curlySeriflessWithHorizontalCrossBar" - [prime.z.variants.straight-top-serifed] -rank = 19 +rank = 10 description = "Standard `z` with serif at top" selector.z = "straightTopSerifed" selector."z/sansSerif" = "straightSerifless" @@ -4604,7 +4534,7 @@ selector."z/reduced" = "straightTopSerifed" selector.zDesc = "straightTopSerifed" [prime.z.variants.straight-top-serifed-with-crossbar] -rank = 20 +rank = 11 description = "Standard `z` with a diagonal crossbar and serif at top" selector.z = "straightTopSerifedWithCrossbar" selector."z/sansSerif" = "straightSeriflessWithCrossBar" @@ -4612,13 +4542,85 @@ selector."z/reduced" = "straightTopSerifed" selector.zDesc = "straightTopSerifedWithCrossbar" [prime.z.variants.straight-top-serifed-with-horizontal-crossbar] -rank = 21 +rank = 12 description = "Standard `z` with a horizontal crossbar and serif at top" selector.z = "straightTopSerifedWithHorizontalCrossBar" selector."z/sansSerif" = "straightSeriflessWithHorizontalCrossBar" selector."z/reduced" = "straightTopSerifed" selector.zDesc = "straightTopSerifedWithHorizontalCrossBar" +[prime.z.variants.curly-serifless] +rank = 13 +description = "Curly `z` without serifs" +selector.z = "curlySerifless" +selector."z/sansSerif" = "curlySerifless" +selector."z/reduced" = "curlySerifless" +selector.zDesc = "curlySerifless" + +[prime.z.variants.curly-serifless-with-crossbar] +rank = 14 +description = "Curly `z` with a diagonal crossbar, and without serifs" +selector.z = "curlySeriflessWithCrossBar" +selector."z/sansSerif" = "curlySeriflessWithCrossBar" +selector."z/reduced" = "curlySerifless" +selector.zDesc = "curlySeriflessWithCrossBar" + +[prime.z.variants.curly-serifless-with-horizontal-crossbar] +rank = 15 +description = "Curly `z` with a horizontal crossbar, and without serifs" +selector.z = "curlySeriflessWithHorizontalCrossBar" +selector."z/sansSerif" = "curlySeriflessWithHorizontalCrossBar" +selector."z/reduced" = "curlySerifless" +selector.zDesc = "curlySeriflessWithHorizontalCrossBar" + +[prime.z.variants.curly-serifed] +rank = 16 +description = "Curly `z` with top and bottom serifs" +selector.z = "curlySerifed" +selector."z/sansSerif" = "curlySerifless" +selector."z/reduced" = "curlySerifed" +selector.zDesc = "curlyTopSerifed" + +[prime.z.variants.curly-serifed-with-crossbar] +rank = 17 +description = "Curly `z` with a diagonal crossbar and serifs" +selector.z = "curlySerifedWithCrossBar" +selector."z/sansSerif" = "curlySeriflessWithCrossBar" +selector."z/reduced" = "curlySerifed" +selector.zDesc = "curlyTopSerifedWithCrossbar" + +[prime.z.variants.curly-serifed-with-horizontal-crossbar] +rank = 18 +description = "Curly `z` with a horizontal crossbar and serifs" +selector.z = "curlySerifedWithHorizontalCrossBar" +selector."z/sansSerif" = "curlySeriflessWithHorizontalCrossBar" +selector."z/reduced" = "curlySerifed" +selector.zDesc = "curlyTopSerifedWithHorizontalCrossBar" + +[prime.z.variants.curly-bottom-serifed-with-crossbar] +rank = 19 +description = "Curly `z` with serif at bottom" +selector.z = "curlyBottomSerifed" +selector."z/sansSerif" = "curlySerifless" +selector."z/reduced" = "curlyBottomSerifed" +selector.zDesc = "curlySerifless" + +[prime.z.variants.curly-bottom-serifed-with-horizontal-crossbar] +rank = 20 +description = "Curly `z` with a diagonal crossbar and serif at bottom" +selector.z = "curlyBottomSerifedWithCrossbar" +selector."z/sansSerif" = "curlySeriflessWithCrossBar" +selector."z/reduced" = "curlyBottomSerifed" +selector.zDesc = "curlySeriflessWithCrossBar" + +[prime.z.variants.curly-bottom-serifed] +rank = 21 +description = "Curly `z` with a horizontal crossbar and serif at bottom" +selector.z = "curlyBottomSerifedWithHorizontalCrossBar" +selector."z/sansSerif" = "curlySeriflessWithHorizontalCrossBar" +selector."z/reduced" = "curlyBottomSerifed" +selector.zDesc = "curlySeriflessWithHorizontalCrossBar" + [prime.z.variants.curly-top-serifed] rank = 22 description = "Curly `z` with serif at top" @@ -5121,150 +5123,150 @@ selector."cyrl/KaDescender" = "straightSerifless" selector."cyrl/KaVBar" = "symmetricConnectedSeriflessVB" selector."cyrl/KaHook" = "symmetricConnectedSeriflessKH" -[prime.cyrl-capital-ka.variants.curly-serifless] -rank = 2 -description = "Slightly curly Cyrillic Capital Ka (`К`) , like Iosevka 2.x" -selector."cyrl/Ka" = "curlySerifless" -selector."cyrl/KaDescender" = "curlySerifless" -selector."cyrl/KaVBar" = "symmetricConnectedSeriflessVB" -selector."cyrl/KaHook" = "symmetricConnectedSeriflessKH" - -[prime.cyrl-capital-ka.variants.symmetric-touching-serifless] -rank = 3 -description = "Cyrillic Capital Ka (`К`) with symmetric legs touching the vertical bar" -selector."cyrl/Ka" = "symmetricTouchingSerifless" -selector."cyrl/KaDescender" = "symmetricTouchingSerifless" -selector."cyrl/KaVBar" = "symmetricConnectedSeriflessVB" -selector."cyrl/KaHook" = "symmetricConnectedSeriflessKH" - -[prime.cyrl-capital-ka.variants.symmetric-connected-serifless] -rank = 4 -description = "Cyrillic Capital Ka (`К`) with symmetric legs connected to the vertical bar" -selector."cyrl/Ka" = "symmetricConnectedSerifless" -selector."cyrl/KaDescender" = "symmetricConnectedSerifless" -selector."cyrl/KaVBar" = "symmetricConnectedSeriflessVB" -selector."cyrl/KaHook" = "symmetricConnectedSeriflessKH" - [prime.cyrl-capital-ka.variants.straight-top-left-serifed] -rank = 5 +rank = 2 description = "Cyrillic Capital Ka (`К`) with standard shape and serifs at top left" selector."cyrl/Ka" = "straightTopLeftSerifed" selector."cyrl/KaDescender" = "straightTopLeftSerifed" selector."cyrl/KaVBar" = "symmetricConnectedTopLeftSerifedVB" selector."cyrl/KaHook" = "symmetricConnectedTopLeftSerifedKH" -[prime.cyrl-capital-ka.variants.curly-top-left-serifed] -rank = 6 -description = "Slightly curly Cyrillic Capital Ka (`К`) , like Iosevka 2.x, with serifs at top left" -selector."cyrl/Ka" = "curlyTopLeftSerifed" -selector."cyrl/KaDescender" = "curlyTopLeftSerifed" -selector."cyrl/KaVBar" = "symmetricConnectedTopLeftSerifedVB" -selector."cyrl/KaHook" = "symmetricConnectedTopLeftSerifedKH" - -[prime.cyrl-capital-ka.variants.symmetric-touching-top-left-serifed] -rank = 7 -description = "Cyrillic Capital Ka (`К`) with symmetric legs touching the vertical bar, and serifs at top left" -selector."cyrl/Ka" = "symmetricTouchingTopLeftSerifed" -selector."cyrl/KaDescender" = "symmetricTouchingTopLeftSerifed" -selector."cyrl/KaVBar" = "symmetricConnectedTopLeftSerifedVB" -selector."cyrl/KaHook" = "symmetricConnectedTopLeftSerifedKH" - -[prime.cyrl-capital-ka.variants.symmetric-connected-top-left-serifed] -rank = 8 -description = "Cyrillic Capital Ka (`К`) with symmetric legs connected to the vertical bar, and serifs at top left" -selector."cyrl/Ka" = "symmetricConnectedTopLeftSerifed" -selector."cyrl/KaDescender" = "symmetricConnectedTopLeftSerifed" -selector."cyrl/KaVBar" = "symmetricConnectedTopLeftSerifedVB" -selector."cyrl/KaHook" = "symmetricConnectedTopLeftSerifedKH" - [prime.cyrl-capital-ka.variants.straight-bottom-right-serifed] -rank = 9 +rank = 3 description = "Cyrillic Capital Ka (`К`) with standard shape and serifs at bottom right" selector."cyrl/Ka" = "straightBottomRightSerifed" selector."cyrl/KaDescender" = "straightBottomRightSerifed" selector."cyrl/KaVBar" = "symmetricConnectedBottomRightSerifedVB" selector."cyrl/KaHook" = "symmetricConnectedSeriflessKH" -[prime.cyrl-capital-ka.variants.curly-bottom-right-serifed] -rank = 10 -description = "Slightly curly Cyrillic Capital Ka (`К`) , like Iosevka 2.x, with serifs at bottom right" -selector."cyrl/Ka" = "curlyBottomRightSerifed" -selector."cyrl/KaDescender" = "curlyBottomRightSerifed" -selector."cyrl/KaVBar" = "symmetricConnectedBottomRightSerifedVB" -selector."cyrl/KaHook" = "symmetricConnectedSeriflessKH" - -[prime.cyrl-capital-ka.variants.symmetric-touching-bottom-right-serifed] -rank = 11 -description = "Cyrillic Capital Ka (`К`) with symmetric legs touching the vertical bar, and serifs at bottom right" -selector."cyrl/Ka" = "symmetricTouchingBottomRightSerifed" -selector."cyrl/KaDescender" = "symmetricTouchingBottomRightSerifed" -selector."cyrl/KaVBar" = "symmetricConnectedBottomRightSerifedVB" -selector."cyrl/KaHook" = "symmetricConnectedSeriflessKH" - -[prime.cyrl-capital-ka.variants.symmetric-connected-bottom-right-serifed] -rank = 12 -description = "Cyrillic Capital Ka (`К`) with symmetric legs connected to the vertical bar, and serifs at bottom right" -selector."cyrl/Ka" = "symmetricConnectedBottomRightSerifed" -selector."cyrl/KaDescender" = "symmetricConnectedBottomRightSerifed" -selector."cyrl/KaVBar" = "symmetricConnectedBottomRightSerifedVB" -selector."cyrl/KaHook" = "symmetricConnectedSeriflessKH" - [prime.cyrl-capital-ka.variants.straight-serifed] -rank = 13 +rank = 4 description = "Cyrillic Capital Ka (`К`) with standard shape and serifs" selector."cyrl/Ka" = "straightSerifed" selector."cyrl/KaDescender" = "straightSerifed" selector."cyrl/KaVBar" = "symmetricConnectedSerifedVB" selector."cyrl/KaHook" = "symmetricConnectedSerifedKH" -[prime.cyrl-capital-ka.variants.curly-serifed] -rank = 14 -description = "Slightly curly Cyrillic Capital Ka (`К`) , like Iosevka 2.x, with serifs" -selector."cyrl/Ka" = "curlySerifed" -selector."cyrl/KaDescender" = "curlySerifed" -selector."cyrl/KaVBar" = "symmetricConnectedSerifedVB" -selector."cyrl/KaHook" = "symmetricConnectedSerifedKH" - -[prime.cyrl-capital-ka.variants.symmetric-touching-serifed] -rank = 15 -description = "Cyrillic Capital Ka (`К`) with symmetric legs touching the vertical bar, and serifs" -selector."cyrl/Ka" = "symmetricTouchingSerifed" -selector."cyrl/KaDescender" = "symmetricTouchingSerifed" -selector."cyrl/KaVBar" = "symmetricConnectedSerifedVB" -selector."cyrl/KaHook" = "symmetricConnectedSerifedKH" - -[prime.cyrl-capital-ka.variants.symmetric-connected-serifed] -rank = 16 -description = "Cyrillic Capital Ka (`К`) with symmetric legs connected to the vertical bar, and serifs" -selector."cyrl/Ka" = "symmetricConnectedSerifed" -selector."cyrl/KaDescender" = "symmetricConnectedSerifed" -selector."cyrl/KaVBar" = "symmetricConnectedSerifedVB" -selector."cyrl/KaHook" = "symmetricConnectedSerifedKH" - [prime.cyrl-capital-ka.variants.straight-top-left-and-bottom-right-serifed] -rank = 17 +rank = 5 description = "Cyrillic Capital Ka (`К`) with standard shape and serifs at top left and bottom right" selector."cyrl/Ka" = "straightTopLeftAndBottomRightSerifed" selector."cyrl/KaDescender" = "straightTopLeftSerifed" selector."cyrl/KaVBar" = "symmetricConnectedTopLeftAndBottomRightSerifedVB" selector."cyrl/KaHook" = "symmetricConnectedTopLeftSerifedKH" +[prime.cyrl-capital-ka.variants.curly-serifless] +rank = 6 +description = "Slightly curly Cyrillic Capital Ka (`К`) , like Iosevka 2.x" +selector."cyrl/Ka" = "curlySerifless" +selector."cyrl/KaDescender" = "curlySerifless" +selector."cyrl/KaVBar" = "symmetricConnectedSeriflessVB" +selector."cyrl/KaHook" = "symmetricConnectedSeriflessKH" + +[prime.cyrl-capital-ka.variants.curly-top-left-serifed] +rank = 7 +description = "Slightly curly Cyrillic Capital Ka (`К`) , like Iosevka 2.x, with serifs at top left" +selector."cyrl/Ka" = "curlyTopLeftSerifed" +selector."cyrl/KaDescender" = "curlyTopLeftSerifed" +selector."cyrl/KaVBar" = "symmetricConnectedTopLeftSerifedVB" +selector."cyrl/KaHook" = "symmetricConnectedTopLeftSerifedKH" + +[prime.cyrl-capital-ka.variants.curly-bottom-right-serifed] +rank = 8 +description = "Slightly curly Cyrillic Capital Ka (`К`) , like Iosevka 2.x, with serifs at bottom right" +selector."cyrl/Ka" = "curlyBottomRightSerifed" +selector."cyrl/KaDescender" = "curlyBottomRightSerifed" +selector."cyrl/KaVBar" = "symmetricConnectedBottomRightSerifedVB" +selector."cyrl/KaHook" = "symmetricConnectedSeriflessKH" + +[prime.cyrl-capital-ka.variants.curly-serifed] +rank = 9 +description = "Slightly curly Cyrillic Capital Ka (`К`) , like Iosevka 2.x, with serifs" +selector."cyrl/Ka" = "curlySerifed" +selector."cyrl/KaDescender" = "curlySerifed" +selector."cyrl/KaVBar" = "symmetricConnectedSerifedVB" +selector."cyrl/KaHook" = "symmetricConnectedSerifedKH" + [prime.cyrl-capital-ka.variants.curly-top-left-and-bottom-right-serifed] -rank = 18 +rank = 10 description = "Slightly curly Cyrillic Capital Ka (`К`) , like Iosevka 2.x, with serifs at top left and bottom right" selector."cyrl/Ka" = "curlyTopLeftAndBottomRightSerifed" selector."cyrl/KaDescender" = "curlyTopLeftSerifed" selector."cyrl/KaVBar" = "symmetricConnectedTopLeftAndBottomRightSerifedVB" selector."cyrl/KaHook" = "symmetricConnectedTopLeftSerifedKH" +[prime.cyrl-capital-ka.variants.symmetric-touching-serifless] +rank = 11 +description = "Cyrillic Capital Ka (`К`) with symmetric legs touching the vertical bar" +selector."cyrl/Ka" = "symmetricTouchingSerifless" +selector."cyrl/KaDescender" = "symmetricTouchingSerifless" +selector."cyrl/KaVBar" = "symmetricConnectedSeriflessVB" +selector."cyrl/KaHook" = "symmetricConnectedSeriflessKH" + +[prime.cyrl-capital-ka.variants.symmetric-touching-top-left-serifed] +rank = 12 +description = "Cyrillic Capital Ka (`К`) with symmetric legs touching the vertical bar, and serifs at top left" +selector."cyrl/Ka" = "symmetricTouchingTopLeftSerifed" +selector."cyrl/KaDescender" = "symmetricTouchingTopLeftSerifed" +selector."cyrl/KaVBar" = "symmetricConnectedTopLeftSerifedVB" +selector."cyrl/KaHook" = "symmetricConnectedTopLeftSerifedKH" + +[prime.cyrl-capital-ka.variants.symmetric-touching-bottom-right-serifed] +rank = 13 +description = "Cyrillic Capital Ka (`К`) with symmetric legs touching the vertical bar, and serifs at bottom right" +selector."cyrl/Ka" = "symmetricTouchingBottomRightSerifed" +selector."cyrl/KaDescender" = "symmetricTouchingBottomRightSerifed" +selector."cyrl/KaVBar" = "symmetricConnectedBottomRightSerifedVB" +selector."cyrl/KaHook" = "symmetricConnectedSeriflessKH" + +[prime.cyrl-capital-ka.variants.symmetric-touching-serifed] +rank = 14 +description = "Cyrillic Capital Ka (`К`) with symmetric legs touching the vertical bar, and serifs" +selector."cyrl/Ka" = "symmetricTouchingSerifed" +selector."cyrl/KaDescender" = "symmetricTouchingSerifed" +selector."cyrl/KaVBar" = "symmetricConnectedSerifedVB" +selector."cyrl/KaHook" = "symmetricConnectedSerifedKH" + [prime.cyrl-capital-ka.variants.symmetric-touching-top-left-and-bottom-right-serifed] -rank = 19 +rank = 15 description = "Cyrillic Capital Ka (`К`) with symmetric legs touching the vertical bar, and serifs at top left and bottom right" selector."cyrl/Ka" = "symmetricTouchingTopLeftAndBottomRightSerifed" selector."cyrl/KaDescender" = "symmetricTouchingTopLeftSerifed" selector."cyrl/KaVBar" = "symmetricConnectedTopLeftAndBottomRightSerifedVB" selector."cyrl/KaHook" = "symmetricConnectedTopLeftSerifedKH" +[prime.cyrl-capital-ka.variants.symmetric-connected-serifless] +rank = 16 +description = "Cyrillic Capital Ka (`К`) with symmetric legs connected to the vertical bar" +selector."cyrl/Ka" = "symmetricConnectedSerifless" +selector."cyrl/KaDescender" = "symmetricConnectedSerifless" +selector."cyrl/KaVBar" = "symmetricConnectedSeriflessVB" +selector."cyrl/KaHook" = "symmetricConnectedSeriflessKH" + +[prime.cyrl-capital-ka.variants.symmetric-connected-top-left-serifed] +rank = 17 +description = "Cyrillic Capital Ka (`К`) with symmetric legs connected to the vertical bar, and serifs at top left" +selector."cyrl/Ka" = "symmetricConnectedTopLeftSerifed" +selector."cyrl/KaDescender" = "symmetricConnectedTopLeftSerifed" +selector."cyrl/KaVBar" = "symmetricConnectedTopLeftSerifedVB" +selector."cyrl/KaHook" = "symmetricConnectedTopLeftSerifedKH" + +[prime.cyrl-capital-ka.variants.symmetric-connected-bottom-right-serifed] +rank = 18 +description = "Cyrillic Capital Ka (`К`) with symmetric legs connected to the vertical bar, and serifs at bottom right" +selector."cyrl/Ka" = "symmetricConnectedBottomRightSerifed" +selector."cyrl/KaDescender" = "symmetricConnectedBottomRightSerifed" +selector."cyrl/KaVBar" = "symmetricConnectedBottomRightSerifedVB" +selector."cyrl/KaHook" = "symmetricConnectedSeriflessKH" + +[prime.cyrl-capital-ka.variants.symmetric-connected-serifed] +rank = 19 +description = "Cyrillic Capital Ka (`К`) with symmetric legs connected to the vertical bar, and serifs" +selector."cyrl/Ka" = "symmetricConnectedSerifed" +selector."cyrl/KaDescender" = "symmetricConnectedSerifed" +selector."cyrl/KaVBar" = "symmetricConnectedSerifedVB" +selector."cyrl/KaHook" = "symmetricConnectedSerifedKH" + [prime.cyrl-capital-ka.variants.symmetric-connected-top-left-and-bottom-right-serifed] rank = 20 description = "Cyrillic Capital Ka (`К`) with symmetric legs connected to the vertical bar, and serifs at top left and bottom right" @@ -5288,150 +5290,150 @@ selector."cyrl/kaDescender" = "straightSerifless" selector."cyrl/kaVBar" = "symmetricConnectedSeriflessVB" selector."cyrl/kaHook" = "symmetricConnectedSeriflessKH" -[prime.cyrl-ka.variants.curly-serifless] -rank = 2 -description = "Slightly curly Cyrillic Lower Ka (`к`) , like Iosevka 2.x, and without serifs" -selector."cyrl/ka" = "curlySerifless" -selector."cyrl/kaDescender" = "curlySerifless" -selector."cyrl/kaVBar" = "symmetricConnectedSeriflessVB" -selector."cyrl/kaHook" = "symmetricConnectedSeriflessKH" - -[prime.cyrl-ka.variants.symmetric-touching-serifless] -rank = 3 -description = "Cyrillic Lower Ka (`к`) with symmetric legs touching the vertical bar, and without serifs" -selector."cyrl/ka" = "symmetricTouchingSerifless" -selector."cyrl/kaDescender" = "symmetricTouchingSerifless" -selector."cyrl/kaVBar" = "symmetricConnectedSeriflessVB" -selector."cyrl/kaHook" = "symmetricConnectedSeriflessKH" - -[prime.cyrl-ka.variants.symmetric-connected-serifless] -rank = 4 -description = "Cyrillic Lower Ka (`к`) with symmetric legs connected to the vertical bar, and without serifs" -selector."cyrl/ka" = "symmetricConnectedSerifless" -selector."cyrl/kaDescender" = "symmetricConnectedSerifless" -selector."cyrl/kaVBar" = "symmetricConnectedSeriflessVB" -selector."cyrl/kaHook" = "symmetricConnectedSeriflessKH" - [prime.cyrl-ka.variants.straight-top-left-serifed] -rank = 5 +rank = 2 description = "Cyrillic Lower Ka (`к`) with standard shape and serifs at top left" selector."cyrl/ka" = "straightTopLeftSerifed" selector."cyrl/kaDescender" = "straightTopLeftSerifed" selector."cyrl/kaVBar" = "symmetricConnectedTopLeftSerifedVB" selector."cyrl/kaHook" = "symmetricConnectedTopLeftSerifedKH" -[prime.cyrl-ka.variants.curly-top-left-serifed] -rank = 6 -description = "Slightly curly Cyrillic Lower Ka (`к`) , like Iosevka 2.x, with serifs at top left" -selector."cyrl/ka" = "curlyTopLeftSerifed" -selector."cyrl/kaDescender" = "curlyTopLeftSerifed" -selector."cyrl/kaVBar" = "symmetricConnectedTopLeftSerifedVB" -selector."cyrl/kaHook" = "symmetricConnectedTopLeftSerifedKH" - -[prime.cyrl-ka.variants.symmetric-touching-top-left-serifed] -rank = 7 -description = "Cyrillic Lower Ka (`к`) with symmetric legs touching the vertical bar, and serifs at top left" -selector."cyrl/ka" = "symmetricTouchingTopLeftSerifed" -selector."cyrl/kaDescender" = "symmetricTouchingTopLeftSerifed" -selector."cyrl/kaVBar" = "symmetricConnectedTopLeftSerifedVB" -selector."cyrl/kaHook" = "symmetricConnectedTopLeftSerifedKH" - -[prime.cyrl-ka.variants.symmetric-connected-top-left-serifed] -rank = 8 -description = "Cyrillic Lower Ka (`к`) with symmetric legs connected to the vertical bar, and serifs at top left" -selector."cyrl/ka" = "symmetricConnectedTopLeftSerifed" -selector."cyrl/kaDescender" = "symmetricConnectedTopLeftSerifed" -selector."cyrl/kaVBar" = "symmetricConnectedTopLeftSerifedVB" -selector."cyrl/kaHook" = "symmetricConnectedTopLeftSerifedKH" - [prime.cyrl-ka.variants.straight-bottom-right-serifed] -rank = 9 +rank = 3 description = "Cyrillic Lower Ka (`к`) with standard shape and serifs at bottom right" selector."cyrl/ka" = "straightBottomRightSerifed" selector."cyrl/kaDescender" = "straightBottomRightSerifed" selector."cyrl/kaVBar" = "symmetricConnectedBottomRightSerifedVB" selector."cyrl/kaHook" = "symmetricConnectedSeriflessKH" -[prime.cyrl-ka.variants.curly-bottom-right-serifed] -rank = 10 -description = "Slightly curly Cyrillic Lower Ka (`к`) , like Iosevka 2.x, with serifs at bottom right" -selector."cyrl/ka" = "curlyBottomRightSerifed" -selector."cyrl/kaDescender" = "curlyBottomRightSerifed" -selector."cyrl/kaVBar" = "symmetricConnectedBottomRightSerifedVB" -selector."cyrl/kaHook" = "symmetricConnectedSeriflessKH" - -[prime.cyrl-ka.variants.symmetric-touching-bottom-right-serifed] -rank = 11 -description = "Cyrillic Lower Ka (`к`) with symmetric legs touching the vertical bar, and serifs at bottom right" -selector."cyrl/ka" = "symmetricTouchingBottomRightSerifed" -selector."cyrl/kaDescender" = "symmetricTouchingBottomRightSerifed" -selector."cyrl/kaVBar" = "symmetricConnectedBottomRightSerifedVB" -selector."cyrl/kaHook" = "symmetricConnectedSeriflessKH" - -[prime.cyrl-ka.variants.symmetric-connected-bottom-right-serifed] -rank = 12 -description = "Cyrillic Lower Ka (`к`) with symmetric legs connected to the vertical bar, and serifs at bottom right" -selector."cyrl/ka" = "symmetricConnectedBottomRightSerifed" -selector."cyrl/kaDescender" = "symmetricConnectedBottomRightSerifed" -selector."cyrl/kaVBar" = "symmetricConnectedBottomRightSerifedVB" -selector."cyrl/kaHook" = "symmetricConnectedSeriflessKH" - [prime.cyrl-ka.variants.straight-serifed] -rank = 13 +rank = 4 description = "Cyrillic Lower Ka (`к`) with standard shape and serifs" selector."cyrl/ka" = "straightSerifed" selector."cyrl/kaDescender" = "straightSerifed" selector."cyrl/kaVBar" = "symmetricConnectedSerifedVB" selector."cyrl/kaHook" = "symmetricConnectedSerifedKH" -[prime.cyrl-ka.variants.curly-serifed] -rank = 14 -description = "Slightly curly Cyrillic Lower Ka (`к`) , like Iosevka 2.x, with serifs" -selector."cyrl/ka" = "curlySerifed" -selector."cyrl/kaDescender" = "curlySerifed" -selector."cyrl/kaVBar" = "symmetricConnectedSerifedVB" -selector."cyrl/kaHook" = "symmetricConnectedSerifedKH" - -[prime.cyrl-ka.variants.symmetric-touching-serifed] -rank = 15 -description = "Cyrillic Lower Ka (`к`) with symmetric legs touching the vertical bar, and serifs" -selector."cyrl/ka" = "symmetricTouchingSerifed" -selector."cyrl/kaDescender" = "symmetricTouchingSerifed" -selector."cyrl/kaVBar" = "symmetricConnectedSerifedVB" -selector."cyrl/kaHook" = "symmetricConnectedSerifedKH" - -[prime.cyrl-ka.variants.symmetric-connected-serifed] -rank = 16 -description = "Cyrillic Lower Ka (`к`) with symmetric legs connected to the vertical bar, and serifs" -selector."cyrl/ka" = "symmetricConnectedSerifed" -selector."cyrl/kaDescender" = "symmetricConnectedSerifed" -selector."cyrl/kaVBar" = "symmetricConnectedSerifedVB" -selector."cyrl/kaHook" = "symmetricConnectedSerifedKH" - [prime.cyrl-ka.variants.straight-top-left-and-bottom-right-serifed] -rank = 17 +rank = 5 description = "Cyrillic Lower Ka (`к`) with standard shape and serifs at top left and bottom right" selector."cyrl/ka" = "straightTopLeftAndBottomRightSerifed" selector."cyrl/kaDescender" = "straightTopLeftSerifed" selector."cyrl/kaVBar" = "symmetricConnectedTopLeftAndBottomRightSerifedVB" selector."cyrl/kaHook" = "symmetricConnectedTopLeftSerifedKH" +[prime.cyrl-ka.variants.curly-serifless] +rank = 6 +description = "Slightly curly Cyrillic Lower Ka (`к`) , like Iosevka 2.x, and without serifs" +selector."cyrl/ka" = "curlySerifless" +selector."cyrl/kaDescender" = "curlySerifless" +selector."cyrl/kaVBar" = "symmetricConnectedSeriflessVB" +selector."cyrl/kaHook" = "symmetricConnectedSeriflessKH" + +[prime.cyrl-ka.variants.curly-top-left-serifed] +rank = 7 +description = "Slightly curly Cyrillic Lower Ka (`к`) , like Iosevka 2.x, with serifs at top left" +selector."cyrl/ka" = "curlyTopLeftSerifed" +selector."cyrl/kaDescender" = "curlyTopLeftSerifed" +selector."cyrl/kaVBar" = "symmetricConnectedTopLeftSerifedVB" +selector."cyrl/kaHook" = "symmetricConnectedTopLeftSerifedKH" + +[prime.cyrl-ka.variants.curly-bottom-right-serifed] +rank = 8 +description = "Slightly curly Cyrillic Lower Ka (`к`) , like Iosevka 2.x, with serifs at bottom right" +selector."cyrl/ka" = "curlyBottomRightSerifed" +selector."cyrl/kaDescender" = "curlyBottomRightSerifed" +selector."cyrl/kaVBar" = "symmetricConnectedBottomRightSerifedVB" +selector."cyrl/kaHook" = "symmetricConnectedSeriflessKH" + +[prime.cyrl-ka.variants.curly-serifed] +rank = 9 +description = "Slightly curly Cyrillic Lower Ka (`к`) , like Iosevka 2.x, with serifs" +selector."cyrl/ka" = "curlySerifed" +selector."cyrl/kaDescender" = "curlySerifed" +selector."cyrl/kaVBar" = "symmetricConnectedSerifedVB" +selector."cyrl/kaHook" = "symmetricConnectedSerifedKH" + [prime.cyrl-ka.variants.curly-top-left-and-bottom-right-serifed] -rank = 18 +rank = 10 description = "Slightly curly Cyrillic Lower Ka (`к`) , like Iosevka 2.x, with serifs at top left and bottom right" selector."cyrl/ka" = "curlyTopLeftAndBottomRightSerifed" selector."cyrl/kaDescender" = "curlyTopLeftSerifed" selector."cyrl/kaVBar" = "symmetricConnectedTopLeftAndBottomRightSerifedVB" selector."cyrl/kaHook" = "symmetricConnectedTopLeftSerifedKH" +[prime.cyrl-ka.variants.symmetric-touching-serifless] +rank = 11 +description = "Cyrillic Lower Ka (`к`) with symmetric legs touching the vertical bar, and without serifs" +selector."cyrl/ka" = "symmetricTouchingSerifless" +selector."cyrl/kaDescender" = "symmetricTouchingSerifless" +selector."cyrl/kaVBar" = "symmetricConnectedSeriflessVB" +selector."cyrl/kaHook" = "symmetricConnectedSeriflessKH" + +[prime.cyrl-ka.variants.symmetric-touching-top-left-serifed] +rank = 12 +description = "Cyrillic Lower Ka (`к`) with symmetric legs touching the vertical bar, and serifs at top left" +selector."cyrl/ka" = "symmetricTouchingTopLeftSerifed" +selector."cyrl/kaDescender" = "symmetricTouchingTopLeftSerifed" +selector."cyrl/kaVBar" = "symmetricConnectedTopLeftSerifedVB" +selector."cyrl/kaHook" = "symmetricConnectedTopLeftSerifedKH" + +[prime.cyrl-ka.variants.symmetric-touching-bottom-right-serifed] +rank = 13 +description = "Cyrillic Lower Ka (`к`) with symmetric legs touching the vertical bar, and serifs at bottom right" +selector."cyrl/ka" = "symmetricTouchingBottomRightSerifed" +selector."cyrl/kaDescender" = "symmetricTouchingBottomRightSerifed" +selector."cyrl/kaVBar" = "symmetricConnectedBottomRightSerifedVB" +selector."cyrl/kaHook" = "symmetricConnectedSeriflessKH" + +[prime.cyrl-ka.variants.symmetric-touching-serifed] +rank = 14 +description = "Cyrillic Lower Ka (`к`) with symmetric legs touching the vertical bar, and serifs" +selector."cyrl/ka" = "symmetricTouchingSerifed" +selector."cyrl/kaDescender" = "symmetricTouchingSerifed" +selector."cyrl/kaVBar" = "symmetricConnectedSerifedVB" +selector."cyrl/kaHook" = "symmetricConnectedSerifedKH" + [prime.cyrl-ka.variants.symmetric-touching-top-left-and-bottom-right-serifed] -rank = 19 +rank = 15 description = "Cyrillic Lower Ka (`к`) with symmetric legs touching the vertical bar, and serifs at top left and bottom right" selector."cyrl/ka" = "symmetricTouchingTopLeftAndBottomRightSerifed" selector."cyrl/kaDescender" = "symmetricTouchingTopLeftSerifed" selector."cyrl/kaVBar" = "symmetricConnectedTopLeftAndBottomRightSerifedVB" selector."cyrl/kaHook" = "symmetricConnectedTopLeftSerifedKH" +[prime.cyrl-ka.variants.symmetric-connected-serifless] +rank = 16 +description = "Cyrillic Lower Ka (`к`) with symmetric legs connected to the vertical bar, and without serifs" +selector."cyrl/ka" = "symmetricConnectedSerifless" +selector."cyrl/kaDescender" = "symmetricConnectedSerifless" +selector."cyrl/kaVBar" = "symmetricConnectedSeriflessVB" +selector."cyrl/kaHook" = "symmetricConnectedSeriflessKH" + +[prime.cyrl-ka.variants.symmetric-connected-top-left-serifed] +rank = 17 +description = "Cyrillic Lower Ka (`к`) with symmetric legs connected to the vertical bar, and serifs at top left" +selector."cyrl/ka" = "symmetricConnectedTopLeftSerifed" +selector."cyrl/kaDescender" = "symmetricConnectedTopLeftSerifed" +selector."cyrl/kaVBar" = "symmetricConnectedTopLeftSerifedVB" +selector."cyrl/kaHook" = "symmetricConnectedTopLeftSerifedKH" + +[prime.cyrl-ka.variants.symmetric-connected-bottom-right-serifed] +rank = 18 +description = "Cyrillic Lower Ka (`к`) with symmetric legs connected to the vertical bar, and serifs at bottom right" +selector."cyrl/ka" = "symmetricConnectedBottomRightSerifed" +selector."cyrl/kaDescender" = "symmetricConnectedBottomRightSerifed" +selector."cyrl/kaVBar" = "symmetricConnectedBottomRightSerifedVB" +selector."cyrl/kaHook" = "symmetricConnectedSeriflessKH" + +[prime.cyrl-ka.variants.symmetric-connected-serifed] +rank = 19 +description = "Cyrillic Lower Ka (`к`) with symmetric legs connected to the vertical bar, and serifs" +selector."cyrl/ka" = "symmetricConnectedSerifed" +selector."cyrl/kaDescender" = "symmetricConnectedSerifed" +selector."cyrl/kaVBar" = "symmetricConnectedSerifedVB" +selector."cyrl/kaHook" = "symmetricConnectedSerifedKH" + [prime.cyrl-ka.variants.symmetric-connected-top-left-and-bottom-right-serifed] rank = 20 description = "Cyrillic Lower Ka (`к`) with symmetric legs connected to the vertical bar, and serifs at top left and bottom right" @@ -5673,56 +5675,56 @@ rank = 1 description = "Standard, straight-leg Cyrillic Lower Ya (`я`)" selector."cyrl/ya" = "straightSmallCyrl" -[prime.cyrl-ya.variants.curly] -rank = 2 -description = "Slightly curly-legged Cyrillic Lower Ya (`я`), like Iosevka 2.x" -selector."cyrl/ya" = "curlySmallCyrl" - -[prime.cyrl-ya.variants.standing] -rank = 3 -description = "Cyrillic Lower Ya (`я`) with near-vertical standing leg" -selector."cyrl/ya" = "standingSmallCyrl" - -[prime.cyrl-ya.variants.straight-open] -rank = 4 -description = "Standard, straight-leg Cyrillic Lower Ya (`я`), with open contour at bottom" -selector."cyrl/ya" = "straightOpenSmallCyrl" - -[prime.cyrl-ya.variants.curly-open] -rank = 5 -description = " Slightly curly-legged Cyrillic Lower Ya (`я`), like Iosevka 2.x, with open contour at bottom" -selector."cyrl/ya" = "curlyOpenSmallCyrl" - -[prime.cyrl-ya.variants.standing-open] -rank = 6 -description = "Cyrillic Lower Ya (`я`) with near-vertical standing leg, with open contour at bottom" -selector."cyrl/ya" = "standingOpenSmallCyrl" - [prime.cyrl-ya.variants.straight-tailed] -rank = 7 +rank = 2 description = "Standard, straight-leg Cyrillic Lower Ya (`я`), with tail" selector."cyrl/ya" = "straightTailed" +[prime.cyrl-ya.variants.curly] +rank = 3 +description = "Slightly curly-legged Cyrillic Lower Ya (`я`), like Iosevka 2.x" +selector."cyrl/ya" = "curlySmallCyrl" + [prime.cyrl-ya.variants.curly-tailed] -rank = 8 +rank = 4 description = " Slightly curly-legged Cyrillic Lower Ya (`я`), like Iosevka 2.x, with tail" selector."cyrl/ya" = "curlyTailed" +[prime.cyrl-ya.variants.standing] +rank = 5 +description = "Cyrillic Lower Ya (`я`) with near-vertical standing leg" +selector."cyrl/ya" = "standingSmallCyrl" + [prime.cyrl-ya.variants.standing-tailed] -rank = 9 +rank = 6 description = "Cyrillic Lower Ya (`я`) with near-vertical standing leg" selector."cyrl/ya" = "standingTailed" +[prime.cyrl-ya.variants.straight-open] +rank = 7 +description = "Standard, straight-leg Cyrillic Lower Ya (`я`), with open contour at bottom" +selector."cyrl/ya" = "straightOpenSmallCyrl" + [prime.cyrl-ya.variants.straight-open-tailed] -rank = 10 +rank = 8 description = "Standard, straight-leg Cyrillic Lower Ya (`я`), with open contour at bottom and tail" selector."cyrl/ya" = "straightOpenTailed" +[prime.cyrl-ya.variants.curly-open] +rank = 9 +description = " Slightly curly-legged Cyrillic Lower Ya (`я`), like Iosevka 2.x, with open contour at bottom" +selector."cyrl/ya" = "curlyOpenSmallCyrl" + [prime.cyrl-ya.variants.curly-open-tailed] -rank = 11 +rank = 10 description = " Slightly curly-legged Cyrillic Lower Ya (`я`), like Iosevka 2.x, with open contour at bottom and tail" selector."cyrl/ya" = "curlyOpenTailed" +[prime.cyrl-ya.variants.standing-open] +rank = 11 +description = "Cyrillic Lower Ya (`я`) with near-vertical standing leg, with open contour at bottom" +selector."cyrl/ya" = "standingOpenSmallCyrl" + [prime.cyrl-ya.variants.standing-open-tailed] rank = 12 description = "Cyrillic Lower Ya (`я`) with near-vertical standing leg, with open contour at bottom and tail" @@ -5810,26 +5812,26 @@ rank = 1 description = "Cyrillic Lower Yery (`ы`) with corner at bottom left" selector."cyrl/yery" = "corner" -[prime.cyrl-yery.variants.round] -rank = 2 -description = "Cyrillic Lower Yery (`ы`) with rounded shape" -selector."cyrl/yery" = "round" - -[prime.cyrl-yery.variants.cursive] -rank = 3 -description = "Cyrillic Lower Yery (`ы`) with cursive shape" -selector."cyrl/yery" = "cursive" - [prime.cyrl-yery.variants.corner-tailed] -rank = 4 +rank = 2 description = "Cyrillic Lower Yery (`ы`) with corner at bottom left and tail" selector."cyrl/yery" = "cornerTailed" +[prime.cyrl-yery.variants.round] +rank = 3 +description = "Cyrillic Lower Yery (`ы`) with rounded shape" +selector."cyrl/yery" = "round" + [prime.cyrl-yery.variants.round-tailed] -rank = 5 +rank = 4 description = "Cyrillic Lower Yery (`ы`) with rounded shape and tail" selector."cyrl/yery" = "roundTailed" +[prime.cyrl-yery.variants.cursive] +rank = 5 +description = "Cyrillic Lower Yery (`ы`) with cursive shape" +selector."cyrl/yery" = "cursive" + [prime.cyrl-yery.variants.cursive-tailed] rank = 6 description = "Cyrillic Lower Yery (`ы`) with cursive shape and tail" diff --git a/utility/transpose-variant-tensor.mjs b/utility/transpose-variant-tensor.mjs new file mode 100644 index 000000000..8b080a8ed --- /dev/null +++ b/utility/transpose-variant-tensor.mjs @@ -0,0 +1,102 @@ +import * as fs from "fs"; +import * as path from "path"; +import * as url from "url"; + +import * as Toml from "@iarna/toml"; + +const __filename = url.fileURLToPath(import.meta.url); +const __dirname = url.fileURLToPath(new URL(".", import.meta.url)); + +main().catch(e => { + console.error(e); + process.exit(1); +}); + +async function main() { + const paramsTomlPath = path.join(__dirname, "../params", "variants.toml"); + const tomlText = await fs.promises.readFile(paramsTomlPath, "utf8"); + const tomlData = Toml.parse(tomlText); + + const selector = process.argv[2]; + const vd = tomlData.prime[selector]; + + const dimensions = (process.argv.length - 3) / 2; + const variantsPerDimension = process.argv.slice(3, 3 + dimensions).map(x => parseInt(x, 10)); + + const idMap = Array.from(Array(dimensions).keys()); + const transposedMap = process.argv + .slice(3 + dimensions, 3 + 2 * dimensions) + .map(x => parseInt(x, 10) - 1); + + let rankToDimensionMapOrig = []; + populateRankToDimensionMap(rankToDimensionMapOrig, variantsPerDimension, idMap, 0, []); + + let rankToDimensionMapTransposed = []; + populateRankToDimensionMap( + rankToDimensionMapTransposed, + variantsPerDimension, + transposedMap, + 0, + [] + ); + + const revMap = reverseMap(rankToDimensionMapTransposed); + + let rankedVariants = []; + let variants1 = {}; + + for (const [k, v] of Object.entries(vd.variants)) { + const rank = v.rank; + if (rank) { + v.rank = revMap.get(rankToDimensionMapOrig[rank - 1]); + if (!isFinite(v.rank)) throw new Error("Invalid rank"); + rankedVariants.push([v.rank, k, v]); + } else { + variants1[k] = v; + } + } + rankedVariants.sort((a, b) => a[0] - b[0]); + for (const [rank, k, v] of rankedVariants) { + variants1[k] = v; + } + + for (const [k, v] of Object.entries(variants1)) { + console.log(`[prime.${selector}.variants.${k}]`); + for (const [k1, v1] of Object.entries(v)) { + if (k1 === "selector") continue; + console.log(`${k1} = ${JSON.stringify(v1)}`); + } + + for (const [selector, glyphSuffix] of Object.entries(v.selector)) { + if (/^\w+$/.test(selector)) { + console.log(`selector.${selector} = ${JSON.stringify(glyphSuffix)}`); + } else { + console.log( + `selector.${JSON.stringify(selector)} = ${JSON.stringify(glyphSuffix)}` + ); + } + } + console.log(``); + } +} + +function populateRankToDimensionMap(sink, variantsPerDimension, mapping, iDimension, acc) { + if (iDimension === variantsPerDimension.length) { + sink.push(acc.join(",")); + return; + } + const nVariants = variantsPerDimension[mapping[iDimension]]; + for (let iVariant = 0; iVariant < nVariants; iVariant++) { + let acc1 = [...acc]; + acc1[mapping[iDimension]] = iVariant; + populateRankToDimensionMap(sink, variantsPerDimension, mapping, iDimension + 1, acc1); + } +} + +function reverseMap(a) { + const m = new Map(); + for (const [i, x] of a.entries()) { + m.set(x, i + 1); + } + return m; +}