HNHacker News
TopNewBestAskShowJobs

thundernixon

128 karma · joined January 29, 2019

submissionscomments
thundernixon··on Recursive, a free variable font for code and UI, now on Google Fonts
https://www.recursive.design/
thundernixon··on Recursive, a free variable font for code and UI, now on Google Fonts
It’s more the case that the weight axis is common, and commonly understood, so the Google Fonts front end just leaves out any axis that isn’t Weight or Italic, I guess as a “UX” consideration. It’s unfortunate. The good news is, the Google Fonts API (the thing that serves fonts and CSS based on specific URLs) _does_ handle the other axes.

So, the Recursive minisite has a configuration tool (under the “Get Recursive” button) that makes it easy to get Google Fonts embed code for all axes.

thundernixon··on Recursive, a free variable font for code and UI, now on Google Fonts
This is one really good serif variable font:

http://www.gt-alpina.com/

Different variable fonts use different variable “axes” – choosing what parameters can/should be variable is just another design decision in making a font.

thundernixon··on Recursive, a free variable font for code and UI, now on Google Fonts
Can you perhaps say more about what you dislike about the lowercase “m”? It has to be extremely condensed to fit into a fixed-width space, just the same as any other monospaced font for code.
thundernixon··on Recursive, a free variable font for code and UI, now on Google Fonts
Thanks for checking out the font. As the main maker of it, I would love for it to include Cyrillic & Greek characters (and Arabic & Thai & more...), but this font’s variable axes mean that it is veeery slow to draw additional characters for (they have to be drawn in 12 or 24 different styles for things to work). But:

1. If someone wants to contribute the work in a PR, or the funding for work, I would be happy to extend the character set.

2. The font sticks to the most common width for monospaced fonts, so many fonts that do include Cyrillic & Greek glyphs will work elegantly as fallbacks. I recommend IBM Plex Mono, for one free + open-source option that is particularly good. Or, of course, you could just use Plex for everything, and you wouldn’t be wrong.

thundernixon··on Recursive, a free variable font for code and UI, now on Google Fonts
Small type can lose definition on screen just as much as in print, so “inktraps” are really just there to help make things more crisp in text.

Of course, they are there just as much for aesthetics if the type is used at large sizes.

thundernixon··on Recursive, a free variable font for code and UI, now on Google Fonts
A beloved classic. Thanks for trying it out, and thanks for the kind words!
thundernixon··on Recursive, a free variable font for code and UI, now on Google Fonts
Thanks, it has been a fun project to work on, and you are correct about variable fonts offering more range in fewer bytes!

Another thing worth considering in a “page bloat” debate is that while a very extensive variable font is maybe 300 kb, that size is fairly average for a JPEG, but you can do far more with a variable font.

thundernixon··on Recursive, a free variable font for code and UI, now on Google Fonts
The font is under the OFL license, and you can definitely host it on your own server, no connection to Google required.
thundernixon··on Recursive, a free variable font for code and UI, now on Google Fonts
Ha, yeah, that is a Google Fonts UI bug, and I’ve sent a message to folks over there about it.

The font has math symbols that render well. :-)

Please check out the font and try the preview/tester at:

https://www.recursive.design/

thundernixon··on Recursive, a free variable font for code and UI, now on Google Fonts
Haha, well spotted. Yeah, it seems to maybe be an issue of how Google Fonts sends preview text to the URL, and the “+” conflicts with the general separator. I’ve sent a message to the folks over there, and hopefully they will put it in their backlog to fix.

The font definitely has the “+” symbol, along with many other math & currency glyphs (and many more).

Please check it out (and try the preview/tester) at:

https://www.recursive.design/

thundernixon··on Recursive, a free variable font for code and UI, now on Google Fonts
Can I ask what software you ran into that issue with? Probably, it was a strict-monospace environment, like vim in a terminal. I have created code-specific fonts to deal with this issue:

there are fonts made specifically for code which have code ligatures & the simple l, f, 6, & 9 frozen in, if you like these features but don’t want to mess with OpenType features (or if your code editor doesn’t support that).

https://github.com/arrowtype/recursive/tree/main/fonts/rec_m....

The issue doesn’t occur in web browsers, as far as I know, as they support proportional type (include mostly-mono families with a few proportional glyphs).

thundernixon··on Recursive, a free variable font for code and UI, now on Google Fonts
There is a stylistic set which allows you to get an unambiguous 1 vs l (ss05). See:

https://github.com/arrowtype/recursive#opentype-features

Also, there are fonts made specifically for code which have code ligatures & the simple l, f, 6, & 9 frozen in, if you like these features but don’t want to mess with OpenType features (or if your code editor doesn’t support that).

https://github.com/arrowtype/recursive/tree/main/fonts/rec_m...

thundernixon··on Recursive, a free variable font for code and UI, now on Google Fonts
Yeah, we tried to pack maybe a few too many fun features into the minisite, so it is unfortunately a bit more laggy than ideal. Thanks for checking it out, though!
thundernixon··on Recursive, a free variable font for code and UI, now on Google Fonts
Strange, usually if a font is rendered with that issue, it would be in several other letters, as well.

That is often from the font renderer using an “even-odd rule” in vector rendering.

https://en.wikipedia.org/wiki/Even%E2%80%93odd_rule

What is your OS & browser version?

thundernixon··on Recursive, a free variable font for code and UI, now on Google Fonts
Nope, you are not the only one! That is an issue of the font renderer using an “even-odd rule” in vector rendering.

https://en.wikipedia.org/wiki/Even%E2%80%93odd_rule

What is your OS & OS version? This has generally gotten better over the past couple of years.

You can also use the static fonts, however, which don’t have vector overlaps, and Will therefore avoid this issue. In fact, it you were working on print design, it would probably still be better to use static fonts at this point.

thundernixon··on Recursive, a free variable font for code and UI, now on Google Fonts
Thank you for saying more, chrisdalke! I actually tried to post the font’s website, but because it was already posted last year, hacker news wouldn’t allow me to submit the link again.
thundernixon··on Recursive, a free variable font for code and UI, now on Google Fonts
You can also learn more about Recursive & configure advanced Google Fonts API calls on the Recursive minisite: https://www.recursive.design/