J
Jeff Wiseman
Why your Office 2004 Fonts want to keep loading in OS X
(please note followup-to newsgroup)
After spending a LOT of time screwing around with this, and with
with the gracious coaching by Matt Neuburg (thanks a lot Matt!)
as well as some other participants on various newgroups, I've
finally come to a fairly solid understanding of this problem and
why it is occurring. I want to get this summary down so others
running into it won't have the aggravation that I've had.
Unfortunately, there's not much can be done about the problem
except avoid it until Apple stabilizes their font support
software and Microsoft stops using strange undocumented controls
in their products.
SYMPTOMS:
Every time someone starts an Office 2004 product such as Word for
the first time, they get the entire office font set dumped into
their home font folder ~/Library/Fonts, EVEN IF the fonts are
already installed there or anyplace else in OS X (usually the
/Library/Fonts folder).
VARIATIONS:
It's possible on a system with multiple accounts for some users
not to see this problem (i.e., fonts never load) and other to see
it. The chances of incurring the problem increase with the use of
the Font Book utility.
MECHANISM:
Office seems to detect a first run on its products by the absence
of Microsoft office related preferences in the
~/Library/preferences area. When an application like Word is
first started and it determines that this is a first run, it
checks the OS X font environment of the User for the presence of
one or more specific Windows True Type fonts distributed with the
Office Installation. The font(s) checked for is from the
following list:
Batang.ttf
Gulim.ttf
MS Gothic.ttf
MS Mincho.ttf
MS PGothic.ttf
MS PMincho.ttf
PMingLiU.ttf
SimSun.ttf
I do not know which of these fonts is the trigger but it does
seem to be one or more of these. Note that this set is the
COMPLETE set of Windows Truetype fonts provided with Office. Also
note that they are all Asian type fonts.
When Office is checking for the presence of whichever font it is
looking for, it does so by using the OS X font management
facilities and not just looking in locations by itself. This is
significant as I will explain later. If it does NOT find the
font(s) in question, it then copies all of the fonts in the
Applications area for Office into the User's home font folder
(~/Library/Fonts). This is a reasonable algorithm for
Installation in that a user has control over their own fonts and
an Administrator can move them to a common area if they so desired.
PROBLEMS:
The main issue is that Office tends to install all of its fonts
even when they are already installed. In searching this out I've
discovered that it is a result of 3 issues:
1) The set of 8 fonts identified above are all wacko to start
with and all exhibit the same characteristics in the Mac's font
system. None of the other 70+ fonts installed by Office have any
of these problems. None of the Windows TrueType fonts that come
with the OS X have these problems. Some strange characteristics
when installed in OS 10.3.6 are:
a) For any of these fonts, if you double-click on the font,
although the Font Book utility opens, you will not get an install
window.
b) If these fonts are duplicated in the Font system, they can
"disappear" from the font system. This doesn't mean they are
Disabled, but rather they won't even show up as Disabled fonts.
c) Disabling one of these fonts can result in it disappearing.
The problem in a nutshell is that these fonts are disappearing
from the font system, even though they actually exist in the
proper folders. Since Office uses the Mac's view of installed
fonts, It reports to Office that they do not exist and as a
result, Office reinstalls another set of unneeded fonts.
2) The fonts in each user's environment (i.e., the list of all
enabled fonts that a user can see or use) are determined through
the Mac's font management system. It appears that the files that
track this information can be very unstable. This information is
kept partly in the com.apple.ATS.plist file in the user's
preferences folder. When fonts disappear from the visibility of
applications and utilities such as Font Book, deleting the
preference file and logging out then in can cause those lost
fonts to again show up in the tool's menu (although collection
enable/disable states can be altered and would need to be reset).
I have found through several hours of experimenting that the
Microsoft fonts listed above are the only ones that seem to keep
being dropped from sight which has the same effect of disabling
them. None of the other Office fonts are affected like this. In
other words, the very fonts that Microsoft is using to determine
whether or not their font set is installed are the very ones that
are so ill-behaved that the font system keeps losing track of
them, necessitating a preference file deletion in order to get
them detectable again.
3) The Font Book utility is very buggy IMHO (I've seen Beta test
software far more stable than this thing). Without further
experimentation using other font tools, I personally have become
convinced that the Font Book itself is the main reason for the
instabilities identified in "2)" above. I believe this because
even the handling of collections seems to be just as buggy as the
direct font handling. It has the appearance to work ok at first
but if you look closer and actually try doing what it is supposed
to do, you start seeing constant inconsistencies. If you don't
use it for anything except previewing fonts, it seems ok. But, if
you start creating multiple collections with large numbers of
fonts in them (e.g., an "Office fonts" collection) strange things
start to happen. I've seen collections that when you drag a font
from the computer collection to it, it totally ignores it. Then
when you try to delete the collection, it refuses to go away. If
you then look into the Font collections folder you can see things
like "test.collection" and "test.collection.collection" both
sitting there.
When you have duplicate fonts in the system, it can get pretty
confused here too. I saw it once where it wouldn't even let you
assign one of the duplicates to a collection since it seemed to
insist on locking it into a "Family" that it had found elsewhere.
However, the Font Book's tolerance for the wacko font set given
previously is particularly bad. When these fonts are present,
especially as duplicates (which is what this problem is all
about--installing the font set when it is already in place) you
hardly have to do anything in Font Book to see them disappear
from the view. When you can't see them in Font Book, your
applications can't see them, and Office's font installation
software can't see them resulting in the problem being documented
here.
RECOMMENDATIONS:
A) Don't try deleting the Asian Windows TrueType fonts. This
triggers the problem. Even touching them or Disabling them from
the Font Book can trigger the problem. MS put the fonts there,
now you just have to live with them and the space they take up on
your disk and font pulldown lists. Don't remove these fonts from
the Applications folder for Office so they won't install. This
will also trigger the problem.
B) Avoid doing or trusting anything significant in Font Book.
Even though it is "supposed to" do things, I have lost nearly all
confidence in it. If it doesn't seem to have all the fonts
visible, delete the com.apple.ATS.plist preference and log in
again. That will start you clean again but only a few keystrokes
in the Font Book can regenerate the problem.
C) If Font Book is locked up such that you don't seem to be able
to work on certain collections, try opening an application (such
as text edit) that has the font panel. Although the font panel is
functionally very much like Font Book, It will sometimes let you
do things when Font Book has gone brain dead. For example, if you
can't drag and drop a font from the computer collection into your
own new collection, try the same thing from the Font Panel, you
may find that it actually works there.
I hope that this is useful to others. I wish I had this
information before I had to start screwing around trying to
figure it out myself. All this information is only my personal
opinions based on the experience I've had over the last couple of
days. Any additional information or corrections to
misinterpretations I've made would be greatly appreciated.
- Jeff
(please note followup-to newsgroup)
After spending a LOT of time screwing around with this, and with
with the gracious coaching by Matt Neuburg (thanks a lot Matt!)
as well as some other participants on various newgroups, I've
finally come to a fairly solid understanding of this problem and
why it is occurring. I want to get this summary down so others
running into it won't have the aggravation that I've had.
Unfortunately, there's not much can be done about the problem
except avoid it until Apple stabilizes their font support
software and Microsoft stops using strange undocumented controls
in their products.
SYMPTOMS:
Every time someone starts an Office 2004 product such as Word for
the first time, they get the entire office font set dumped into
their home font folder ~/Library/Fonts, EVEN IF the fonts are
already installed there or anyplace else in OS X (usually the
/Library/Fonts folder).
VARIATIONS:
It's possible on a system with multiple accounts for some users
not to see this problem (i.e., fonts never load) and other to see
it. The chances of incurring the problem increase with the use of
the Font Book utility.
MECHANISM:
Office seems to detect a first run on its products by the absence
of Microsoft office related preferences in the
~/Library/preferences area. When an application like Word is
first started and it determines that this is a first run, it
checks the OS X font environment of the User for the presence of
one or more specific Windows True Type fonts distributed with the
Office Installation. The font(s) checked for is from the
following list:
Batang.ttf
Gulim.ttf
MS Gothic.ttf
MS Mincho.ttf
MS PGothic.ttf
MS PMincho.ttf
PMingLiU.ttf
SimSun.ttf
I do not know which of these fonts is the trigger but it does
seem to be one or more of these. Note that this set is the
COMPLETE set of Windows Truetype fonts provided with Office. Also
note that they are all Asian type fonts.
When Office is checking for the presence of whichever font it is
looking for, it does so by using the OS X font management
facilities and not just looking in locations by itself. This is
significant as I will explain later. If it does NOT find the
font(s) in question, it then copies all of the fonts in the
Applications area for Office into the User's home font folder
(~/Library/Fonts). This is a reasonable algorithm for
Installation in that a user has control over their own fonts and
an Administrator can move them to a common area if they so desired.
PROBLEMS:
The main issue is that Office tends to install all of its fonts
even when they are already installed. In searching this out I've
discovered that it is a result of 3 issues:
1) The set of 8 fonts identified above are all wacko to start
with and all exhibit the same characteristics in the Mac's font
system. None of the other 70+ fonts installed by Office have any
of these problems. None of the Windows TrueType fonts that come
with the OS X have these problems. Some strange characteristics
when installed in OS 10.3.6 are:
a) For any of these fonts, if you double-click on the font,
although the Font Book utility opens, you will not get an install
window.
b) If these fonts are duplicated in the Font system, they can
"disappear" from the font system. This doesn't mean they are
Disabled, but rather they won't even show up as Disabled fonts.
c) Disabling one of these fonts can result in it disappearing.
The problem in a nutshell is that these fonts are disappearing
from the font system, even though they actually exist in the
proper folders. Since Office uses the Mac's view of installed
fonts, It reports to Office that they do not exist and as a
result, Office reinstalls another set of unneeded fonts.
2) The fonts in each user's environment (i.e., the list of all
enabled fonts that a user can see or use) are determined through
the Mac's font management system. It appears that the files that
track this information can be very unstable. This information is
kept partly in the com.apple.ATS.plist file in the user's
preferences folder. When fonts disappear from the visibility of
applications and utilities such as Font Book, deleting the
preference file and logging out then in can cause those lost
fonts to again show up in the tool's menu (although collection
enable/disable states can be altered and would need to be reset).
I have found through several hours of experimenting that the
Microsoft fonts listed above are the only ones that seem to keep
being dropped from sight which has the same effect of disabling
them. None of the other Office fonts are affected like this. In
other words, the very fonts that Microsoft is using to determine
whether or not their font set is installed are the very ones that
are so ill-behaved that the font system keeps losing track of
them, necessitating a preference file deletion in order to get
them detectable again.
3) The Font Book utility is very buggy IMHO (I've seen Beta test
software far more stable than this thing). Without further
experimentation using other font tools, I personally have become
convinced that the Font Book itself is the main reason for the
instabilities identified in "2)" above. I believe this because
even the handling of collections seems to be just as buggy as the
direct font handling. It has the appearance to work ok at first
but if you look closer and actually try doing what it is supposed
to do, you start seeing constant inconsistencies. If you don't
use it for anything except previewing fonts, it seems ok. But, if
you start creating multiple collections with large numbers of
fonts in them (e.g., an "Office fonts" collection) strange things
start to happen. I've seen collections that when you drag a font
from the computer collection to it, it totally ignores it. Then
when you try to delete the collection, it refuses to go away. If
you then look into the Font collections folder you can see things
like "test.collection" and "test.collection.collection" both
sitting there.
When you have duplicate fonts in the system, it can get pretty
confused here too. I saw it once where it wouldn't even let you
assign one of the duplicates to a collection since it seemed to
insist on locking it into a "Family" that it had found elsewhere.
However, the Font Book's tolerance for the wacko font set given
previously is particularly bad. When these fonts are present,
especially as duplicates (which is what this problem is all
about--installing the font set when it is already in place) you
hardly have to do anything in Font Book to see them disappear
from the view. When you can't see them in Font Book, your
applications can't see them, and Office's font installation
software can't see them resulting in the problem being documented
here.
RECOMMENDATIONS:
A) Don't try deleting the Asian Windows TrueType fonts. This
triggers the problem. Even touching them or Disabling them from
the Font Book can trigger the problem. MS put the fonts there,
now you just have to live with them and the space they take up on
your disk and font pulldown lists. Don't remove these fonts from
the Applications folder for Office so they won't install. This
will also trigger the problem.
B) Avoid doing or trusting anything significant in Font Book.
Even though it is "supposed to" do things, I have lost nearly all
confidence in it. If it doesn't seem to have all the fonts
visible, delete the com.apple.ATS.plist preference and log in
again. That will start you clean again but only a few keystrokes
in the Font Book can regenerate the problem.
C) If Font Book is locked up such that you don't seem to be able
to work on certain collections, try opening an application (such
as text edit) that has the font panel. Although the font panel is
functionally very much like Font Book, It will sometimes let you
do things when Font Book has gone brain dead. For example, if you
can't drag and drop a font from the computer collection into your
own new collection, try the same thing from the Font Panel, you
may find that it actually works there.
I hope that this is useful to others. I wish I had this
information before I had to start screwing around trying to
figure it out myself. All this information is only my personal
opinions based on the experience I've had over the last couple of
days. Any additional information or corrections to
misinterpretations I've made would be greatly appreciated.
- Jeff