top | item 4623482

Adobe's Source Code Pro Font

166 points| pykello | 13 years ago |opensourcehacker.com

115 comments

order
[+] ary|13 years ago|reply
I would be remiss not to point out Inconsolata. It's perfect (IMHO) for code, terminals, and email.

http://levien.com/type/myfonts/inconsolata.html

[+] ggchappell|13 years ago|reply
It's good, but I'd say it's short of perfect due to the similarity of the "1" [one] and "l" [lower-case ell]. Inconsolata-g fixed this, but in a strange way (taking the lower serif off the "1" [one]).
[+] jamesaguilar|13 years ago|reply
The big trouble with Inconsolata for me is the lack of a bold weight. This means it doesn't work in emacs if you use bold with your font lock mode.
[+] tzaman|13 years ago|reply
Exactly, I use it in all my editors and iTerm too
[+] macrael|13 years ago|reply
I've recently switched to coding in a proportional width font (right now I'm using Verdana) and I'm never going back. I've yet to be bothered by things not lining up perfectly like things can in fixed width fonts, and overall my code feels more readable and easy on the eyes. I recommend giving it a try.
[+] lsb|13 years ago|reply
What sort of code are you writing? What languages are you using?
[+] kalininalex|13 years ago|reply
Second Verdana. I use it on both Mac and Windows for all languages. It looks and reads better that any of the fixed fonts I've tried. In the first couple of days after I switched it felt a bit weird, but then that feeling went away. I suspect that was due to the fact that I was simply used to fixed fonts and not that there was anything wrong with proportional fonts.
[+] kyrra|13 years ago|reply
I would consider trying proportional width fonts, but I work on a fairly large team that all touches a lot of the same code. Having bunch o comments not line up may not bother me, but it would annoy others on the team.
[+] whalesalad|13 years ago|reply
I tried to get down with Source Code Pro, but it's such a radical departure from the popular monospaced fonts like Consolas, Inconsolata, Menlo, Monaco (classic!), etc... that I couldn't do it =(

It's interesting how much of your productivity comes from the subtle/indirect recognition of things. Changing something as trivial your color scheme or font can take a good chunk of time for adjustment.

I'm a huge fan of Ubuntu's monospaced font and use it on my Mac with Sublime.

http://wsld.me/JzYm (Ubuntu Mono, 16pt)

[+] iambvk|13 years ago|reply
+1 for Ubuntu Mono. IMO it looks better than Inconsolata.
[+] artursapek|13 years ago|reply
I've never understood why people code on dark backgrounds with such thick, fuzzy fonts. I find it extremely hard to read and have instead grown used to coding on an off-white background. Fonts are just rendered much thinner in a dark color on a light background (or at least, they seem to be). There's more space between legs and inside the o's in the letters. I find it much easier to read.

I've spent many hours trying to figure out how to convince Vim and/or OS X to lighten up on their font rendering. For some reason the only place I've been able to pull this off is Drracket which I just use for a class, and which has an option to do it. I've never been able to pull it off in my standard coding environment. I can't understand why that option isn't available anywhere else, or on an operating system level.

This is Monaco 12pt in Drracket and Vim, with that Drracket font smoothing option at the bottom: http://i.imgur.com/Va0ZN.png

Is there a good reason there's such little control over font rendering, at least on Mac?

[+] tuxracer|13 years ago|reply
OSX font rendering is optimized for high ppi displays (128+ ppi). If you try to look at screenshots of OSX font rendering on low-ppi displays (i.e. typical Windows laptop with 15" display at 1366 x 768) it's going to look incredibly fuzzy.

On the other hand, ClearType is optimized for low-ppi displays. If you try to view text rendered with ClearType on a high ppi display (128+ ppi) it will look incredibly thin because ClearType attempts to force straight font lines into a single row or column of pixels which is incredibly thin at such a high ppi. That's the very thing that makes ClearType fonts look much crisper on very low ppi displays.

tl;dr OSX font rendering is much more readable on 128+ (or even 220) ppi displays.

[+] xentronium|13 years ago|reply
> why people code on dark backgrounds

I do it mostly because staring at white background all day burns into my retinas.

> I've spent many hours trying to figure out how to convince Vim and/or OS X to lighten up on their font rendering

There was a system-wide anti-aliasing strength setting for OS X.

    defaults -currentHost write -globalDomain AppleFontSmoothing -int 2
I believe it's 0 to 3 but I can't check right now.
[+] miohtama|13 years ago|reply
You are correct. The Source Code Pro light variant looks less fuzzy than Source Code Pro (normal). OSX does very fuzzy fonts by default. I updated the blog post to reflect that you should consider the light variant first on OSX.

Also when switching to the retina display the fuzziness goes 100% away.

[+] mgcross|13 years ago|reply
I find off-white a little easier to read, but the sheer amount of light emanating from a large screen anywhere near white irritates my eyes more so than the strain of reading slightly fuzzy fonts.
[+] saurik|13 years ago|reply
"Please note that Source Code Pro comes with varying lightness degrees (I think there was 5 of them)." <- From the comments on this article; might be useful.
[+] dmorgan|13 years ago|reply
>I've never understood why people code on dark backgrounds with such thick, fuzzy fonts. I find it extremely hard to read and have instead grown used to coding on an off-white background.

Because we (I) find them extremely easy to read. I can't stand white or off-white backgrounds.

[+] rbanffy|13 years ago|reply
Since my Favorite Terminal of All Time is the IBM 3278, I cannot possibly resist mentioning the font I built upon x3270's bitmap:

https://github.com/rbanffy/3270font

Yesterday, I moved all my terminals to the narrow version.

[+] qznc|13 years ago|reply
Are there screenshots available?
[+] hythloday|13 years ago|reply
None-one's mentioned it so I want to point out Anonymous Pro, pretty much the first thing I install on every dev machine.

http://www.ms-studio.com/FontSales/anonymouspro.html

[+] tiziano88|13 years ago|reply
After years of using Terminus on every single machine, I'm now switching to Anonymous Pro, and I'm liking it very much so far... Maybe I'll give Source Code Pro a try though, and see how it compares to them :)
[+] buster|13 years ago|reply
Yep.. Anonymous Pro is also my choice. Also i switched to Source Code for now to test :) Both are good anyway..
[+] cek|13 years ago|reply
I pulled Source Code Pro out of brackets a few weeks ago and loved it in Sublime, VS, and ConEMU on Windows and iTerm2 on the Mac. Then someone pointed me at Envy Code R [1]...

I find it much more pleasing with the benefit of great differentiation between 0 O etc...

http://damieng.com/blog/2008/05/26/envy-code-r-preview-7-cod...

[+] vinayan3|13 years ago|reply
I'm switching from Consolas to Source Code Pro Font!This font works in Emacs on Mac OS X!

Let the fixed width font war begin. Apple Vs. Microsoft vs. Adobe.

[+] tangue|13 years ago|reply
Yes, it looks really great in Emacs http://imgur.com/7rBbP I just find the black font a bit too heavy, but everything else is fine.
[+] tsahyt|13 years ago|reply
Looks good. However, nothing's going to stop me using TheSansMono[1]. I've discovered this font a while ago and have never looked back. I like the look and all the characters that might look similar have been worked on in order to be easily distiguishable, like the capital O and the number 0, the lowercase l and 1, and so on. Since it's my terminal font it's really the main font on my system and so far it's worked for everything.

[1] http://www.lucasfonts.com/fonts/thesansmono/

[+] ogai|13 years ago|reply
With all respect, I consider Terminus better, among other things because it is more compact and more readable
[+] ck2|13 years ago|reply
SourceCodePro is too wide or has too much horizontal spacing for me.

DejaVu Sans Mono can be better in some environments http://dejavu-fonts.org/wiki/

I also discovered I like the new Ubuntu Mono http://font.ubuntu.com/

except it has too much vertical spacing, but I hope to find a way to easily edit that someday

[+] tammer|13 years ago|reply
I used the Source family briefly. It's quite nice, although there was something I didn't quite like about it. I replaced it with the Nimbus L family, which is very similar but seems easier to read to my eyes. (on X11, anyway. doesn't look quite as good on OS X for whatever reason).
[+] miohtama|13 years ago|reply
I added some notes to the blog post about customizing horizontal and vertical spacing of the text. Advanced editors and terminals usually have a setting where you can fiddle this for your own comfort.
[+] phylofx|13 years ago|reply
> SourceCodePro is too wide or has too much horizontal spacing for me.

I think so, too. At least compared to Consolas which I use and prefer.

[+] WiseWeasel|13 years ago|reply
Yeah, I tried this and ended up going back to DejaVu Sans in my Linux dev environment. Source Code Pro looked fuzzy to me.
[+] px1999|13 years ago|reply
While not for me (I love Consolas too much), it's great that we're starting to see some useful fonts under permissive licenses (and from big names like Adobe and Google). I remember back in the day when there were only a handful of fonts that had a license that a) allowed redistribution and b) weren't GPLed.
[+] cabirum|13 years ago|reply
Worth noting the character set is lacking compared to other fonts such as Consolas or Ascender Uni.

