
Top Programming Fonts - fogus
http://hivelogic.com/articles/top-10-programming-fonts/
======
kwantam
Several others here have suggested my favorite font already, the standard 6x13
"Fixed" bitmap font.

Pretty much every Linux machine has a version of this, but most modern Debians
(and probably others) that ship with fontconfig have bitmapped fonts turned
off by default for programs that use fontconfig for their font info (i.e., not
xterm, but gnome-terminal, usually gvim, et cetera).

If you want to use Fixed and other bitmapped fonts and they're just not there,
take a look in /etc/fonts/conf.d for a file named (something like) 70-no-
bitmaps.conf, a symblink to the same filename in /etc/fonts/conf.avail. If you
remove the symblink from /etc/fonts/conf.d and instead

    
    
        ln -s /etc/fonts/conf.avail/70-yes-bitmaps.conf \
              /etc/fonts/conf.d
    

fontconfig will cache bitmapped fonts for you. Then you'll just have to get it
to update your cache with

    
    
        fc-cache -f -r -v
    

and you should be able to use bitmapped fonts like Fixed.

You can look for other bitmapped fonts on your system with

    
    
        fc-list ":scalable=false" family pixelsize
    

which prints out the family name and the sizes for which the bitmaps are
available.

    
    
        set guifont=Fixed\ Medium\ Semi-Condensed\ 10
    

makes gvim look precisely like a terminal for me.

~~~
windsurfer
What if you have a high DPI monitor? Isn't that too hard to see?

~~~
kwantam
My desktop's monitor is about 100 dpi and it looks fine. I have a laptop with
a 125dpi screen and a netbook with a 150dpi screen, and it looks fine there,
too.

Just tried it under a Debian chroot on my phone (N900) and it was tiny but
very readable on the 250DPI screen as well.

As this is entirely subjective, the answer for some people might be that it's
unusable above 75dpi, while for me it's fine up to >3x that.

------
telemachos
I love Inconsolata, but there's just _one thing_ about it: the curly quotation
marks.

If you have that same quibble, good news: Inconsolata-dz[1]. Inconsolata with
straight quotes.

[1] [http://nodnod.net/2009/feb/12/adding-straight-single-and-
dou...](http://nodnod.net/2009/feb/12/adding-straight-single-and-double-
quotes-inconsola/)

~~~
mgurlitz
There's another Inconsolata derivative named "Inconsolata-g" with straight
quotes, dotted zeros, and other small fixes to make it a "programmer's font."
<http://leonardo-m.livejournal.com/77079.html>

------
lt
I've been using Anonymous Pro: <http://www.ms-
studio.com/FontSales/anonymouspro.html> mentioned in a followup to that
article: [http://hivelogic.com/articles/anonymous-pro-programming-
mono...](http://hivelogic.com/articles/anonymous-pro-programming-monospace-
font/)

~~~
buster
Wow, thanks! I've been looking at some of the fonts (mainly Inconsolas-dz,
Anonymous Pro, Droid and Vera) and this is a great font. Love it!

------
wladimir
He forgot my favorite programming font, Terminus. It's pretty popular in Linux
development.

<http://en.wikipedia.org/wiki/Terminus_%28typeface%29>

~~~
wging
Looking at the fonts he did select, it's clear why Terminus gets no mention:
it's significantly different aesthetically, with squarer edges and more
straight lines, etc., from his preferred fonts.

~~~
archangel_one
But his number 10 is Courier, which he basically says he doesn't like; surely
it ranks higher than that. I'd say it's not entirely dissimilar to Proggy as
well.

------
kristiandupont
I say this every time this discussion comes up but I do feel it bears
repeating: I switched away from monospaced a while ago and I am never going
back.

I encourage you to try something like Verdana for a week just to see how it
feels.

~~~
Karn
I've been using Verdana for coding for years, with some modifications. I've
changed the parentheses, braces, operators etc. to be more prominent - that
makes it just perfect for me.

