Closed Bug 159809 Opened 23 years ago Closed 20 years ago

Camino defaults to old Mac OS 9 fonts for most non-Western European languages

Categories

(Camino Graveyard :: Preferences, defect)

PowerPC
macOS
defect
Not set
normal

Tracking

(Not tracked)

RESOLVED FIXED

People

(Reporter: hsivonen, Assigned: sfraser_bugs)

References

Details

(Keywords: intl)

Attachments

(3 files, 15 obsolete files)

3.88 KB, patch
jshin1987
: review+
sfraser_bugs
: superreview+
Details | Diff | Splinter Review
6.90 KB, text/plain; charset=UTF-8
Details
8.51 KB, text/html
Details
Build: Chimera 0.4 Steps to reproduce: 1) Take a look at the Central European, Baltic and Turkish font prefs. Actual results: Chimera defaults to various legacy variants of the Apple core fonts (the Foo CE fonts in particular). These fonts aren't installed with OS X and are only available if they have been installed as a part of a language kit for Classic. Expected results: Since the glyphs from the legacy fonts have been migrated to the main versions of Times, Helvetica etc. and are available via ATSUI, Chimera should use the same defaults for Central European, Baltic and Turkish as it does for Western. Additional info: The patch from bug 111728 is needed, though.
Depends on: tec-osx
This is because no-one has bothered to go through the prefs file for Mac OS X, and figure out which fonts to use. We'd also need a new default prefs file for OS X.
QA Contact: winnie → sairuh
over to simon (with his permission).
Assignee: saari → sfraser
ftang: do we have a list of the Mac OS X preferred fonts for non-Western languages?
Status: NEW → ASSIGNED
For Hebrew, see bug 149796
This problem (non-optimal default fonts for non-Roman scripts) applies across the board (Greek, Japanese, Chinese ...) -- ideally, copy the defaults from Safari, which has this one nailed.
Why not just fix this simple bug? Henri, can you give us the list of Mac OS X fonts for CE, Baltic, and Greek? It looks like just removing 'CE' and 'GR' would do assuming 'Times', 'Helvetica' and 'Courier' have glyphs for CE and Greek.
Keywords: intl
I wrote to Debora Goldsmith at Apple to ask for the list of the default fonts (for all scripts supported by Mac OS X) and she replied that she'd help after the holiday season (early next year).
*** Bug 273035 has been marked as a duplicate of this bug. ***
Between this bug and the comments about non-Western Euro langs in the (resolved) bug 183932, it looks like we have info for a fair amount of languages whose font defaults are wrong, as well as a list of fonts in a default install of 10.2; did Apple ever reply with its list (comment 7)? Any chance of one/a few of us putting together a comprehensive list of new defaults based on the comments and someone whipping up a patch for this? I think this should be targeted for at least 1.0, but it's probably simple enough to make 0.9?
Updating the summary to reflect that it's more than just CE, Baltic, and Turkish that have bad default fonts (fonts that no longer exist on Mac OS X).
Summary: Chimera defaults to old Central European, Baltic & Turkish fonts → Camino defaults to old Mac OS 9 fonts for most non-Western European languages
smfr: is it really Camino specific?
see also bug84271 - it looks as i'm talking with myself there ;)
(In reply to comment #11) > smfr: is it really Camino specific? You bring up an interesting point. I looked into Camino.app/Contents/MacOS/defaults/pref/all-camino.js and right at the top there it says: /* // Pick some reasonable OS X default fonts // Note: these have lived here forever, but were never actually used (they // were overridden by all.js after being set here). Keeping them just for // posterity, but they're unused. pref("font.name.serif.x-western", "Times"); pref("font.name.sans-serif.x-western", "Lucida Grande"); pref("font.size.variable.x-western", 15); pref("font.size.fixed.x-western", 12); pref("font.size.minimum-size.x-western", 10); */ notice how a) it's commented out and b) only western fonts are mentioned. the file all.js ic contained inside the package as well: Camino.app/Contents/MacOS/greprefs/all.js - is this a Mozilla file that just gets pulled during the build process? If so, we still need to change it soon. If we go to the bottom of the file, we find everything that we need! // default font name (in UTF8) pref("font.name.serif.ar", "Lucida Grande"); pref("font.name.sans-serif.ar", "Lucida Grande"); pref("font.name.monospace.ar", "Monaco"); pref("font.name.cursive.ar", "XXX.cursive"); pref("font.name.fantasy.ar", "XXX.fantasy"); pref("font.name.serif.el", "Times GR"); pref("font.name.sans-serif.el", "Helvetica GR"); pref("font.name.monospace.el", "Courier GR"); pref("font.name.cursive.el", "XXX.cursive"); pref("font.name.fantasy.el", "XXX.fantasy"); pref("font.name.serif.he", "Lucida Grande"); pref("font.name.sans-serif.he", "Lucida Grande"); pref("font.name.monospace.he", "Monaco"); pref("font.name.cursive.he", "XXX.cursive"); pref("font.name.fantasy.he", "XXX.fantasy"); pref("font.name.serif.ja", "ヒラギノ明朝 Pro W3"); pref("font.name.sans-serif.ja", "ヒラギノ角ゴ Pro W3"); pref("font.name.monospace.ja", "Osaka−等幅"); pref("font.name.cursive.ja", "XXX.cursive"); pref("font.name.fantasy.ja", "XXX.fantasy"); pref("font.name.serif.ko", "AppleMyungjo"); pref("font.name.sans-serif.ko", "AppleGothic"); pref("font.name.monospace.ko", "AppleGothic"); pref("font.name.cursive.ko", "XXX.cursive"); pref("font.name.fantasy.ko", "XXX.fantasy"); pref("font.name.serif.th", "Thonburi"); pref("font.name.sans-serif.th", "Krungthep"); pref("font.name.monospace.th", "Ayuthaya"); pref("font.name.cursive.th", "XXX.cursive"); pref("font.name.fantasy.th", "XXX.fantasy"); pref("font.name.serif.tr", "Times"); pref("font.name.sans-serif.tr", "Arial"); pref("font.name.monospace.tr", "CourierR"); pref("font.name.cursive.tr", "XXX.cursive"); pref("font.name.fantasy.tr", "XXX.fantasy"); pref("font.name.serif.x-baltic", "Times CE"); pref("font.name.sans-serif.x-baltic", "Helvetica CE"); pref("font.name.monospace.x-baltic", "Courier CE"); pref("font.name.cursive.x-baltic", "XXX.cursive"); pref("font.name.fantasy.x-baltic", "XXX.fantasy"); pref("font.name.serif.x-central-euro", "Times CE"); pref("font.name.sans-serif.x-central-euro", "Helvetica CE"); pref("font.name.monospace.x-central-euro", "Courier CE"); pref("font.name.cursive.x-central-euro", "XXX.cursive"); pref("font.name.fantasy.x-central-euro", "XXX.fantasy"); pref("font.name.serif.x-cyrillic", "Latinski"); pref("font.name.sans-serif.x-cyrillic", "Pryamoy Prop"); pref("font.name.monospace.x-cyrillic", "APC Courier"); pref("font.name.cursive.x-cyrillic", "XXX.cursive"); pref("font.name.fantasy.x-cyrillic", "XXX.fantasy"); pref("font.name.serif.x-unicode", "Times"); pref("font.name.sans-serif.x-unicode", "Helvetica"); pref("font.name.monospace.x-unicode", "Courier"); pref("font.name.cursive.x-unicode", "Zapfino"); pref("font.name.fantasy.x-unicode", "Lucida Grande"); pref("font.name.serif.x-western", "Times"); pref("font.name.sans-serif.x-western", "Helvetica"); pref("font.name.monospace.x-western", "Courier"); pref("font.name.cursive.x-western", "Zapfino"); pref("font.name.fantasy.x-western", "Lucida Grande"); pref("font.name.serif.zh-CN", "Song"); pref("font.name.sans-serif.zh-CN", "Hei"); pref("font.name.monospace.zh-CN", "Hei"); pref("font.name.cursive.zh-CN", "XXX.cursive"); pref("font.name.fantasy.zh-CN", "XXX.fantasy"); pref("font.name.serif.zh-TW", "Apple LiSung Light"); pref("font.name.sans-serif.zh-TW", "Apple LiGothic Medium"); pref("font.name.monospace.zh-TW", "Apple LiGothic Medium"); pref("font.name.cursive.zh-TW", "XXX.cursive"); pref("font.name.fantasy.zh-TW", "XXX.fantasy"); // ming_uni.ttf (HKSCS-2001) // http://www.info.gov.hk/digital21/eng/hkscs/download/uime.exe // use Stuffit Expander to unzip it and install ming_uni.ttf pref("font.name.serif.zh-HK", "Ming(for ISO10646)"); pref("font.name.sans-serif.zh-HK", "Apple LiGothic Medium"); pref("font.name.monospace.zh-HK", "Apple LiGothic Medium"); pref("font.name.cursive.zh-HK", "XXX.cursive"); pref("font.name.fantasy.zh-HK", "XXX.fantasy"); the lines after that define sizes, but those don't matter. All that needs to happen is someone needs to go in and change this file, and commit the changes. Apart from my comments on Cyrillic fonts in bug273035, we can take the rest of the fonts from (comment 9) on bug84271 (note: my Cyrillic list supercedes the one on there because it's more recent and complete). Perhaps ftang can get in contact with xavier @ apple again to receive a more complete/comprehensive list. This requires almost no work! Can we put this into Camino 0.8.2 even? Thanks!
It's not Camino-specific, no (though I'm not smfr), but I think Mike or Simon made a comment in a similar bug about leaving it assigned to Camino because Camino was more likely to do something about fixing it. That said, I grabbed a bunch of info last night from this bug and bug 183932, bugs mentioned in this bug and bug 183932, and Paul's list of CY fonts and am working on comiling a current list of suggested defaults. I'll cross-check with bug 84271, too.
(In reply to comment #14) > It's not Camino-specific, no (though I'm not smfr), but I think Mike or Simon > made a comment in a similar bug about leaving it assigned to Camino because > Camino was more likely to do something about fixing it. > > That said, I grabbed a bunch of info last night from this bug and bug 183932, > bugs mentioned in this bug and bug 183932, and Paul's list of CY fonts and am > working on comiling a current list of suggested defaults. I'll cross-check with > bug 84271, too. You're right, in bug183932 comment 11, Josh says it's not Camino-only. otoh, that's good, because it affects all mac products (presumably including Firefox and Mozilla). Taking all the current info we have ... can Smokey land a path before 0.8.2 ships and have Mike include it in the shipping version? That'd be awesome! Thanks again for taking note and working quickly to solve this.
Attached file Fixed list of Mac fonts in all.js (obsolete) —
OK, so here's the fixed list. Several comments: 1) I've fixed Arabic, Hebrew, Greek (only Lucida Grande in default install), Turkish, Baltic, CE and CY. 2) Since bug 84271 comment 9, the Japanese font "display" names have been Romanized. (Luckily the *font file* names are still Japanese so I could match things up!) 3) The Trad. Chinese and Japanese fonts had "style" info in their names in all.js and this caused them to be reported by Camino as "missing," so I removed the style info and all is well. 4) I followed the established pattern of "if we can't find an applicable font for cursive or fantasy, leave it xxx.style", so there are a couple of these still, but serif, sans-serif, and monospace are defined for all charsets/locales. 5) Safari uses Papyrus for its Western/CE/Baltic/Turkish/Unicode fantasy font, which looks a lot more fantastic/interesting than Lucida Grande, so I've changed those mappings there. 6) Otherwise, unless I knew the pref was wrong/missing or found a specific suggestion in the other bugs I looked at, I left the fonts alone. 7) I have no idea why Arabic, which fonts are often smaller at the same point sizes than Roman fonts, was set to smaller sizes than Roman fonts, so I've set Arabic sizes to match those of the Roman fonts. I assume to create an actual patch one has to check everything out and run some magic Unix commands with which I'm unfamiliar, so this attachment is the entire #ifdef XP_MACOSX section of all.js edited as to reflect the changes. I assume that can be pasted into a complete all.js and then the patch can be generated. Will someone please make the patch? Finally, once the patch gets checked in, I believe it resolves bug 84271, bug 153296, and perhaps bug 175651 (at least in terms of the fonts set as default in all.js). (Camino-specific question: is this something that can go on the branch and be rolled out in 0.8.2? It seems simple enough to me, but I don't have experience to judge.) Cheers!
Please do NOT change the default fonts for Hebrew and Arabic (and maybe other languages), because of bug 246527, you should verify the fonts against each language, there are some OS bugs here.
(In reply to comment #16) > Created an attachment (id=167997) > Fixed list of Mac fonts in all.js ... > Finally, once the patch gets checked in, I believe it resolves bug 84271, bug > 153296, and perhaps bug 175651 (at least in terms of the fonts set as default > in all.js). > > (Camino-specific question: is this something that can go on the branch and be > rolled out in 0.8.2? It seems simple enough to me, but I don't have experience > to judge.) > > Cheers! Great! Now someone needs to go through all these bugs and also look at the related bugs mentioned inside the comments for those bugs. And close many of them, probably. We also need to see what will happen in other Mozilla products. Can we get a definitive answer about (comment 17) as well?
(In reply to comment #17) > Please do NOT change the default fonts for Hebrew and Arabic (and maybe other > languages), because of bug 246527, you should verify the fonts against each > language, there are some OS bugs here. They all show up in Camino's font-selection menus, so Camino does not appear to suffer from that bug. (Moreover, for Arabic the serif/etc. font should be changed from Lucida Grande because Lucida Grande is not an Arabic font; Geeza Pro is and shows up in Firefox, too). Oy, this is a big mess...Firefox sees the Japanese fonts by their Japanese names, and the Japanese and Chinese fonts *with* the style info. So if we change things to fix Camino, we break Firefox and Seamokey and whatnot.... And now Greek doesn't display properly when *set* to Lucida Grande, even if it uses that when set to something else. And Thai, which I didn't touch, also appears to no longer display correctly. What a mess!
(In reply to comment #20) > (In reply to comment #17) > > Please do NOT change the default fonts for Hebrew and Arabic (and maybe other > > languages), because of bug 246527, you should verify the fonts against each > > language, there are some OS bugs here. > > They all show up in Camino's font-selection menus, so Camino does not appear to > suffer from that bug. (Moreover, for Arabic the serif/etc. font should be > changed from Lucida Grande because Lucida Grande is not an Arabic font; Geeza > Pro is and shows up in Firefox, too). They are shown because we camino uses the native font-dialog, but they just do not work (because the gfx core doesn't know to handle them). I was messing with the obselte gfx code in bug 120401, not fun.
OK, this listing reverts Chinese, Japanese, Arabic and Hebrew to the existing settings to make Carbon apps happy (but leaves the font settings invalid for Camino). Also reverts Greek because the new setting failed to work in Camino. However, this still fixes CE, CY, Baltic, Turkish and the fantasy font for Roman languages for both sets of apps. Nothing new should be broken, but not everything will be fixed for Camino. Should now be a safe source for a patch.
If you want, i can produce a patch from your last font list.
(In reply to comment #23) > If you want, i can produce a patch from your last font list. No one else seems to be jumping on it, so that would be much appreciated. Thanks for the layman's explanation in Comment 21, too...I now "understand" what's going on and will stop saying mean things about the Carbon apps :-)
See Attachment 168059 [details] to Bug 84271 for a test webpage. I'm starting to think that Thai suffers from bug 246527, too (since I didn't touch it and it still seems messed up in the three styles where it has an explicit definition) and perhaps its core serif/sans/mono should be reassigned to xxx.serif, xxx.sans-serif and xxx.courier (assinging to Lucida Grande will work in Firefox but still leaves gibberish in Camino).
(In reply to comment #25) > I'm starting to think that Thai suffers from bug 246527, too [...] > (assinging to Lucida Grande will > work in Firefox but still leaves gibberish in Camino). Assigning the Thai fonts to Lucida Grande is working now in Camino; I don't know what was going on before. Leaving them the assigned (Thai) fonts does produce gibberish instead of Thai in both Fx and Cm (aka, I think, bug 246527). I'll attach a new "pseudo" all.js with the three Thai fonts changed out for Lucida Grande so that if someone wants to make a patch. It will completely fix CE, CY, Baltic, Turkish and the fantasy font for Roman languages for both sets of apps (as before) and now partially-fix Thai (at least make it display characters rather than gibberish, just as we're doing now with Arabic, Hebrew, and Greek).
As noted above, this fixes CE, CY, Baltic, Turkish default fonts and the fantasy font for Roman languages as well as makes sure that Thai is legible by backing out the existing Thai fonts and replacing them with Lucida Grande.
Attachment #168007 - Attachment is obsolete: true
"Times GR" "Helvetica GR" "Courier GR" do'nt exist in MacOS X. CJK fonts and "Lucida Grande" only have Greek Alphabet fully.
(In reply to comment #28) > "Times GR" "Helvetica GR" "Courier GR" do'nt exist in MacOS X. > CJK fonts and "Lucida Grande" only have Greek Alphabet fully. The problem with explicitly setting Greek to Lucida Grande is that Greek displays as gibberish in that case (at least in Camino, see comments 20 and 22). I didn't try the CJK fonts; it would be quite an odd solution. What happens when these are left set to fonts thad don't exist is that either Gecko or the OS "falls back" to a font that will display the language/characters. For Greek that's Lucida Grande and it actually displays properly as a fallback font; I'm not sure why it doesn't when explicitly set as the Greek font. The other argument for leaving the existing font names there is that for people who have upgraded their Macs and have those fonts, they'll be used (and thus reflect the serif/sans/mono differences. For everyone else, Lucida Grande will be used as a fallback font and will display properly.
Some (all?) of the CJK fonts have full-width glyphs for Greek chars. Those are truly ugly for displaying Greek text.
Hmmm... How soon will this be integrated into a nightly or release version? The changes have been made by Smokey...what's next?
Comment on attachment 172542 [details] Revised version of Mac fonts list in all.js >pref("font.name.serif.el", "Times GR"); >pref("font.name.sans-serif.el", "Helvetica GR"); >pref("font.name.monospace.el", "Courier GR"); >pref("font.name.cursive.el", "XXX.cursive"); >pref("font.name.fantasy.el", "XXX.fantasy"); Greek: Why the missing "GR" fonts and not Lucida Grande? >pref("font.name.serif.he", "Lucida Grande"); >pref("font.name.sans-serif.he", "Lucida Grande"); >pref("font.name.monospace.he", "Monaco"); >pref("font.name.cursive.he", "XXX.cursive"); >pref("font.name.fantasy.he", "XXX.fantasy"); Hebrew: is there a better monospace choice than Monaco? >pref("font.name.serif.ja", "ヒラギノ明朝 Pro W3"); >pref("font.name.sans-serif.ja", "ヒラギノ角ゴ Pro W3"); >pref("font.name.monospace.ja", "Osaka−等幅"); >pref("font.name.cursive.ja", "XXX.cursive"); >pref("font.name.fantasy.ja", "XXX.fantasy"); Japanese: I guess Camino needs "Hiragino Mincho Pro" here currently. >pref("font.name.serif.ko", "AppleMyungjo"); >pref("font.name.sans-serif.ko", "AppleGothic"); >pref("font.name.monospace.ko", "AppleGothic"); >pref("font.name.cursive.ko", "XXX.cursive"); >pref("font.name.fantasy.ko", "XXX.fantasy"); Korean: looks ok. >pref("font.name.serif.th", "Lucida Grande"); >pref("font.name.sans-serif.th", "Lucida Grande"); >pref("font.name.monospace.th", "Lucida Grande"); >pref("font.name.cursive.th", "XXX.cursive"); >pref("font.name.fantasy.th", "XXX.fantasy"); Thai: looks OK >pref("font.name.serif.tr", "Times"); >pref("font.name.sans-serif.tr", "Helvetica"); >pref("font.name.monospace.tr", "Courier"); >pref("font.name.cursive.tr", "Zapfino"); >pref("font.name.fantasy.tr", "Papyrus"); Turkish: any point in defaulting to Lucida Grande here? >pref("font.name.serif.x-baltic", "Times"); >pref("font.name.sans-serif.x-baltic", "Helvetica"); >pref("font.name.monospace.x-baltic", "Courier"); >pref("font.name.cursive.x-baltic", "Zapfino"); >pref("font.name.fantasy.x-baltic", "Papyrus"); Baltic: ditto. >pref("font.name.serif.x-central-euro", "Times"); >pref("font.name.sans-serif.x-central-euro", "Helvetica"); >pref("font.name.monospace.x-central-euro", "Courier"); >pref("font.name.cursive.x-central-euro", "Zapfino"); >pref("font.name.fantasy.x-central-euro", "Papyrus"); CE: ditto. >pref("font.name.serif.x-cyrillic", "Times CY"); >pref("font.name.sans-serif.x-cyrillic", "Helvetica CY"); >pref("font.name.monospace.x-cyrillic", "Monaco CY"); >pref("font.name.cursive.x-cyrillic", "XXX.cursive"); >pref("font.name.fantasy.x-cyrillic", "Charcoal CY"); Cyrillic: looks OK >pref("font.name.serif.x-unicode", "Times"); >pref("font.name.sans-serif.x-unicode", "Helvetica"); >pref("font.name.monospace.x-unicode", "Courier"); >pref("font.name.cursive.x-unicode", "Zapfino"); >pref("font.name.fantasy.x-unicode", "Papyrus"); Unicode: ok >pref("font.name.serif.x-western", "Times"); >pref("font.name.sans-serif.x-western", "Helvetica"); >pref("font.name.monospace.x-western", "Courier"); >pref("font.name.cursive.x-western", "Zapfino"); >pref("font.name.fantasy.x-unicode", "Papyrus"); Western: OK >pref("font.name.serif.zh-CN", "Song"); >pref("font.name.sans-serif.zh-CN", "Hei"); >pref("font.name.monospace.zh-CN", "Hei"); >pref("font.name.cursive.zh-CN", "XXX.cursive"); >pref("font.name.fantasy.zh-CN", "XXX.fantasy"); Simp. chinese (Mandarin): OK >pref("font.name.serif.zh-TW", "Apple LiSung Light"); >pref("font.name.sans-serif.zh-TW", "Apple LiGothic Medium"); >pref("font.name.monospace.zh-TW", "Apple LiGothic Medium"); >pref("font.name.cursive.zh-TW", "XXX.cursive"); >pref("font.name.fantasy.zh-TW", "XXX.fantasy"); Trad. chinese: OK >// ming_uni.ttf (HKSCS-2001) >// http://www.info.gov.hk/digital21/eng/hkscs/download/uime.exe >// use Stuffit Expander to unzip it and install ming_uni.ttf >pref("font.name.serif.zh-HK", "Ming(for ISO10646)"); >pref("font.name.sans-serif.zh-HK", "Apple LiGothic Medium"); >pref("font.name.monospace.zh-HK", "Apple LiGothic Medium"); >pref("font.name.cursive.zh-HK", "XXX.cursive"); >pref("font.name.fantasy.zh-HK", "XXX.fantasy"); Cantonese: Is there an installed font that will work?
> Cantonese: Is there an installed font that will work? Not that I know of. My query to Apple hasn't been answered for over a year. Anyway, can you help me with bug 221919? There are a few langGroups (and more are coming. see bug 237434 and bug 248690) that need to be added to Camino font pref. UI
sorry for bug spam. it's bug 222919 (adding zh-HK to the font pref. UI of Camino)
First, note that this is technically a core bug (all.js) but Mike/Josh earlier said to keep it assigned to Camino because we were more likely to do something to fix it. Unfortunately, there are bugs blocking "complete and proper" fixes of font prefs for Arabic, Hebrew, and apparently Greek and Thai, too--at least for fixes that keep both Camino and Firefox happy; some of these choices make the prefs "less broken" or enable the fallback mechanism to work properly. (Bug 246527 needs some serious love!) This will, however, completely fix CE, Baltic, Turkish, and Cyrillic. At least as I understand things from empirical observation and Asaf Romano's explanations. Attachment 168059 [details] in bug 84271 is what I constructed for empirical observations/testing. (In reply to comment #32) > (From update of attachment 172542 [details] [edit]) > > Greek: Why the missing "GR" fonts and not Lucida Grande? Because explicitly setting it to Lucida Grande causes Camino to display gibberish rather than Greek. See comment 29 for my full logic. Is there a better option? > Hebrew: is there a better monospace choice than Monaco? Hebrew suffers from bug 246527, so Asaf Romano wants us to leave it alone. There's a bug (two of them for Hebrew and one for Arabic, actually) for getting better Hebrew defaults once bug 246527 is fixed/worked-around and Gfx:Mac can interpret Mac Hebrew (and Arabic and other) fonts. > Japanese: I guess Camino needs "Hiragino Mincho Pro" here currently. According to bug 175651 comment 14, Gecko needs the Carbon font name (not the file name), and supposedly Carbon returns the Japanese name, not the English. I haven't tested this theory since your last fix in bug 175651, etc., though--and I'd really like to hear from a (native) speaker who can recognize the difference than simply trusting my eye. :-) > Thai: looks OK Note that once bugs are fixed, there are actual OS X Thai fonts that need to be replaced here. See comment 26 and bug 225217. > Turkish/Baltic/CE: any point in defaulting to Lucida Grande here? Nope; Apple merged the CE/Turkish/Baltic variants into the "standard" Roman fonts in Mac OS X. > Cantonese: Is there an installed font that will work? I defer to our zh-HK readers, but this is what's in the existing all.js. I just included the whole Mac OS X section of the file because I have no idea how to make a patch. :-)
*** Bug 166971 has been marked as a duplicate of this bug. ***
Zapfino has wildly unconventional metrics, which makes it a bad choice for a generic family. I suggest using Apple Chancery as the cursive font instead.
re comment #35: > According to bug 175651 comment 14, Gecko needs the Carbon font name (not the > file name), and supposedly Carbon returns the Japanese name, not the English. That's the case not only of Japanese but also TC, SC and Korean. I just confirmed it. Currently, Camino and Firefox/Suite use two different font enumeration APIs so that they cannot share font preference. What is good for Camino doesn't work for firefox/Suite and vice versa. Mac:Gfx code needs a lot of love....
(In reply to comment #37) > Zapfino has wildly unconventional metrics, which makes it a bad choice for a > generic family. I suggest using Apple Chancery as the cursive font instead. See bug 183932 for an explanation. Interestingly, that's the font Apple seems to use for Safari, though I don't know what happens when one doesn't have Classic installed.
I put in some more time on the remaining non-CJK problems this afternoon, and I think I have a better solution for Greek (that at least in my case works in Cm 0.8.2 and 20050305 0.8+ and Fx 1.0.1 and 20050306-trunk 1.0+ with fresh profiles). This is my testing methodology: 1) take the #ifdef XP_MACOSX section from my attachment (revised version to follow), paste it over the #ifdef XP_MACOSX section in <appname>/Contents/MacOS/greprefs/all.js (this is where all.js is delivered in the final Mac builds) 2) delete existing ~/Library/Application Support/<appname> folder to ensure a fresh profile 3) launch <appname> and view CSS testcase (Attachment 168059 [details] in bug 84271; revised version to follow) As I noted, for me this fixes Greek and Thai (it's now a complete duplicate of the "work-around" fix Asaf Romano applied for Hebrew and Arabic; since Greek and Thai fonts seem to suffer from bug 246527 also, that makes sense). However, I noticed that the fantasy font for Roman script languages, Papyrus (Apple's choice in Safari) does not "show up" when delivered via all.js. Camino claims the font is "Geneva" and visually it is some odd serif--Times New Roman, maybe?; Fx doesn't have a UI for fantasy but also displays the same odd serif. If I change the font manually to Papyrus (either via the UI in Cm or via user_pref("font.name.fantasy.x-western", "Papyrus"); in prefs.js in Fx, Papyrus displays as expected. A) Can some Gecko guru explain to me why a font that works properly otherwise is replaced by "Geneva" displaying as Times NR when assigned via all.js? LXR returns three gfx/mac hits for Geneva, so I'm guessing one of those is wonky? <http://lxr.mozilla.org/mozilla/search?string=Geneva> B) Can others follow my testing methodology and confirm that Greek and Thai display as Greek and Thai in all five categories now (and that everything else, non-CJK, seems OK)? (And correct my methodology if it's wrong?) If A and B are resolved/confirmed OK, then I think we have a list that fixes, within the bounds of open bugs like bug 246527, all the non-CJK font defaults (CJK are fine in Fx but not in Cm yet). Hopefully we could get a patch ready and landed before Cm 0.8.3/0.9 and Fx 1.1.... Revised Mac OS X section of all.js and testcase forthcoming.
Er, viewing the attachment in bugzilla shows some spurious blank lines. This v2.1 removes them. Sorry for the extra noise.
Attachment #176517 - Attachment is obsolete: true
*** Bug 175626 has been marked as a duplicate of this bug. ***
As per the discussion on bug 166971 and my personal testing, I think it's safe to change the "Times CY" for Cyrillic to regular "Times New Roman". However, the other fonts should be left alone for now...I don't think anything else works (I'm assuming we're dropping 10.1 support? if not let's have three versions, one each for 10.1, 10.2, and 10.3. I say this because I have a feeling that the whole "one font includes all character sets" hasn't always been that way and Apple has been quietly adding character sets in each OS version. This would need lots of testing though....). Side note: We need to come up with a Cursive russian font. It doesn't need to actually be cursive, but it needs to display text correctly (which it currently doesn't) and be different from the 3 others already used. The list again, here for convenience: Charcoal CY, Geneva CY, Helvetica CY, Monaco CY, and Times CY (the actual filenames contain no spaces and have a .dfont extension). Note that we decided to drop Times CY and use Times New Roman instead (at least on 10.2+), and Monaco, Helvetica, and Charcoal are used for other kinds of text. Which leaves us with Geneva, really. So. Change the serif font to "Times New Roman" and the cursive font to "Geneva". If anyone knows more than I do, please speak! I might post this on some Russian Mac user forums.
Here's a new attachment with my suggestions. Smokey, can you make the previous one obsolete? Also, I just noticed - is there a reason why we're using "Times" as opposed to "Times New Roman" (in othe other charsets)? I know that only the latter has the Cyrillic charset.
(In reply to comment #46) > Created an attachment (id=176640) [edit] > Revised version of Mac fonts list in all.js (v2.2) > > Also, I just noticed - is there a reason why we're using "Times" as opposed to > "Times New Roman" (in othe other charsets)? I know that only the latter has the > Cyrillic charset. The standard version of Times New Roman shipped with Mac OS X (at least through 10.3) does not contain any CY glyphs. We can't set a default font that doesn't ship with Mac OS X (or, as shipped, doesn't contain the glyphs); that's why we're using Times CY. Attachment 108609 [details] from bug 183932 lists all fonts present in a default install of 10.2 (strangely Geneva CY is not present in that list; it is, however, on my 10.3 Mac).
(In reply to comment #47) > (In reply to comment #46) > > Also, I just noticed - is there a reason why we're using "Times" as opposed to > > "Times New Roman" (in othe other charsets)? I know that only the latter has the > > Cyrillic charset. > > The standard version of Times New Roman shipped with Mac OS X (at least through > 10.3) does not contain any CY glyphs. We can't set a default font that doesn't > ship with Mac OS X (or, as shipped, doesn't contain the glyphs); that's why > we're using Times CY. Attachment 108609 [details] [edit] from bug 183932 lists all fonts present > in a default install of 10.2 (strangely Geneva CY is not present in that list; > it is, however, on my 10.3 Mac). Indeed. That list seems to be incorrect. The list to which I was referring was the one I compiled myself, on bug 273035, which can be also found on Apple Russia's Support Page, which explains how to install Russian fonts on your system: http://www.apple.ru/support/cyrillic/russian2x102.html I am also assuming that all Apple comps sold through authorized dealers in Russia come with these fonts installed. My thoughts about TNR come from bug 166971, in which Vladimir mentions this font. In addition, if I pull up the Character Palette and select a Cyrillic character and then choose "Show only fonts containing selected character" (this in 10.2), I only have Times CY and TNR show up. Interestingly, Verdana also shows up in this list but doesn't work (I've tested that TNR does - could it have been added by MS Office 2004?). On a side note" bug 166971 isn't really a dupe of this one. First, it only deals with Mozilla. Second, it talks about font selection, not the default fonts. His problem was that he was limited in which font he could choose. Camino, in fact, doesn't even have this restriction.
THis doesn't seem right to me. Yet I can't seem to notice what I did wrong. Any tips?
Comment on attachment 176666 [details] [diff] [review] attempt at making a patch using v2.1 with geneva cy You're just getting rid of Mac OS X section? Anyway, see comment #38. Unless we fix bug 175651, Camino and Firefox can't share the font preference setting.
I think this should work. Though I have yet to figure out why I had to partially do this by hand.
Attachment #176666 - Attachment is obsolete: true
Attached patch Possible patch (obsolete) — Splinter Review
Here we go again. I'm pretty certain this will be my last try...I have also taken out all of the non-font prefs that follow at the end of the section.
Attachment #176669 - Attachment is obsolete: true
Attachment #176671 - Attachment is obsolete: true
My profuse apologies to all whose mailboxes are now littered with my "patch" notices. It was worth a try since no one else seemed to be jumping on it. For now, though, I think I might have to resort to reading the CVS manual on my spare time.
(In reply to comment #50) > Anyway, see comment #38. Unless we fix bug 175651, Camino and Firefox can't > share the font preference setting. Except for CJK, Cm and Fx seem to share fine. But either bug 175651 has to be fixed or Cm has to invent another way of delivering the default CJK font prefs :-) If we land a patch based on v2.1 + Geneva CY, this bug can be considered "fixed" (within the limits of bug 246527), and Cm then has bug 175651 open to fix its problem generating CJK font names that Gecko likes. Correct? Until Paul figures out cvs diff, I'll attach a clean copy of the #ifdef XP_MACOSX section in case anyone else wants to take a shot at generating a patch.
This is v2.1 + Geneva CY for x-cyrillic.cursive. N.B. Some of the font sizes have been synched in these lists, in addition to fixing the font family defaults.
Attachment #176519 - Attachment is obsolete: true
Attachment #176640 - Attachment is obsolete: true
(In reply to comment #54) > Except for CJK, Cm and Fx seem to share fine. But either bug 175651 has to be > fixed or Cm has to invent another way of delivering the default CJK font prefs :-) We can easily add '#ifdef TOOLKIT_COCOA' (this is a pseudo-code. I have to find out what 'define' to check) to all.js to set different fonts for Camino and Firefox. Of course, that's not necessary if we can find out a way to map between Cocoa and Carbon font names.
Comment on attachment 176681 [details] Revised version of Mac fonts list in all.js (v2.3) What are you guys using to edit these files? Mac OS X is a Unix and you're still generating files with the old Mac classic line-ending convention. Anyway, I made a patch based on this, but I realized that you got rid of all 'font.default.xx' (introduced in bug 95227). Please, keep them. (I have to run now. I may upload a patch with that fixed if you don't fix them)
Mea culpa on the font.default.xx stuff; I was still working with an old copy of that Mac OS X section. As for the line-endings, I'm using TextEdit, which I thought defaulted to Unix-style endings. I've run this through TextWrangler, had it set line-endings to Unix and then normalize line endings. I hope it's fixed this time. :-)
Attachment #176681 - Attachment is obsolete: true
The MS fonts that come with OS X only cover MacRoman. If you have MS fonts with larger repertoires, you have either installed the core fonts from SourceForge or have installed MS Office. Apple Chancery does not depend on Classic. The .dfont is in /Library/Fonts. (The font even uses contextual AAT features.)
I believe this is finally working. I'm not really sure why it wasn't working before, but whatever. Let's get this in!
Attachment #177188 - Flags: review?
(In reply to comment #59) > Apple Chancery does not depend on Classic. The .dfont is in /Library/Fonts. (The > font even uses contextual AAT features.) Only in 10.3; I can't find the .dfont anywhere on my 10.2 install disk. The only version of Apple Chancery in 10.2 is the Classic font installed with Classic. Once Mozilla drops 10.2 support, we can revert Zapfino to Apple Chancery :-) Thanks for making the patch, Paul!
Slight typo makes the last patch obsolete...this one should be good.
Attachment #177188 - Attachment is obsolete: true
Attachment #177189 - Flags: review?
Just for the record (Smokey, now you'll be able to do this yourself on other bugs...), a patch is simply a cvs diff (i.e. file showing the changes made) between your local (modified) file and the most recent version of the same file on the server. First make sure you are logged in...navigate to the folder with the file, and execute "cvs login" in the Terminal. Press enter when prompted for password. The command to perform the actual diff is cvs diff -w -u -b -a FILENAME -w and -b ignores whitespace; -a forces a textual comparison; and -u gives us the +/- notation that seems to be used on mozilla. Good luck!
Comment on attachment 177189 [details] [diff] [review] Patched all.js file with v2.4 of font list >-pref("font.size.variable.ar", 15); >+pref("font.size.variable.ar", 16); > pref("font.size.fixed.ar", 13); > Do not do this change, quickdraw has an issue with 16px font-size... for some langauges, including Hebrew, Arabic and Chinese (see also bug 143557 and bug 120401)
Attachment #177189 - Flags: review? → review-
(In reply to comment #16) > Created an attachment (id=167997) [edit] > Fixed list of Mac fonts in all.js > > OK, so here's the fixed list. Several comments: > ... > 7) I have no idea why Arabic, which fonts are often smaller at the same point > sizes than Roman fonts, was set to smaller sizes than Roman fonts, so I've set > Arabic sizes to match those of the Roman fonts. As per comment 64, I'm changing this back and submitting a new patch. The other (i.e. Hebrew + Chinese) were kept as they were, so only the Arabic is getting changed back. Right after this I am also going to upload an updated font list, v2.4.1
Attachment #177189 - Attachment is obsolete: true
Attachment #177195 - Flags: review?
Here's our latest OS X pref file compilation; it is identical to the patch I just submitted. Smokey, this should supercede the v2.4, so please make that obsolete. *crosses fingers to get approval for patch*
Attachment #177196 - Attachment mime type: text/plain → text/plain; charset=UTF-8
Attachment #177188 - Flags: review? → review-
Attached file test case (fixed)
attachment 176518 [details] doesn't have 'lang' specified for most langGroups, without which it's impossible to test a new font setting. In addition, traditional Chinese section has a character (U+7232) not usually found in TC fonts (because that's not a part of Big5. this is an oversight of the author of the origianl document from which attachment 176518 [details] was derived). I replaced it with U+70BA (that is covered by Big5)
Attachment #176518 - Attachment is obsolete: true
Comment on attachment 177195 [details] [diff] [review] Patched all.js (using v2.4.1 of font list) I've conducted some tests with both Camino and Firefox. It seems that for now this is as good as it can get except that Zapfino has really wide metrics (as pointed out earlier). I like to have Apple Chancery which is available on my OS 10.3.8 I wonder where it came from (I don't think I installed Classic.) Let's get this in for now and continue to fix other Gfx-Mac issues (there are several of them including font.name-list support) Btw, you have a 'typo' here: pref("font.name.cursive.x-western", "Zapfino"); -pref("font.name.fantasy.x-western", "Lucida Grande"); +pref("font.name.fantasy.x-unicode", "Papyrus"); the last line should read +pref("font.name.fantasy.x-western", "Papyrus");
Attachment #177195 - Flags: superreview?(sfraser_bugs)
Attachment #177195 - Flags: review?
Attachment #177195 - Flags: review+
(In reply to comment #68) > Btw, you have a 'typo' here: > > pref("font.name.cursive.x-western", "Zapfino"); > -pref("font.name.fantasy.x-western", "Lucida Grande"); > +pref("font.name.fantasy.x-unicode", "Papyrus"); > > the last line should read > > +pref("font.name.fantasy.x-western", "Papyrus"); > Should i resubmit the patch? Or should I be able to just "edit" the existing one? I will make the change in the all.js list as well. Great! Could this make into a nightly?
I think defaulting to a font (Apple Chancery) that is not available to people who are still running 10.2 but don't have Classic is less of a problem than defaulting to a font with exceedingly weird metrics (Zapfino). The latter has the potential of rendering the generic cursive family unusable.
(In reply to comment #70) > I think defaulting to a font (Apple Chancery) that is not available to people > who are still running 10.2 but don't have Classic is less of a problem than > defaulting to a font with exceedingly weird metrics (Zapfino). The latter has > the potential of rendering the generic cursive family unusable. If we set AC to default, what would be the fallback font? Lucida Grande? Also: what's the status on this? Jungshik never got back to me, and the superreview flag is still a question mark...
(In reply to comment #69) > Should i resubmit the patch? Or should I be able to just "edit" the existing > one? I will make the change in the all.js list as well. No, you don't. It's probably me who's gonna commit it so that I can fix it myself. > Great! Could this make into a nightly? Once sfraser gives his nod, I'll land this. Anyway, I agree that Apple Chancery is better. Currently, it's set to 'fantasy(xx)' so that setting it to 'Apple Chancery' we'd not lose anything compared with the current setting (even where 'Apple Chancery' is not available).
Attachment #177195 - Flags: superreview?(sfraser_bugs) → superreview+
fix landed on the trunk with 'Apple Chancery' in place of 'Za...' Do we want to land this on branches? I guess we do..
Status: ASSIGNED → RESOLVED
Closed: 20 years ago
Resolution: --- → FIXED
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: