I’m a programmer and I’m really used to the Courier New font. I am quite picky about it – I find other fonts (including other monospace fonts) ugly in comparison.
However, now I have to work on some code that includes Unicode strings, and Courier New does not have full support for Unicode.
Could someone recommend a (monospace) font that is very similar to Courier New, but has Unicode support?
Few if any fonts have “full support for Unicode”. Unicode 6.0 has 109,449 code points. It’s quite expensive from a design perspective to manually create each one of those glyphs when most people will only be using a small fraction of them, not to mention from a file size perspective.
Courier New is actually among the fonts with relatively good Unicode support at 3248 glyphs (in comparison Lucida Sans Unicode only has 1776).
The MingLiU/PMingLiU fonts also support a very wide range of code points, but that’s because these are CKJ (Chinese, Korean, Japanese) fonts, and most of the supported code points are from the CKJ blocks. So unless you need a CKJ font, they’re not much use. And even then, they’re broken down into ~6 different fonts covering different code blocks with 30~40k code points each.
For general-purpose language support, Arial Unicode MS is the best that I know of. It has near complete support across 64 different code blocks, which covers 50,377 code points.
Beyond that, there’s just the Unicode BMP Fallback SIL font, which is a debugging font. It covers all Unicode 5.1 code points, but each glyph is just a rectangular box containing the hex code for that code point. And most OSes come with this font and will display it when a Unicode font lacks a glyph for a particular character.
I mean, it’s possible there might be a crazy typographer or foundry out there who’s created a font with glyphs for all Unicode 5.1 or 6.0 code points, but it would probably be really, really expensive.
Most people would rather just have fonts that cover specific language blocks and use multiple fonts to provide full multilingual support. Especially as different families of languages have intrinsically different typographic styles, so the glyphs would end up looking very different anyway.
Edit: As Mr Lister pointed out, no font at present can support the full Unicode character set since each font can only contain 65536 glyphs max. You might be able to exceed this limit with TruTypeCollections but they would still be separate fonts, just in a single file.