Edit: screenshot here: <http://i.imgur.com/xv5oz.png>

~~~
roryokane
Would you be willing to share your modified font?

Also, what color scheme is that?

~~~
Karn
I'm not sure about the legality of sharing a Microsoft font... the color
scheme is my own.

~~~
roryokane
Then could you post a diff of the OpenType file (e.g. to a pastebin)? Only
those who already have the font would be able to produce your modified
version. Alternatively, if creating a diff would take too much time, could you
please tell me the names of the tools you used to create your own version of
the font?

------
yellowbkpk
All of these fonts look cool, but in Eclipse on Linux (and other GTK-based
text editors), the font renderer adds a few pixels to the width for bold text,
which screws up the monospacing.

Has anyone been able to figure out a way to disable this?

Example from Eclipse: <http://i.imgur.com/F3PhS.png>

~~~
xbryanx
There is some discussion on this bug report, and a possible temporary fix.
<https://bugs.eclipse.org/bugs/show_bug.cgi?id=69253>

------
SlyShy
I like to use Code Envy R: [http://damieng.com/blog/2008/05/26/envy-code-r-
preview-7-cod...](http://damieng.com/blog/2008/05/26/envy-code-r-
preview-7-coding-font-released) . It's legible at 8pt, which lets me fit big
amounts of code even on smaller screens.

~~~
rezaprima
Just nit picking, but your misspelling of Envy Code R (I read it as "envy
coder") to Code Envy R gave me a deja-vu. And I found your comment at
<http://news.ycombinator.com/item?id=1287909>. You are not alone there, though
:)

------
Jach
I'm a fan of courier, though my favorite became Bitstream Vera Sans Mono some
time ago after I was searching through my fonts for a better font. I like it a
lot because it makes it easy to distinguish between O and 0, and l and 1.

~~~
roadnottaken
Me too. I think this is default on the Ubuntu terminal. I liked it so much I
brought it over to my Windows computer at work and use it with Putty.

------
MikeTaylor
It's got to be 6x13, every single time.

There really is no other choice.

<http://mirtchovski.com/p9/fonts/6x13.png>

~~~
sedachv
I keep trying others and always end up going back to 6x13. It's the perfect
font when working on a notebook.

At work I have a larger display that sits farther away, and am running
windows. Consolas is easier on the eyes there with two Emacs buffers side-by-
side (at "108" Emacs font height).

