Where are the IE plain text fonts?
by Michael S. Kaplan, published on 2006/02/19 10:01 -05:00, original URI: http://blogs.msdn.com/b/michkap/archive/2006/02/19/535046.aspx
Santhosh Pillai has a special status in the hearts and minds of some people in our group.
Maybe it was just really good timing, but he was the first really knowledgable language contact that our (at the time) new locale data owner was able to work with to produce collation results for an Indic language (in this case Malayalam).
Believe me, when you are finding your way in a new role, such a contact can be worth their weight in gold!
Anyway, the other day he asked Peter Constable a question:
Peter, I have a question on the list of Plain Text fonts that IE shows for Malayalam. I have 3 web page fonts available for Webpage font in IE (Tools->Internet Options->Fonts dialog). However, the plain text font list is empty. Why is this so?
The reason why I ask this is, when I specify a font other than Kartika as my web page font, the pages get displayed in the font I specify, but the input areas still use Kartika.
Peter accepted the handoff and did a lateral pass to Paul Nelson and me:
My guess is that this is controlled either in MLang or in some other part of IE; I don’t know much about what goes on inside either of these. Paul or Michael can probably tell you more.
Now I had some thoughts on this but to I was not 100% sure and probably would have forwarded it onto Paul anyway. So I figured it would be best to wait for his response since I figured it might be better.
Paul did not let anyone down on that score, responding:
"Plain Text Font" means a fixed pitch or monospace font. Unless your font is a monospace font it will not show up in that area.
This means that text areas where the default font is a monospace font will always fall back to the default Malayalam font...Kartika. To change this behavior, you need to create a monospace Malayalam font.
Perhaps we need to change the label in the UI to be more explicit about the plain text font being a monospaced font.
Let's look at that UI for a second. Here it is for Tamil:
Now the actual population of the two lists is happening via MLang, and as Paul points out you could think of the list on the left as being for proportional fonts and the list on the right as being for fixed pitch (monowidth) fonts.
MLang goes through a two step process that I will get into in another post, coming soon. :-)
It is relatively easy to see how some complex script languages could have hundreds of fonts on a machine yet no monowidth fonts -- for some scripts creating a monowidth font could be a destructive operation!
Though I agree with Paul's assessment that the actual UI text could probably be upgraded a bit to take this into account, perhaps even including some text that could explain the lack of fonts in the list for such cases....
This post brought to you by "ബ" (U+0d2c, a.k.a. MALAYALAM LETTER BA)
# Dean Harding on 19 Feb 2006 5:17 PM:
I don't know why it filters them out like that though. Personally, I much prefer how (for example) Visual Studio does it - monospace fonts are displayed in bold, and variable-width fonts in regular.
That way, I can still choose a variable width font if I like (which I do! :p)
I guess though, that C# code is a little different to "normal" plain text, since in code the tabs/spaces are usually all right at the start of the line, so it doesn't actually matter if you use a variable-width font (as long as tabs are the same as four spaces, it still looks "right"). Whereas in arbitrary plain text tabs/spaces could be anywhere, and people generally expect it all to line up.
# Michael S. Kaplan on 19 Feb 2006 5:43 PM:
Ah, but these dialogs do two different things.
The VS dialog is to pick one font, and they highlight the choices that are fixed width.
The IE dialog is having you pick a font when text in a specific language is not given a font, for both the regular case and the <pre> case.
Neither dialog would really meet the needs of the other situation....
# Dean Harding on 19 Feb 2006 5:49 PM:
Oh right, I see. I guess I've never had to use that IE dialog so I didn't really know what it did :)
OK, so you're right then, it really should be "Proportional font" and "Monospace font" rather than "web page font" and "plain text font" since they both could be used in a "web page". I was thinking it was for when IE displayed .txt files or something like that...
# Michael S. Kaplan on 19 Feb 2006 5:57 PM:
Ah, IE displaying text files is probably the same situation (and those always come out fixed width for me, I think).
The big problem is that I doubt most people will understand what it means....
# Nick Lamb on 19 Feb 2006 7:33 PM:
If someone doesn't understand about Proportional vs Monospace typefaces then that's a totally difference problem. Excel's interface doesn't try to explain what it means for something to be a "negative integer" either.
Right now, IE doesn't use the correct terminology, as demonstrated by the fact that not one but three technical people had to pass it up the line to get a good answer on what it meant.
# Michael S. Kaplan on 19 Feb 2006 7:40 PM:
Well, kind of. But if current terminology is in there then there was an intent, and someone thought it would be understandable. Three people or even 3000 people would not make a convincing sample that NO ONE understands it.
Now that doesn't mean it is not confusing. I think it is.
But trading them for two other terms that will confuse an unknown number of people claiming that people OUGHT to understand the other term is not really defensible either, if you ask me.....
# Raj Nair on 20 Feb 2006 12:33 AM:
Firefox and Opera manage this problem in a smart way. For microsoft we are planning to bring out a Monospace font which is not really monospaced ;)
thanks for addressing ML language issues and sharing it with techies there in MS.
# Michael S. Kaplan on 20 Feb 2006 12:37 AM:
Hi Raj --
Ok, but for every single code point in Unicode? Hmmm.....
# Ben Cooke on 20 Feb 2006 3:34 AM:
Perhaps it's time for "Arial Unicode MS" to be accompanied by "Lucida Console Unicode MS", and both to be distributed with Windows by default! :)
# Michael S. Kaplan on 20 Feb 2006 10:06 AM:
Yikes, Ben. I hope not! Too many problems in Arial Unicode MS in relation to Han; people using it instead of letting font linking pick glyphs are asking for trouble. :-(
# Ben Cooke on 20 Feb 2006 1:47 PM:
How does font linking work when you have no appropriate fonts installed?
I just want a monospaced Unicode font so that I have *somewhere* for those glyphs to come from in Monospace. While I'm sure it's true that not all scripts work that well in monospace (hell, even simple punctuation characters like the ellipsis don't work that well in monospace!) I'd rather have some distorted glyphs than the default glyph or a glyph that's a different shape to all of the surrounding monospaced characters.
I can't read Malayalam anyway, but having these glyphs around does come in useful for reading things like this blog! I notice that your textarea actually specifies a variable-pitch font though, which I guess means it's not so much of an issue here.
(Side note: do people who write in non-monospace-friendly scripts write source code in proportional fonts? I really hate writing code in a proportional font because you can't make everything line up nicely, but if you've got comments/identifiers in a language that isn't monospace-friendly what can you do?)
# josh on 20 Feb 2006 2:14 PM:
Actually, the current terminology seemed relatively obvious to me, if not entirely accurate. Open a random web page and most of the text will probably use proportional spacing. Open a plain text file and it will be rendered in monospace.
Of course to see this you need to be aware of both the difference between rendering of text and html documents (and possibly mime types) and the difference between proportional and monospace fonts.
Perhaps "Preformatted Text" would be better than "Plain Text"? I don't know if that's any easier to understand than monospace.
# Cibu C J on 21 Feb 2006 7:05 PM:
I would elaborate on what Raj has mentioned.. It is very difficult to come up with a monospace font in languages like Malalayam. The real issue is about the stacked conjuncts. For example, consider 'സ്ന’ (/sna/). One cannot assume that this conjuct should be present in every Malayalam monospace font or not. That means, both stacked conjuct 'sna' and virama seperated 'sna' should occupy same pitch. I don't think that is possible. A Malayalam monospace font will require an widely agreed list of conjuncts those should be there in a monospace font and other conjuncts should not be there in the font.
As of today no two from Malayalam community will agree on a set of conjucts for Monospace font. Thus we will endup with 'font dependant monospace' which is useless.
Just by changing the UI text a user is not achieving much. Instead, if the user could change the fall back font from Kartika to something of his choice in Regional & Language options or elsewhere, that will be great... :p
Thanks for all the discussions on this topic.
Innovate on 18 Oct 2009 3:33 PM:
my god this seems really technical, i am having the problem that im my plain text font dropdown for currier new is not showing but the same settings are visible on a new install.
go to newer or older post, or back to index or month or day