Fixed width and removal logic for Long Leftwards Arrow (U+27F5) and Long Rightwards Arrow (U+27F6) (#1245).

This commit is contained in:
be5invis 2021-11-04 18:49:07 -07:00
parent b08da0973a
commit 3418dc28ef
4 changed files with 9 additions and 5 deletions

View file

@ -1,2 +1,3 @@
* Change the shape of Eng (`U+014A`) into "N with Hook", to follow Unicode code chart (#1239).
* Increase shoulder arc thickness of lowercase `r` for better thickness contrast (#1243).
* Increase shoulder arc thickness of lowercase `r` for better thickness contrast (#1243).
* Fixed width and removal logic for Long Leftwards Arrow (`U+27F5`) and Long Rightwards Arrow (`U+27F6`) (#1245).

View file

@ -46,6 +46,7 @@ Inside the plan, top-level properties include:
* `family`: String, defines the family name of your custom variant.
* `spacing`: Optional, String, denotes the spacing of the custom variant. Valid values include:
- `normal`: The normal monospace font.
- `quasi-proportional`: The font will become quasi-proportional.
- `term`: Make the symbols' width suitable for terminal emulators. Arrows and geometric symbols will become narrower.
- `fontconfig-mono`: Apply `term` spacing changes and further apply changes to be compatible with FontConfig's Mono spacing, which recognizes a font as monospace if and only if its every non-combining characters having the same width. The changes include:

View file

@ -286,9 +286,11 @@ glyph-block Symbol-Arrow : for-width-kinds WideWidth1
MkArrow ArrowShape [MangleName 'arrowDownRight'] [MangleUnicode 0x2198] arrowDiagSB arrowDiagTop arrowDiagRSB arrowDiagBot
MkArrow ArrowShape [MangleName 'arrowDownLeft'] [MangleUnicode 0x2199] arrowDiagRSB arrowDiagTop arrowDiagSB arrowDiagBot
define kLong 0.5
MkArrow ArrowShape [MangleName 'longArrowLeft'] [MangleUnicode 0x27F5] [mix MosaicWidth arrowRSB kLong] SymbolMid [mix 0 arrowSB kLong] SymbolMid
MkArrow ArrowShape [MangleName 'longArrowRight'] [MangleUnicode 0x27F6] [mix 0 arrowSB kLong] SymbolMid [mix MosaicWidth arrowRSB kLong] SymbolMid
# These arrows are always wide. In force-monospace variants they will be deleted
if (MosaicWidthScalar > 1 && !para.forceMonospace) : begin
define kLong 0.5
MkArrow ArrowShape 'longArrowLeft' 0x27F5 [mix MosaicWidth arrowRSB kLong] SymbolMid [mix 0 arrowSB kLong] SymbolMid
MkArrow ArrowShape 'longArrowRight' 0x27F6 [mix 0 arrowSB kLong] SymbolMid [mix MosaicWidth arrowRSB kLong] SymbolMid
do "Dash Straight Arrow"
MkArrow DashArrowShape [MangleName 'dashArrowLeft'] [MangleUnicode 0x21E0] arrowRSB SymbolMid arrowSB SymbolMid

2
package-lock.json generated
View file

@ -1,6 +1,6 @@
{
"name": "iosevka",
"version": "10.3.4",
"version": "10.4.0",
"lockfileVersion": 1,
"requires": true,
"dependencies": {