I came across the 5x13 font (<https://github.com/chneukirchen/5x13>) and
wanted to try it on my netbook. For some reason spaces come out as hatched
boxes for me. The font itself looks promising but needs many changes (some of
which I've figured enough out to make; but I don't know what to do with the
space).

------
barrkel
I'm still using 7pt Dina, a monospace bitmap font, in all console windows and
my IDEs - all except Visual Studio 2010, that is, which doesn't properly
support bitmap fonts (leading me to avoid using it whenever possible).

~~~
unfasten
> ... all except Visual Studio 2010 ...

I'm also a fan of Dina and it's been the first change I make to any IDE or
programming text editor I use since I found it years ago. I recently came
across this when I started using IntelliJ IDEA and needed a TTF font:
[http://chrisrickard.blogspot.com/2010/03/dina-font-for-
visua...](http://chrisrickard.blogspot.com/2010/03/dina-font-for-visual-
studio-2010.html) . Quote from the page:

    
    
        *bonus* I found that this font can also be used with any .NET application
        (WPF or Windows Forms) that normally can't handle raster fonts.
    

Screenshot:
[http://2.bp.blogspot.com/_n07tuwMNUu8/S603jWw9ZVI/AAAAAAAAAK...](http://2.bp.blogspot.com/_n07tuwMNUu8/S603jWw9ZVI/AAAAAAAAAKs/Mvf02caNr74/s1600/DinaVS2010.png)

And for anyone else curious here's the original font:

<http://www.donationcoder.com/Software/Jibz/Dina/>

------
yamilg
I'm in love with Meslo <https://github.com/andreberg/Meslo-Font> works great
both on my iTerm as well as in TextMate. What makes this font special is the
L/M/S variations in the leading (line height). Give it a try, you won't
regret!

~~~
sudonim
I agree. I switched to Meslo too (based on Menlo). Menlo LG S DZ which has a
dot in the middle of the 0. Looks like the dot comes from Mensch.

<https://github.com/andreberg/Meslo-Font/issues/1>

------
davidw

        -misc-fixed-medium-r-semicondensed--13-120-75-75-c-60-iso10646-1

------
drtse4
I'm still using Envy Code R after reading about it on some blog:
[http://damieng.com/blog/2008/05/26/envy-code-r-
preview-7-cod...](http://damieng.com/blog/2008/05/26/envy-code-r-
preview-7-coding-font-released) Perfect for terminal and coding.

------
whackedspinach

      Droid Sans Mono makes for a great programming font. It’s got a bit of flair, 
      and stands out among the other monospace fonts I’ve listed, and its only 
      real flaw is the lack of a slashed zero.
    

I use Droid Sans Mono with slashed zeros on my Arch Linux box. I find that I
can get it up to a rather large font size (I don't see well) and it still
looks really good.

Download link
[http://www.cosmix.org/software/files/DroidSansMonoSlashed.zi...](http://www.cosmix.org/software/files/DroidSansMonoSlashed.zip)

Arch Linux AUR link: <https://aur.archlinux.org/packages.php?ID=40418>

------
swah
Related: [http://www.quora.com/What-are-the-best-monospace-or-fixed-
wi...](http://www.quora.com/What-are-the-best-monospace-or-fixed-width-fonts-
to-use-for-programming?q=monospace+fonts)

------
joshuacc
Inconsolata looks like it is nice for Mac users, but on Windows 7 with
Cleartype enabled (the default) it is the blurriest font I've ever seen,
regardless of what size I used.

Consolas, on the other hand, is exceedingly crisp.

~~~
FiReaNG3L
Thanks for confirming this, I installed some of those and oh my they were
ugly. I'll stick with Verdana for now :(

------
llimllib
I've been happy with Mensch: <http://robey.lag.net/2010/06/21/mensch-
font.html> , A font based of Apple's Menlo.

~~~
drats
I use Mensch too, but let's not credit Apple too much considering Menlo in
turn was a fairly minor tweak of the Bitstream Vera Sans Mono. To do so would
be almost as annoying as people claiming Apple created Webkit out of the blue
rather than starting from an open source project, or that they created their
kernel out of the blue, or their OS tools, or windowing operating systems in
general were created by them, or the personal computer or the smart phone or
the tablet. Apple is very good at polishing things, at integration, supply
chains and marketing; extremely good, and they even have a very good record on
fonts - but don't listen to Jobs' story on this or you will think we would
still be using the command line for everything - however they get orders of
magnitude too much credit when it comes to innovation.

------
ginsweater
This is the article that introduced me to monofur, which I dearly love even
though it seems fairly unpopular. Take a look[1] and you'll either think that
lowercase L is a terrible idea or exactly the thing to distinguish it from the
number 1. The rounded friendliness distinguishes it from all the other fonts I
use; now when I see monofur (in the zenburn color scheme), it says
"programming time" to my brain.

[1] <http://www.dafont.com/monofur.font>

------
Derbasti
I find Droid Sans Mono really good, although it could use better distinction
between Zero and Oh.

~~~
brcrth
Here's a version with slashed zero (there's also another version with dotted
zero from the same author): [http://blog.cosmix.org/2009/10/27/a-slashed-zero-
droid-sans-...](http://blog.cosmix.org/2009/10/27/a-slashed-zero-droid-sans-
mono/)

~~~
Derbasti
Amazing! Thank you!

------
RexRollman
Although I am not a programmer, I do prefer monospaced fonts, and my favorite
right now is the bitmap font Tamsyn. I recently discovered it via the Arch
Linux wiki and I now have it set up as the font for my Xterm windows (set via
.Xdefaults).

My favorite TTF monospaced font has got to be Consolas, which I use in Windows
as the font for Foobar2000 and Notepad2 (I keep everything in plain text).

~~~
maxer
i use notepad++ with Consolas under the zenburn theme, for clarity its the
best, especially with long coding days

------
pestaa
I went with Terminus ( <http://terminus-font.sourceforge.net/shots.html> ),
never looked back.

I wanted to add this as a comment below the article just like the author
asked, but it doesn't appear for me (using Chrome dev).

------
whatknott
I'm kind of obsessed with my coding fonts. To find some new ones check out my
stackoverflow question...
<http://stackoverflow.com/questions/485174/programming-fonts>

------
tmcw
Switched around for a long time, then realized that the coolest thing about
Kod was the default font, so I stole it for vim:

The M+ Fonts: hugely recommended - <http://mplus-fonts.sourceforge.jp/>

~~~
pbreit
Me, too! I far prefer the density but it's probably ruining my eyes. Also, on
TextMate you have to adjust the line height.

------
radiosnob
From my experience,a lot programmers get set in their ways. For example, I
just stuck with using the standard Console font for my IDE when I installed it
years ago. Then I came across this article, or one similar, and messed around
with different fonts and sizes. The difference it made was surprising. I feel
like it definitely has made an improvement in how I work. I would recommend
people try testing new fonts, layouts, etc at least once a year. the
aesthetics is just as important as the content, even when coding.

------
Adrock
If you're interested in programming fonts, I wrote a few posts doing some
programmatic comparisons:

<http://1overn.com/category/fonts/>

------
modernerd
I switched to PragmataPro[1] two months ago and love it. (Anti-aliasing turned
off in iTerm2, with Vim and the Solarized colour scheme.[2])

When you stare at code all day, it's worth spending the time to make it as
pleasant and legible an experience as you can.

[1]: <http://www.fsd.it/fonts/pragmatapro.htm> [2]:
<http://ethanschoonover.com/solarized>

~~~
eropple
Solarized is nice, but PragmataPro is vomitous. There's such a thing as too
compact, and man does that qualify.

I use Consolas at 16pt, but I also do most of my work on a 2560x1600 monitor.
Consolas at 14pt on my laptop.

------
Luyt
In this article only fixed-width fonts are presented, while there are ever
more and more developers using proportional fonts nowadays—because they're
much easier to read.

On my unix system, for example, I use Vera Sans:
<http://www.michielovertoom.com/pictures/luyt-desktop.png>

On my windows system I use Comic Sans to code, but I haven't got a screenie
ready ;-)

------
Athtar
This is not directly related to fonts but for anyone using Visual Studio, this
might be helpful: <http://studiostyl.es/>

It's a website that collects Visual Studio color schemes, so that people can
download and install them rather than spending hours customizing their IDE to
look like they want it to. Assuming they like one of the available schemes, of
course.

------
patrickg
I experiment with this a lot, my fonts folder is full of fixed width fonts.
But I somehow always go back to Monaco (11pt) white on black background. This
is using TextMate, non anti-alias. (Example: <http://tinypic.com/r/2hnayq8/7>
) Perhaps TextMate is too limited in this respect (it doesn't handle
proportional fonts well).

~~~
delackner
I searched through this whole thread looking for 'alias' to see if anyone else
also can't stand anti-aliased fonts for coding, and I see that there are a few
of us. I also always end up back with Monaco, but 10pt black on white.
Perfectly readable and easy on the eyes.

------
adambyrtek
It has been submitted at least three times already, and you can find more
comments there:

<http://news.ycombinator.com/item?id=615088>

<http://news.ycombinator.com/item?id=1058946>

<http://news.ycombinator.com/item?id=613371>

------
nikcub
consolas is an excellent font for both terminal and editing. if you would like
to install it for OS X or UNIX, I have extracted the TTF as well as the OS X
installer package and placed them into a repo here:

<https://bitbucket.org/nik/consolas/>

(the Microsoft license allows this if you have a license for Office, Windows
Vista+ or Visual Studio)

------
martincmartin
Am I the only one who programs in a proportional font? It's helpful for the
same reason it's helpful in print: the letters are more distinguished from
each other so the brain recognizes them more quickly, and you can fit more
text into the same space.

I use a modified version of Georgia which adds a slash through the zero and
changes the l (ell) to look less like the 1 (one).

~~~
oinksoft
Variable-width fonts help with natural language, to detect phonemes or even
words. Unfortunately, we are mostly dealing with machine language, where audio
is not so important, so character-by-character reading is the norm.

------
fictorial
I am a big fan of the M+ fonts [1], especially "M+ 1mn" at 24pt. Here's a
screenshot of iTerm2 on Mac OS X: <http://i.imgur.com/PjfOY.png>

[1] [http://mplus-fonts.sourceforge.jp/mplus-outline-
fonts/index-...](http://mplus-fonts.sourceforge.jp/mplus-outline-fonts/index-
en.html)

------
res0nat0r
I've been a big fan of smoothansi for a long time. It's part of the artwiz
project.

[http://codeblog.palos.ro/2008/02/08/smoothansi-font-best-
for...](http://codeblog.palos.ro/2008/02/08/smoothansi-font-best-for-
programming/)

<http://artwizaleczapka.sourceforge.net/>

------
sktrdie
FixedSys is not on the list, what a shame.

------
cschmidt
I use Pragmata as my programming font. It isn't free, but I've used it every
day for years, so it certainly has justified its cost. Visiting his site, I
see there's now a pro version, so I'll have to upgrade.

<http://www.fsd.it/fonts/pragmatapro.htm>

~~~
NickPollard
That's a really impressive font actually. I don't suppose there's any kind of
trial version you're aware of? I don't want to splash out that kind of money
unless I'm sure I'll keep using it.

~~~
cschmidt
No I don't think so. There is the basic set that you could get as a trial. I
really love it, but as these comments show font choice is very much a personal
thing.

------
ukaszg
to me, the best font ever is <http://www.netalive.org/tinkering/triskweline/>

not mentioned in the article, but I highly recommend it.

its avaliable ONLY in 10pt and only with Latin1 characters. But its so
readable and beautiful I dont care :P

------
aidenn0
I mostly like inconsolata, but it doesn't keep my favorite part of deja-vu:
the lowercase ell. I never ever confuse the ell with the one as it is so
distinct. Inconsolata does this by removing the baseline on the one, which
works, but I much prefer the deja-vu way of things.

------
rdmlx
Proggy Clean, at <http://www.proggyfonts.com>

------
pootify
I've been using Meslo LG DZ (dotted zero), which is a custom version of Menlo
tweaked for better vertical spacing. Looks great at 13pt in TextMate / MacVim.

<https://github.com/andreberg/Meslo-Font>

------
aurynn
My favourite font for coding, that which I use everywhere I can, is monofur.
Reading it is like visual candy.

It also looks really good on Linux - the AA seems to work out quite well.

Edit for hey, reading the article that mentions monofur is a good idea too. :)

------
turbohz
I've tried many monospaced fonts.

For a long time I was a ProFont guy. But I recently switched to Liberation
Mono, and I just LOVE it.

EDIT: pic or didn't happen > <http://i.imgur.com/UAag3.png>

------
Semiapies
I've been slowly shifting from Proggy to Consolas; it was easier once I
embraced larger font sizes (I have 20/20 vision, and I'd like to keep that!).
At that point, Consolas became a balm for the eyes.

~~~
jimmyjazz14
I had not realized how a font could be so much easier on ones eyes until I
started using Consolas for everything. I seriously feel more productive now
which I did not expect.

------
andyford
The lowercase 'e' in Monofur is a deal breaker. Too reminiscent of italics.
And the mixed baseline numerals don't help either. Otherwise it's pretty nice.
Of the 10, Inconsolata deserves to be #1.

------
vch
Liberation Mono on Ubuntu works great for me. <http://imageshack.us/photo/my-
images/820/screenshotsr.png/>

------
ars
I've been using Dina - it's designed as a programmers font.

<http://www.donationcoder.com/Software/Jibz/Dina/>

------
scorpion032
Somehow, Inconsolata how much ever loved by so many people, is definitely not
my taste.

Droid Sans Mono works the best for me. I have heard many Python programmers
with the same taste.

------
mlntn
Liberation Mono would be a good addition to the list.

<https://fedorahosted.org/liberation-fonts/>

------
praptak
Every second spent on "programming font" choice is a second wasted. Every
single second. Twiddling fonts is to programming what applying flame decals is
to car racing. If the font doesn't become transparent to you after uhm, about
5 seconds of focusing at the code then you should permanently switch to iPads
as you have no business doing any real computing.

~~~
orjan
I think a better analogy is "Twiddling fonts is to programming what choosing a
helmet is to car racing". An ill-fitting helmet will probably do the job just
as well as a good fitting helmet, but why be uncomfortable? That said, I agree
that there's a limit to how much effort you should put into font selection --
find one that you like and that works for your purposes and leave it at that.

------
roadnottaken
I love Hacker News. Where else would you get 100+ comments on an article about
typefaces?

------
summitpush
Trying out Consolas with iTerm2. Wish it was a little more easily portable.

------
hbrouwer
I used to use Menlo, now trying Consolas.

~~~
john2x
I tried Consolas on a Mac but it wasn't aligning right. :(

------
faruken
I prefer Menlo.

------
antihero
I rather like CG Mono as a pixel font.

------
arapidhs
is the proggy font free? great article some new discoveries for me in there.

------
joshaidan
hmm... why are all programming fonts terminal style, or monospace fonts? Well
I guess it's to ensure proper indentation and alignment of lines of code. I
guess that explains why code looks horrible when you copy and past it into an
HTML page without changing the font.

hmm... thinking out loud.

------
LBarret
using proggy.

------
getonit
I don't wish to troll, but I see this a lot and I can't for the life of me
figure out how anyone needs to give this any more thought than 'monospace,
next question?', despite many explanations each time.

Can someone shed some light on any advantages they feel are of a reasonably
significant importance, and why? I mean, I can see plenty of advantages, but
they're all so negligible they're not worth even the time it takes to change
font, IMHO.

...and do please note the IMHO - I'm asking, not telling :)

~~~
icegreentea
90% of it is really just how purdy it is. Picking the 'right' font will make
you feel better when you stare at it all day. It's like how functionally, you
could compose a 6000 word essay in comic sans, but really rather not.

But in other cases, depending on your display size/setup, I guess there will
be advantages to certain fonts. Now, mind you, the 10 on this list are all
'good' so you won't really see it between them, but certain monospaced fonts
have letters/symbols that are more easily confused with each other... like
single quote, versus the thing under the tilde (whatever its called >.<)

~~~
thomasgerbe
I find it funny how so many developers I talk to online have this aversion
to... well prettiness.

As if form and function is a zero-sum game. Or there's something inefficient
about caring about aesthetics. What's wrong with wanting something to be
aesthetically pleasing?

------
kahawe
I tried comparing several of the example screenshots next to each other and
apart from them being different sizes and some are a bit more bold than
others, I just can not tell any (significant) difference and cannot see any
benefit one might have over the other.

Can someone enlighten me what the buzz is about here and why should I switch
to Verdana or some monospaced font?

------
ujjvala
Why out of nowhere is this old article brought up ?

~~~
whatswtlogin
Just to annoy you... that's the reason. It worked! I can't be1ieve it!

~~~
brupm2
Awesome

