Apple has introduced a new system for controlling the way files are opened in Snow Leopard, and some users are very upset about it.
“Apple has made a huge, dumb mistake,” says Ross Carter, a developer whose application, Pagehand, is affected by the change.
What’s changed is the use of Creator Codes to identify the app that a particular file should be opened with.
Creator Codes are stored in a file’s resource fork. They are little four-character strings that tell the computer what to do with the file concerned. They’ve been around for years, but a lot of people considered them better than alternative systems that specifically linked file extensions to applications.
Creator Codes specify “ownership” of a document by an application. The app that created that document can apply the code, which tells the system “I made this: I should be the default app for opening it.”
Previously, if I created a text file in TextEdit, it would always open in TextEdit when I double-clicked it in the Finder; even if I had many other text editing applications installed.
How has this changed in Snow Leopard?
In Snow Leopard, the Creator Codes are still there – but the OS completely ignores them.
Instead, it now uses the Launch Services database to see which app has been assigned which filetype. So if your computer has been told to open all HTML files in Safari, it will do so – even if they are HTML files you hand-coded yourself in a text editor.
Ross Carter is particularly annoyed about this. His word processor app, Pagehand, saves files as PDFs. In Leopard, there’s no problem re-opening them with a double-click in the Finder, because the Creator Code tells the system to open them in Pagehand, the app that created them.
But in Snow Leopard, the system sees that the files are PDFs and opens them in Preview, the app that’s been set as the default for opening PDFs. The only way to change this behaviour is to tell the computer to open all PDFs in Pagehand – which would be equally ridiculous. Ross just wants the documents that were created in Pagehand to open there, and all other PDFs to open in Preview. (He has since added a preference to Pagehand – “Mange double-clicks on PDF files” – which solves the problem, at least for his app.)
Ross says in this blog post: “Apple has made a huge, dumb mistake.”
And later he adds: “Snow Leopard takes one of the Mac’s most elegant features— launching the correct application for a file— and desecrates it.”
So how might this affect the likes of you and me?
Well, it’s only going to impact your workflow if you commonly use two or more apps for the same kind of file. If you always, always read and edit plain text files in one text editor, no problem. But if you’d prefer some rich text documents to open in TextEdit and others to open in Word or Pages; well, you’re going to have to change the way you work a little.
The simplest workaround is to get used to opening files by right- or control-clicking, and using the “Open with…” menu. Or by dragging them on to the icon of the app you wish to use. (This is where the Finder toolbar comes in handy. You probably know that you can drag stuff into that toolbar; dragging some application icons in there means you’ll always have them handy when browsing the file system, and can easily drag files into the app you want to use.)
There’s a lot more detail about this issue in this article by Matt Neuburg over at TidBITS. Some of the comments there are heartfelt. One commenter says this change has destroyed his workflow: “I am angry to the verge of tears.”
It’s worth noting that some of the comments on Carter’s post and on the TidBITS article are very positive, with several people saying they always wished things had worked this way.