Recs.
Updated
SpecsUpdate
Pros
Pro Language-agnostic
Does not implement ligatures for character combinations that do different things in different languages.
For example, a Haskell specific ligature for /= is to combine the characters into ≠because in Haskell it means inequality, however this would be confusing in C as C treats /= as divide and assign.
(Note: Also listed as a CON because this means that ligatures that some people may want will never be implemented.)
Cons
Con Lowercase 'r' looks off
The r
is the only character with serifs and makes it look out of place and distracting.
However, there is a 'stylistic set' that changes this behaviour (the ss01 option).
Con Some ligatures will never be implemented
Because FiraCode aims to be language-agnostic, character combinations that perform different actions in different languages are not implemented. One such character combination is /= that is an inequality operator in languages like Erlang and Haskell, while it means divide and assign in C.
(Note: Also listed as a PRO because seeing ≠in a C program where you're dividing and assigning could be confusing.)
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.