Iosevka/params/parameters.toml
jul-sh 6bf84e8af8
Reduce word spacing in quasi proportional mode (#2673)
* Reduce word spacing in quasi proportional mode

Currently Iosevka has word spacing that's quite a bit wider than many other quasi-proportional fonts. This change adjusts that, imo resulting in easier to read text.

I created a small preview site to demo the difference here: https://jul-sh.github.io/demo-word-spacing-iosevka/

Fixes #2656

* Make space width a seperate param with metric override field

* change space width to 7/12, update release notes

---------

Co-authored-by: Juliette Pluto <git@jul.sh>
Co-authored-by: Belleve <belleve@typeof.net>
2025-02-06 22:10:55 -08:00

161 lines
5.1 KiB
TOML

### Editing this file for font customization is strongly discouraged.
### Use `private-build-plans.toml` to create custom fonts.
### Changing the numbers may make the builder crash / hang / produce broken shapes.
[iosevka]
naming.copyright = 'Copyright 2015-{{currentYear}}, Renzhi Li (aka. Belleve Invis, belleve@typeof.net).'
naming.manufacturer = 'Belleve Invis'
naming.designer = 'Belleve Invis'
naming.description = 'Spatial efficient monospace font family for programming. Built from code. http://be5invis.github.io/Iosevka'
naming.license = '''This font software is licensed under the SIL Open Font License, Version 1.1. This license is available with a FAQ at: http://scripts.sil.org/OFL. This font software is distributed on an 'AS IS' basis, without warranties or conditions of any kind, either express or implied. See the SIL Open Font license for the specific language, permissions and limitations governing your use of this font software.'''
naming.licenseURL = 'https://openfontlicense.org/'
leading = 1250 # Default line height times 1000.
descenderPad = 0 # Additional line height, added to descender.
cap = 735 # Cap height.
ascender = 735 # Ascender height.
xHeight = 520 # X-height.
#descender = -215 # Depth of descender. Currently unused.
winMetricAscenderPad = 0 # Padding of Win ascnder metrics to avoid clipping. See #343
winMetricDescenderPad = 0 # Padding of Win descender metrics to avoid clipping. See #343
symbolMid = 340 # Center of parens, maths, geometrics...
parenSize = 966 # Size of parens, brackets, braces, slashes, etc.
operSize = 0.80 # Size of mathematical operators (cups, etc.)
tackSize = 0.80 # Size of logical operators (tacks, etc.)
bgopSize = 1.10 # Size of "taller" mathematical operators
bgtkSize = 1.10 # Size of "taller" logical operators
plusSize = 0.52 # Size of plus and arith symbols
pictSize = 1.10 # Size of pictograms
arrowHeight = 1.50 # Height of arrows
slopeAngle = 0 # slope angle, in degrees.
derivedSlopeAngle = 10 # Slope angle of derived letters requiring italics
accentWidth = 200 # Width of accent marks.
accentClearance = 80 # Vertical clearance of accent marks to the base.
accentHeight = 140 # Height of accent marks.
accentStackOffset = 205 # Offset height of accent mark stack.
overshoot = -8 # Vertical overshoot for arcs.
overshootx = -8 # Horizontal overshoot for arcs.
oxhook = -2 # Horizontal overshoot for hook tips.
refJut = 85
shoulderFineMin = 0.8
isItalic = false # Use italic shapes?
isOblique = false # Use oblique shapes?
spacing = 1 # Spacing indicator
unitWidthScalar = 1 # Scalar of unit width, used in derived builds
# Powerline-specific parameters
powerlineScaleY = 1 # Vertical scale
powerlineScaleX = 1 # Horizontal scale
powerlineShiftY = 0 # Vertical shift
powerlineShiftX = 0 # Horizontal shift
# Whether to generate CV-SS features
enableCvSs = true
# Whether to generate NWID/WWID features
enableNwidWwid = true
# Whether to generate ligation
enableLigation = true
# Excluded code points
excludedCharRanges = []
# Slab level -- Set to 0 by default
# - 0 : Sans
# - 1 : TODO
# - 2+ : Full (3.x)
slab = 0
# Old style number height
onumZeroHeightRatio = 1.145
# Diversed advance width scale factors, used in quasi-proportional families
advanceScaleMM = 1 # Extra-wide letters
advanceScaleM = 1 # M-like letters
advanceScaleT = 1 # T-like letters
advanceScaleF = 1 # f-like letters
advanceScaleI = 1 # i-like letters (with serifs/tails)
advanceScaleII = 1 # Extra-narrow letters (like i without serifs/tails)
advanceScaleSp = 1 # Whitespace characters
# OS/2 and POST fixed metrics
"os2.yStrikeoutPosition" = 265
"os2.yStrikeoutSize" = 51
"os2.ySubscriptXOffset" = 0
"os2.ySubscriptXSize" = 665
"os2.ySubscriptYOffset" = 143
"os2.ySubscriptYSize" = 716
"os2.ySuperscriptXOffset" = 0
"os2.ySuperscriptXSize" = 665
"os2.ySuperscriptYOffset" = 491
"os2.ySuperscriptYSize" = 716
"post.underlinePosition" = -50
"post.underlineThickness" = 50
[verbose]
verbose = true
###### Slab variant
[serifs-slab]
slab = 2
###### Spacings
# Wide mosaic spacing variant
[spacing-wide-mosaic]
spacing = 4
# Terminal variant
[spacing-term]
spacing = 0
# "FontFonfig Monospace"
[spacing-fontconfig-mono]
spacing = 0
enableNwidWwid = false
forceMonospace = true
# Fixed variant
[spacing-fixed]
spacing = 0
enableLigation = false
enableNwidWwid = false
forceMonospace = true
# Quasi-proportional
[spacing-quasi-proportional]
spacing = 3
isQuasiProportional = true
advanceScaleMM = 1.5 # 9/6
advanceScaleM = 1.3333333333333 # 8/6
advanceScaleT = 1.1666666666666 # 7/6
advanceScaleF = 0.8333333333333 # 5/6
advanceScaleI = 0.6666666666666 # 4/6
advanceScaleII = 0.5 # 3/6
advanceScaleSp = 0.5833333333333 # 7/12
[spacing-quasi-proportional-extension-only]
spacing = 3
isQuasiProportional = true
advanceScaleMM = 1.50 # 9/6
advanceScaleM = 1.3333333333333 # 8/6
advanceScaleT = 1.1666666666666 # 7/6
advanceScaleF = 1.00
advanceScaleI = 1.00
advanceScaleII = 1.00
advanceScaleSp = 1.00
###### Slopes
[slope-italic]
isItalic = true
[slope-oblique]
isOblique = true