There's too much attention for 0 vs O's and too little for unicode coverage. Personally, I never understood the whole character differentiation thing when most modern editors/IDEs feature syntax highlighting and checking.

[+] soapbeard|13 years ago|reply
Ive been using the VGA font since I started coding borland IDEs in DOS. I just cant find any other font that seems as easy to read. There is even a version of it with lots of unicode characters added.

http://www.inp.nsk.su/~bolkhov/files/fonts/univga/index.html

When I got a retina macbook the resolution meant each pixel of the font was 4 on the display instead of 1 so I tried and failed to find a substitute again. I ended up using fontforge to double the resolution of the font and smoothed it out by hand with some extra pixels. I like it even more now.

[+] nnq|13 years ago|reply
...would love to see a comparison like this http://1overn.com/2011/01/31/iterating-on-font-pair-comparis... Consolasa vs Adobe Source Code Pro and also with Inconsolata (though for now I'm using Adobe's font simply for the fact that in sublime text 2 on xubuntu lts both Consolas and Inconsolata render as white squares instead of letters - couldn't figure out it's some weird encoding issue or dog knows what, as in other apps it works great)
[+] vladev|13 years ago|reply
I installed the ttf version in Arch Linux and it looks awful. I guess it's freetype2's fault.

Update: I bit the bullet and installed the Infinality patchset. The result is astonishing...