When comparing Bitstream DejaVu Sans Mono vs Microsoft Consolas, the Slant community recommends Microsoft Consolas for most people. In the question“What are the best programming fonts?” Microsoft Consolas is ranked 10th while Bitstream DejaVu Sans Mono is ranked 13th. The most important reason people chose Microsoft Consolas is:
There is good overall disambiguation of similar-looking characters in Consolas. For example, there are slashed zeroes, meaning the number "0" (zero) can be differentiated from the letter "O" (Oh).
Specs
Ranked in these QuestionsQuestion Ranking
Pros
Pro Very clear distinction between similar characters
It's easy to distinguish between characters such as I, 1, l, O, and 0 in DejaVu Sans Mono.
Pro Clean, readable design
Reading the text is pleasant and effortless. Letter forms combine nicely into words.
Pro It's subtle, yet stylish and extremely readable, very easy on eyes and very effective for long development sessions
Pro Nice uniform spacing
The font is well spaced and doesn't break up words.
Pro Excellent unicode support
DejaVu Sans Mono has one of the most complete Unicode fonts available. This means you have access to a wide range of special symbols including mathematical symbols like arrows, operators, and special alphabets. This is useful for certain languages that require special characters like Agda.
Some languages allow using these characters optionally. There are editor modes that display characters like this without changing the underlying file, much like syntax highlighting. The Emacs modes for OCaml and Haskell are prime examples.
Pro Available with every linux distribution and works fine in vim, emacs and atom
It's also included in modern versions of Windows.
Pro Bold font is the same width as the regular weight font
The Sans Mono version is graphically close to Andale Mono (Microsoft core web font), slightly bolder, with the added bonus of the bold font being the same width as the regular one (unlike Andale Mono). It is a nice property with some syntax highlighting text editors.
Pro Closely related to MobaFont
For MobaXterm users, this font closely mirrors the embedded MobaFont so they can use a monospace font across other applications.
Pro Differentiation can be easily made between alike characters
There is good overall disambiguation of similar-looking characters in Consolas. For example, there are slashed zeroes, meaning the number "0" (zero) can be differentiated from the letter "O" (Oh).
Pro Available for Windows and OS X
The font is available on machines running Windows Vista, Windows 7, Windows 8, and Windows 8.1, as well as part of Microsoft Office 2007 and Microsoft Visual Studio 2010. Otherwise it can be downloaded from Microsoft's homepage. It can also be set up on OS X machines with instructions on how to do it available here.
Pro Nice appearance
Consolas has a good appearance and character without being too distracting.
Pro Can display a lot of text due to narrow width
Consolas is really narrow compared to most monospace fonts. The more narrow each symbol, the more text you see on the line.
Pro Includes true italics
There are true italics for this font, compared to obliques with most other monospaced fonts.
Pro Includes a large number of unicode ranges
Consolas supports 30+ unicode ranges including Greek, Cyrillic, and Thai for a total of 2735 glyphs.
Pro It reads so smooth
This font reads so smooth that it actually feels annoying to see it being treated as a programming font. For god's sake, don't treat it like a programming font, because this is the best general-use sans-serif font in my opinion. The humanist letterforms and the balanced monospace design are surely a great combination. Not to mention, unlike many other fonts, Consolas is the one to get character shapes "right". The "support bars" design on i and l allows for comfortable text reading unlike the abstract curvy design on some other monospaced fonts. And the r is also done properly, it curves all the way down.
Pro Supports patch that adds Powerline symbols
Consolas can be used with the vim plugin Powerline if the following patch is applied: Patch.
Pro Writing/reading text in LaTeX
When writing and reading text in LaTeX text editor, the content is code and text. Code can be read in other fonts, but reading main text in programming fonts other than Consolas can get you frustrated and irritated.
Cons
Con Crowded bold styles
At size 12, in bold text, some letters bump up against each other too closely, greatly reducing legibility.
Con Tilde character lacks curvature
The tilde character in this font ('~') does not have enough curvature to be read easily at small sizes. This can be a concern for Unix(-like) shell users and script writers, as the tilde is used relatively often compared to other symbols.
Con The "-" symbol is short
For example, when using the '-' symbol for borders, it's super short in this font.
Con No ligatures
Missing programming ligatures.
Con Dotted zero
Dotted zero is less readable than slashed zero.
Con Not suitable for Vietnamese
This font is really ugly when used with Vietnamese characters.
Con Missing some Vietnamese characters
ấ, ề, ự, etc. are missing in DejaVu Sans Mono.
Con Some characters are similar
Small 'L', capital 'i' and 1 are too similar.
Con Too much serif on lowercase L
Lowercase L has a top left serif and a bottom right curved serif, and both are too long; so long that they make lowercase L look like an uppercase i.
Con Not free
Consolas costs 129€ for personal use, but you can get it for free (as in beer) bundled with some free MS products (example).
Con Font size can't be changed gradually
Letter height is the same for 9 and 10, and for 11 and 12 pt. When switching from 10 to 11 pt, letter height changes abruptly (whereas line height changes gradually). This makes it impossible to choose exact letter height on a standard display. Size can't be set to 10.5 pt, for example.
Con Italic font is very different
The italic font (often used for comments) feels jarringly different to the regular one - especially on the "g" and "f" and "l" (lowercase L) glyphs.
Con Starting from 9pt, "!" is too similar to "|"
Con Not avaiable for Linux
Con Poor legibility with small font-sizes on non-hidpi screens
Consolas in the 9 to 13 pt range is hard on the user's eyes with any monitor that's 1080 p or below.
Con Small 'L' is too similar to digit 1
You can tell the difference when they are close together, but when used apart, it can be a bit hard.
Con Highly aliased with ClearType
Consolas is specifically designed to work with ClearType antialiasing, so it becomes highly aliased when ClearType is not turned on. This can be alleviated to a degree with any basic grayscale anti-aliasing.
As an OpenType relative of Consolas, Inconsolata works well without ClearType (Inconsolata-g being the most popular variant).