recursive-code-config
recursive-code-config copied to clipboard
Feature ss04 and ss07 not working due to upstream issue
After build every feature seems to work except ss04 i.e. "simplified i".

As of 1.066, ss04 still does not work as expected
Hi @0xShamil, can you please let me know which fonts you are using (TTF/OTF/variable), and on which platform & app?
For me, these seem to be working on a random sampling:

This is FontGoggles 0.9.3, on macOS 10.15.5.
One thing that might solve your problem in the near term, potentially, would be configuring a custom build at
https://github.com/arrowtype/recursive-code-config
Seems related: In my case, the feature ss08 is not working. I built the custom font with the following config
# Family Name
# The name you want after "Rec Mono" in your custom fonts.
# Example: "Custom" will yield the family "Rec Mono Custom".
# Keep under 13 characters in length to avoid potential OS bugs.
Family Name: Custom
# -----------------------------------------------------------------------------
# Font Styles
# The variable axis values for the Regular, Italic, Bold, & Bold Italic fonts.
# See https://recursive.design for more information on these.
# MONO: 0 for Sans, 1 for Mono (or anything in-between)
# CASL: 0 for Linear, 1 for Casual (or anything in-between)
# wght: 300–1000 (realistically, about 400 for Regular & Italic and about 700 for Bold & Bold Italic)
# slnt: 0 to -15 (negative numbers are more slanted, and approximately equal to degrees of slope)
# CRSV: 0 (0 for Roman, 1 for Cursive)
Fonts:
Regular:
MONO: 1
CASL: 1
wght: 325
slnt: 0
CRSV: 0
Italic:
MONO: 1
CASL: 1
wght: 375
slnt: -10
CRSV: 1
Bold:
MONO: 1
CASL: 1
wght: 700
slnt: 0
CRSV: 0
Bold Italic:
MONO: 1
CASL: 1
wght: 700
slnt: -10
CRSV: 1
# -----------------------------------------------------------------------------
# Font Features
# Freeze in code ligatures? True or False
Code Ligatures: True
# Include font features to freeze in stylistic options. Copy them below to use.
# See README for details.
# These options only have an affect at CRSV<=0.5 (Roman/normal styles)
# ss01 # single-story a
# ss02 # single-story g
# ss03 # simplified f
# ss04 # simplified i
# ss05 # simplified l
# ss06 # simplified r
# These options affect both Roman & Cursive styles
# ss07 # serifless L and Z
# ss08 # simplified @
# ss09 # simplified 6 and 9
# ss10 # dotted 0
# ss11 # simplified 1
# (Keep the hyphen before each list item)
Features:
- ss03 # simplified f
- ss05 # simplified l
- ss07 # serifless L and Z
- ss08 # simplified @
- ss09 # simplified 6 and 9
# That’s it! See README for next steps.
~
Turns out the problem I encountered was due to a comment error in the config file. Fixed in https://github.com/arrowtype/recursive-code-config/pull/7
One thing that might solve your problem in the near term, potentially, would be configuring a custom build at
https://github.com/arrowtype/recursive-code-config
Hello,
ss04 is not working for me also. My environment is Win10 x64 20H2. I build recursive-code-config using WSL2 + Ubuntu 20.04.
Windows 10 font settings screenshot: https://1drv.ms/u/s!Ar-rBqJF_BY5gbwFSJFWtL1ntSB0Yw?e=I2whod
My config.yaml:
https://1drv.ms/u/s!Ar-rBqJF_BY5gbwG0ZyILNoI0E9G5w?e=BmlNIc
Thank you.
Hi all, sorry about this mess-up.
If you're still interested, please try again with the latest commits. Thanks!
Nevermind; I now realize that I misunderstood this issue a couple of times.
I see now that trying to build the code fonts with ss04 does not apply the simplified i, as it should. Debugging now...
Okay, I think this might be partly due to a current limitation of the opentype-feature-freezer, https://github.com/twardoch/fonttools-opentype-feature-freezer/issues/20. From there:
it won’t work if a glyph is only accessible only through a combination of multiple features, which is not a systemic limitation, just of the implementation.
For ss04, I think the simplified i is "only accessible only through a combination of multiple features." To get the i.simple glyph:
rvrnchanges the glyph fromitoi.mono- Then,
ss04changesitoi.simpleandi.monotoi.simple
But also, most of the other stylistic sets work as expected, and the g, l, and r all have very similar substitution complexity – even with the exact same suffixing happening: normal to .mono, then .mono to .simple.
Still, maybe there is something unique that I’m not realizing which is disrupting the i? Perhaps the issue is that the i is made from components to start?
I’ve also found that ss07 (simplified italic diagonals) doesn’t work.
FWIW, I have also tried this outside of my main script, to reproduce: I used the FontTools Instancer to output a static mono family, then used pyftfeatfreeze to try to freeze in features. Again, things except for the ss04 & ss07 seemed to work.
i think i may have run into this issue with ss03 and ss05 simplified f and l. they show as the regular unsimplified form in font book
using 1.084, downloaded the repo earlier today
Hmm, ss03 and ss05 (simplified f and l) are working fine for me, in both VS Code and in Font Book:
Do they show up for you in your code editor? Which version of macOS are you on?
catalina, i also don't remember like any of this and what issue i was having exactly
Totally fair. Thanks for your reply! Well, I think it works as of now, for ss03 and ss05.