Hacker News new | past | comments | ask | show | jobs | submit login

The 3 main things I look for in a "coding font" are whether I can differentiate between i,I,l,L,1 and 0,o,O characters, whether or not it is readable at tiny font size (7px to 9px range on my display) and that it is a monospaced font. first and second are nice to have in any font.

For over 4 years I have sworn by the excellent Fira Mono font by Mozilla more specifically FiraCode (variant with added ligatures), before that it was Consolas. Beyond the three things I have mentioned I do not desire anything more from a font.

[0] http://mozilla.github.io/Fira




I like Fira Code but it has too much flare for me. Microsoft recently came out with Cascadia Code which fits my bill. I don't know if it fits yours. It looks like you've already found your solution but I thought I'd pass this along anyway.

https://github.com/microsoft/cascadia-code/releases


Cascadia looks really nice, but I worry about fonts that combine two equals signs into one long one. I can imagine getting used to it, but until I did I'd be worried about assignment-vs-equality operator bugs


You might be able to disable ligatures in your editor


Thanks for the suggestion, I did not know about Cascadia Code. I am a big fan of Consolas font but it is proprietary so I had to look for something better which lead me to discover Fira Mono. I personally really like its design choices, that is why I have been using it for so long also the fact that it is floss font is a huge plus, and If by flare you mean the ligatures then Fira Mono (the original font without the patched in ligatures) might interest you, then again if it has too much flare for you then that is that because font preference is subjective.


I looked at the issues page and was not surprised that Microsoft, in its Seattle-centric view of the universe, did not cover many international glyphs.

Any comment on how many of these coding fonts suffer these issues? I am glad to see the screenshots in the article at very least thought to include Greek.


I think a programming font should cover at least full Latin and basic Greek, and the Unicode blocks General Punctuation, Superscripts and Subscripts, Currency Symbols, Letterlike Symbols, Number Forms, Arrows, Mathematical Operators, Miscellaneous Technical, Control Pictures, Box Drawing.


In fairness to Microsoft, Cascadia Code is still a young project. A couple of weeks ago, they had their second release which added Latin characters (vowels with accents, cedillas, etc.) Hopefully they keep adding more.


Perhaps I am slightly frustrated that I have seen recent MS de-prioritize internationalization. Which is ironic because in the 90s they had Unicode support and features like RTL mirroring before a lot of others.

I am also a former MS employee, so maybe it is more of a loving criticism than appears on the surface.


looking at the roadmap it seems like a number of things are coming...

https://github.com/microsoft/cascadia-code


Why tiny font sizes, out of curiosity? Do you typically use those font sizes, or is that just a handy measure of readability?

I'm all for fitting a lot of content on the screen, but I don't go as far as shrinking font size to the minimum I can read.


Good question, Although the numbers are almost arbitrary there are a couple of reasons:

-- when looking at logs, database dumps or large forigen text files in general, it is often convenient for me to set the font to a smaller size in order to get better context from surrounding text and for this purpose, I need the font to be able to facilitate my workflow regardless of size and resolution of my current display.

-- Although I no longer use mini map like features of text editors (in part due to the novelty wearing off and in part due to my move away from VS Code as my primary IDE/Editor to Neovim), such fonts make the mini map almost readable on large high resolution displays (which again, provides better context for the code I am editing).

-- It is a handy measure of readability. If the font is readable at that size then it has good geometry and can be used on most low resolution displays (it is a range I came up with after experimenting with a 768p 15.6" laptop display) as previously mentioned sometimes it is handy to be able to lower the size in order to get a better view of the context.


not op, but while I don't usually set my fonts so small, on occasion I felt the need to, and was frustrated when my used font suddenly became unreadable.


The 0 and O are fairly ambiguous in that example. I pretty much require strikes or dots in the 0 for any font to be considered unambiguous.


You might be looking at the non monospaced variant in the Fira font family.


I think you looked at Fira Sans, the Fira Mono typeface is below that.


The zero is dotted...


U used Monofur[0] as a programming font for the longest time since it differentiates the similar characters so well. In addition it's a nice friendly looking typeface with big round characters.

That said these days I mostly use fyra code.

[0] https://www.dafont.com/monofur.font




Consider applying for YC's Spring batch! Applications are open till Feb 11.

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: