Friday, June 17, 2005

File type associations

I think I have reached the first point with Mac OS X where I am confused. I was going to say slightly confused, but I think I may be completely confused. And its the issue of file type associations.

As with every post I make, let me start with some background. In the Unix world, given some file 'foo', there is essentially no metadata associated with that file that tells me or the operating system what application (or range of possible applications) I should use to operate on that file. That is, you can certainly call a file pretty much anything, and there's no background magic telling Unix how to open that file, or what to display or edit it with. (It's not as bad as it sounds. As you would expect, conventions develop, and there are utilities (such as 'file') that use magic to determine file types for you if you're stuck.) I'm not saying there aren't 'file extensions' (like putting '.jpg' at the end of a JPEG file), I'm just saying that there's nothing forcing that behaviour, and nothing automatically arises out of you doing so.

In the Windows world, as far as I can tell, the famous MS-DOS '8.3' legacy is essentially alive and well, though the numbers there are a little larger. But the principle remains: Windows uses 'filename extensions' to associate a file with an application which can operate on it. If a filename ends in the literal string '.jpg', then that file is a JPEG image (and you can't really convince Windows otherwise). While this strikes me as a little inelegant, it works in practice about 99% of the time. (Here's an example of the 1%: you can't (again, as far as I can tell) convince Windows to do anything sensible by default with a file that has no filename extension. Once I tried to convince Windows XP to open extensionless files with a text editor—which, for me, would work most of the time (e.g., 'README'—it's not a 'README file', Windows, it's text—just take a look)—but couldn't.)

My understanding of how this all works under Mac OS X is fairly shallow, though I do gather there is quite a bit of metadata associated with every file. What I don't seem to have mastered just yet is manipulating it. I had the Microsoft Office trial on the PowerBook at purchase time. It expired, I removed it, and installed the full version. Now, Tiger seems to be confused about how to open Office files. I have a Word document attached to an email. From Mail, I clicked on the document, and got this response:


How odd. Is this Mail's problem? Is it Tiger's? How can I find who is trying to hand the document off to whom? Next, I choose 'Save', and double click on the document in the Finder. Even the Finder is not going to play nice:


Now, don't get me wrong—I love a good cryptic error message (preferably with a negative error number) as much as the next guy. But this is starting to get a little too Windows for my liking.

Anyway, back to the document. I Ctrl-click on it (yes, I am a power user now):


OK, so Tiger thinks there are two possible versions of Word. I started thinking, "Presumably one of those was the trial version, and the other is the full version." Then I started thinking, "Why should I even care?" At this point I slumped back in my chair. I bought a Mac to get away from all this Windows-esque stupidity.

There is a happy ending to the story. After burrowing around in Finder preferences, system preferences, file information dialogs, and probably a few other places, I got pretty much nowhere. The negative error number dialog was obviously completely useless, and it's the kind of Windows-style user interface element of which Apple ought to be ashamed. However, after Ctrl-clicking the document and trying the suggested applications one-by-one, I finally got a useful error message: the problem was that the trial version of Word was still in the Trash. That was it. Empty Trash, no more problem. So, the summary is this: I'm happy, but it shouldn't have been this hard.


  1. The real problem is that you tried to solve this like a Windows user. You'll get over it. :)

  2. What I meant is that you went through an exhaustive set of Windows-type options for what could be wrong, whereas a Mac user wouldn't normally have a clue and try the few simple things they know like emptying the trash. :)

  3. Well, I certainly have noted the solution for future use. Never in my wildest dreams would I have imagined that the presence of items in the Trash would be significant in this way.

  4. Seriously Paul, not having a clue and just emptying the Trash is about right. It's certainly what I'd do.

    Feel free to call me 'clueless' with impunity, people.

  5. Ah the irony... Sorry Paul, I just couldn't stop laughing! :D