When comparing Input Mono vs Fira Code, the Slant community recommends Fira Code for most people. In the question“What are the best programming fonts?” Fira Code is ranked 1st while Input Mono is ranked 4th. The most important reason people chose Fira Code is:
This is particularly beneficial for those who wish to use combined letters such as "æ" and other diphthongs. But when it comes to programming, the ability to scan through your code is improved with ligatures for equality, arrow functions, and more.
Specs
Ranked in these QuestionsQuestion Ranking
Pros
Pro Highly configurable
Input can be configured online with preview: width, weight, line height, and alternate letterforms.
Pro Available in Mono, Sans, and Serif
There are a couple advantages to using a proportionally spaced font in code: comfort of reading, ease of spotting typos, and better differentiation between different kinds of code with font styles. Fontbureau dedicated an entire page to this topic. Unfortunately, a lot of text editors only support monospaced fonts.
Pro Clear distinctions between similar characters
The font is easy to read, has a clear distinction between similar character types, is very customizable with weight and line height. Free for personal/unpublished usage. You can customize the font how you like it on their site before downloading it to use.
In some fonts, it's difficult to distinguish between similar characters such as i/L/1, or o/zero, or m/rn. This font does an incredible job at making all of these examples clearly identifiable.
Pro Clear on low resolution and retina display
The code stays clear on low resolution and retina display with the same font option.
Pro Large, obvious punctuation
Pro Light, Extra-Light, Thin weights
The designer advises using a lighter weight for light-on-dark color schemes.
Pro Serif font is remarkably readable
Pro Condensed and Compressed Thin saves a lot of space
When using the condensed or compressed version with the thin typeface, you gain a lot of screen space and it's still extremely readable for all day coding.
Pro Has ligatures
This is particularly beneficial for those who wish to use combined letters such as "æ" and other diphthongs. But when it comes to programming, the ability to scan through your code is improved with ligatures for equality, arrow functions, and more.
Pro Supports retina displays
Fira Coda supports high pixel density retina displays.
Pro Characters look really nice
Some characters that look odd in other monospace fonts look very nice in Fira Code: @, a, 1, lower-case-L, Q, j, *
Pro Good editor support
A list of supported editors and terminals can be found here.
Pro Has a slashed zero
New style since February 2018.
Pro Frequent updates
The repository is frequently updated.
Pro Installs easily on Mac
Many ligature fonts on Github aren't "mac ready". This font comes pre-compiled and ready to install on Windows, Mac, and Linux.
Cons
Con Closed source
Although font designers need to make money too, open source model is preferred.
Con No ligatures
This can be a pro or con depending on who you ask, but it would be nice to have the option.
Con In VS2017 this font does not work and displayed as "Courier New"
Con Hard to distinguish "8" from "B" at low sizes
This often impacts upon designers working with hexadecimal numbers. Many fonts address this by either changing the x-height for numerals, making "8" more of an hourglass shape, or making the "B" cap smaller. At 10 pt, there's less than three pixels of a difference (anti-aliased).
Con Gets the job done, but not rounded enough to be pleasant/easy on the eyes
Con Bold 5 and 6 are too similar
Con Decimal digits can blend together in Mono variant
A lot of decimal digits have a similar form, 2's can sometimes look like 8's and so forth, which makes long strings of digits hard to read. I find other fonts like Consolas's digits more legible even at smaller sizes.
In the proportional variants this is less a problem.
Con Easy to confuse lowercase "i" with "1" if you're not used to it
The dot is so close to the body that they fuse, and with the serif on top it looks like the cap of the letter "1". When you put them side by side it's easy to see which one is which, but if you see a code that reads "a+=i" you're going to read that it increments a by 1.
Con The tilde is indistinguishable from a dash
Tilde is basically indistinguishable from a dash, unless you blow the size up huge. The curves in the tilde are too shallow.
Con The '@' Symbol is asymmetric
It's a style, but it would be nice if it would wrap and not just cover the top.
Con No true italic
Italic is just a slanted original, an Oblique. Looks ugly and is difficult on the eyes.
Con Noisy serif-like style harming the text clarity
Con Ligatures are nice-looking but harm clarity
Even though the font combines characters into ligatures, you still need to type the normal characters, and the ligatures make that difficult in many cases.
Con Ligatures like == and === are harder to tell apart than they should be
Con Too wide, too large line height
Con Too wide
Much wider than other fonts.
Con Ligatures lump some characters together and make them hard to read
Con Needs support for ligatures
It can't work in plain terminal, must have built in support for ligatures in editor.
Con No Sublime Text support
Not the font's fault but even the latest Sublime Text builds (e.g. 3126) don't support ligatures.
Con Ligatures break correlation between symbols on screen and the number of characters
This makes it easier to lose the grasp how long lines actually are.
Con Curly braces are not clear enough
Curly braches ("{" and "}") are not clear enough. They are too horizontally narrow, making them look almost like pipes ("|").
Con Bad 4 and r characters, dotted 0
WHY is r a serif?
Con Cannot enable alternative stylistic styles on Xcode
I've tried enabling some of the alternate stylistic styles using Xcode's Font picker, via the "Typography" screen. None of the stylistic styles I enable get reflected in Xcode's code editor, even if I restart Xcode from scratch. I'm not sure whether this is a limitation of Xcode, or of the font itself.