What does HackerNews think of FiraCode?
Free monospaced font with programming ligatures
https://github.com/tonsky/FiraCode https://news.ycombinator.com/item?id=10764527
But I think it's different: it uses double-width characters for two-character ligatures, so this doesn't break alignment.
On my personal machine, my terminal font is Cozette[1] 13pt, while on my company machine it's Dank Mono[0] 14pt.
In the past I've also used SF Mono[2], Fira Code[3] and Anonymous Pro[4] among others.
[0]: https://philpl.gumroad.com/l/dank-mono [1]: https://github.com/slavfox/Cozette [2]: https://developer.apple.com/fonts/ [3]: https://github.com/tonsky/FiraCode [4]: https://www.marksimonson.com/fonts/view/anonymous-pro
Additionally, I use the 'Fira Code' font for the UI, so you must have that installed if you want your foobar to look the same. That font is freely available here: https://github.com/tonsky/FiraCode
For example, the author uses Fira Code[0] as an example of well-intentioned by problematic ligatures. The author says this is bad because (1) it contradicts unicode and (2) the substitutions will be inappropriate sometimes.
(2) is solved by applying substitutions in semantically relevant places with the syntax highlighter. This would be particularly useful when typing special sequences. If you get the ligature substitution, then you know you don't have a typo.
(1) is trickier. You want to save a unicode file, and you want to be able to copy text selections that end part way through a ligature. This requires some finesse.
While not Comic Sans, another Microsoft Web Core font which has been reasonably cloned is Trebuchet MS. Fira is, to my eyes, an open source font which looks similar to Trebuchet MS, and there is the very popular monospace variant Fira Code: https://v-fonts.com/fonts/fira-code https://github.com/tonsky/FiraCode
Not to mention the original Fira Mono: https://github.com/bBoxType/FiraSans/blob/master/Fira_Mono_3... for a sample or https://github.com/bBoxType/FiraSans to download.
I don't have the knowledge to respond to your second point.
For instance, look at the list of ligatures for Fira Code[1] and without referencing the monospace counterparts on the right, tell me if you can tell how to reproduce each one without a lot of guesswork.
I'm not angry, but I'm pretty sure it's objectively a bad idea. Provably, it's more difficult to read cursive fonts than, say, sans-serif monospace fonts.
Not to mention that the argument that "people like different things" is just not very good. It's simply a bad design choice. Cool project, and the monospace as well as ligatures are awesome, but the cursive italics are most definitely a bust. For context, I've used Fira Code[1] for the past few years and I'm quite happy with it. Author's claim that there aren't any free clean programming fonts is also a bit bizarre; we see free fonts released all the time.
FYI, there's also the "Input" font for coding: https://input.fontbureau.com/ and of course "Fira Code" which became popular for ligatures: https://github.com/tonsky/FiraCode
Some of my favorites include:
- Hack (https://sourcefoundry.org/hack/)
- IBM Plex Mono (https://www.ibm.com/plex/)
- Input (above)
- Fira Code (only when coding JS, the only place I like ligatures) (https://github.com/tonsky/FiraCode)
I'm generally a fan of Practical Typography, but this post is unnecessarily condescending. It's sort of laughable to claim that "this isn’t a matter of taste" when users are making this choice in the privacy of their own editors.
For general purposes, I like Open Sans[2].
https://github.com/tonsky/FiraCode
I used to prefer Consolas (Inconsolata is a ~clone of Consolas) but the ligatures made me switch.
https://github.com/tonsky/FiraCode
Depending on your (irrational) feelings about fonts and typography, this may either be the most amazing advance in coding readability you've ever encountered, or a mild improvement, or even annoying. But I love them!
A number of coding-oriented fonts support them now:
https://medium.com/larsenwork-andreas-larsen/ligatures-codin...
also, small grammar niggle: "it's" should only be used where it can be replaced with "it is" and still make sense; otherwise it's always "its" :)
I don't know if you've ever played with a font like FiraCode, but it gives you both fancy typographical symbols and compatibility with existing compilers by defining purely-visual translations between certain sequences of characters and purpose-built glyphs. So for example '!=' is rendered as '≠', '=>' as '⇒', '>=' as '≥', etc.
See https://github.com/tonsky/FiraCode. They do go a bit overboard, IMO.
-> →
=> ⇒
>= ≥
I've seen an increasing number of people trying out Fira Code, which includes a nice set of such ligatures:But then I don't inflict them on anyone but myself and people who look over my shoulder...
How do you type ┌─ ?
It's easier to use a font that renders "regular" keyboard characters as borders, akin to https://github.com/tonsky/FiraCode
Turns out that ligatures in common font formats are quite powerful! See e.g. http://www.sansbullshitsans.com/ or https://github.com/tonsky/FiraCode
See https://github.com/tonsky/FiraCode
It's a superficial reason, but I've gotten very used to them in Emacs, IntelliJ IDEA, VS Code and Atom, yes, I'm still using all of them interchangeably :-(
Much better, and justifies the use of a special font, which IMO is not really worth it without ligatures.
One of the reasons I switched from Sublime to Atom was exactly that, but I'm willing to switch back since I've yet to find an editor as fast and lightweight as Sublime.
- The submitted font - scroll down to "Ligation sets" https://be5invis.github.io/Iosevka/ (note that they only show symbols)
- https://github.com/tonsky/FiraCode
- https://github.com/i-tu/Hasklig
I think people using a programming language with a more math-like notation probably benefit much more than those using "normal" languages.
[1]: https://github.com/tonsky/FiraCode
Edit: ouch Operator Mono is $199 and up. I've purchased quality fonts before, but that's well above my impulse-buy threshold.
Take a look at Fira Code [1]. I use it in Vim and IntelliJ, and it looks great with Rust and other functional languages.
Has there been any thought into providing a variant with some? While I could see why some might be against them I think they're rather fun and can make code more readable.
[1] see for example https://github.com/tonsky/FiraCode
https://github.com/i-tu/Hasklig
edit: switched to Fira Code Light (now that there is a light version)
Both should be well known to HN readers.
I find the idea interesting and would love to see more in this direction. It especially makes sense for languages with more obscure operators that are mimicking traditionally handwritten mathematical symbols.
That being said, I tried using FiraCode for a week and switched back. Some of the conventional common operators have become so ubiquitous and second nature to me that its difficult to adjust (especially the comparison operators). I'm still looking forward to more extended ligature fonts though.
EDIT: Looks like FiraCode has ligatures too https://github.com/tonsky/FiraCode