Snow Leopard Snubs Document Creator Codes
adamengst writes "In this TidBITS article, Matt Neuburg explores how Mac OS X 10.6 Snow Leopard changes how the operating system handles preferred application bindings, dropping support for the creator codes that have been part of the Mac OS from the early days. He also explains how to work around the problem, if you want, for instance, text documents created with BBEdit to open in BBEdit even when TextEdit is the default handler for text files."
This is especially annoying with Quicktime. The new quicktime in Snow Leopard is no match in comparison with the old Quicktime 7 Pro:
The editing features are now limited to trimming for example, the export possibilities rudimentary.
Fortunately, one can still reinstall Quicktime 7 additionally in Snow Leopard, but one can not change the default application binding for Quicktime. This is a serious problem.
For me, Quicktime pro is half the reason to use a Mac. Changes like this from Leopard to Snow leopard always make me nervous and I'm glad to have Linux catching up. Even apple might screw things up in future, possibly due to pressure of the movie and music industry.
One can for example suspect that the lack of cut and paste ability or export of sound only etc is due to such industry pressure. The average user can no more cut out advertisements for example. I do not see any technical reason why the new limitations are in place if quicktime pro is ditched. An other reason for the current limitations could be that a new QT pro is in the making. I hope this is the case. Still, one should be able to change the default application binding to an old version of quicktime!
It's the developer, not the end user, that applies the creator code that's being ignored (I can't remember the last time I manually changed a creator code--it was long before OS X, anyway). The end user can always do a "Get Info" to change the default app for any individual document.
That said, I agree that it's a pain to have to do that for every specific document you want opened with a particular app; I just saw a nit that needed picking.
You save only 59 seconds over 8 miles by going 75 instead of 65. Do you really have to pass that guy? Do the Math!
What if you didn't have OO.o OR Office installed?
Type/creator codes were meant to replace "ugly" extensions, but in the Internet age, the only way to pass file metadata around is in the filename - MIME types get preserved, if you're lucky, but more often than not, the MIME type is just based on the filename (i.e., the extension).
This was probably due to limited namespace - what is a ".doc" file? These days, it's 95% certainty it's a MS Word document. But it can also be a plain text file since many older programs from the 80s/90s used ".doc" to represent a generic document, like a manual. You'd have README, README.TXT, README.DOC, etc.
So Mac came up with a way to use 2 32-bit identifiers - a creator code, and a type code. Creators are used to identify a creator, so double-clicking would open the same app that opened it (back in the days when compatibility was horrible, the general thinking is you want to open something in the app that created it). The type ID was a fallback in case you can't find the creator, you can try a type lookup, in case it was something another program could handle. If not, you could consult a small database of creator codes to application name mapping, and display an error like "The file 'my file.doc' could not be opened because 'Microsoft Word' was not found, nor any other program that could open it.", thus providing the user with a reason why the file can't be displayed/viewed/etc., and what the user could get to open it. (Would be nice for whoever did the "WINMAIL.DAT" crap...)
These days, it seems that creator codes aren't useful anymore since any number of documents can be created in any number of programs, and binding a document to who created it is less useful these days. Type codes are still useful, though, though the expressiveness of modern extensions makes even type codes obsolete.
The only meta-data attached to a file sent by e-mail is the extension and the mime-type. If your default .doc opener is OO.o, it should work fine.
You'll only see this problem when you get files in storage formats that support file meta-data. Some compression formats support it, and removable storage may or may not.
Alexander Peter Kristopeit bought his basement from his mommy for one dollar.
This isn't the default application. Documents now open with the application that is set as the default, not the application that happened to be set as their creator code. This now means, for example, that the PDF manual for Final Cut Express 2 will open with Preview (because that is my default application for displaying PDFs) not with Adobe Reader (because Acrobat 5 was set as the creator code when it was produced).
I am TheRaven on Soylent News
He also explains how to work around the problem
It's not a problem, it's a fix. This is the way it should work.
Suppose I put a Word document on a computer where OO.o is installed instead of Office. The document says "open me in MS Word". The OS says, "Word isn't installed". What happens? What originally should have happened: The OS looks at the document, says "Word document, open this with OO.o", and everything works great. The extra information was a stupid extra step. "Word document" is all the OS needs in order to figure out how to open it.
That's always the way it worked. If you had a Word file (Type=W8BN, Creator=MSWD) on a system without Word (MSWD) installed, the system would identify any other applications capable of opening W8BN files, and open it using that app.
The extra information only came into play when there was more than one application capable of opening W8BN files. It prevented the common Windows practice of "hijacking" another application's file extensions.
Apparently, everyone has forgotten that UTIs have been in use since Tiger.
By the way, Slashdot, nice job not posting a link to Arstechnica's epic 23-page Snow Leopard review from last week. It's not like they put out the most detailed reviews in the industry or anything.
I think the complaint is that apps in 10.6 are not flagging their own documents to open with themselves.
That is not the complaint in the article. The complaint is that Apple removed the old way applications flagged documents to open in themselves and does not seem to have provided any way for applications to do that using the new method. Rather, applications can tag documents, but the user must still go through and select the files by hand or using a non-obvious script to open in the application after each file is created. It could be that the article writer is mistaken and there is such a method, but no one has yet pointed it out that I've seen and the documentation from Apple is vague and does not seem to provide a method.
Clear the execute bit and it won't try to execute them.
I am TheRaven on Soylent News
If, for instance, you prefer one graphics program for editing .jpgs and a different one for viewing them you are now screwed. You can either set .jpgs to open in one, or the other...
Well not exactly. You can still have your default jpeg viewer be Preview, and still have only particular jpegs open in Photoshop. That's easy enough to accomplish. The difference is just that jpegs saved in Photoshop are not automatically associated with Photoshop regardless of the default that the user has set.
And it's not that I fail to recognize how it might be useful to have jpegs created in photoshop always open in Photoshop, automatically. It's just that I don't think it's a very sensible way to handle things. If I really want to use Photoshop most of the time, I can set that as my default jpeg viewer. If I have particular files that I'm opening all the time and want to open them in Photoshop, I can set that manually on a per-file basis. However, when I set a default viewing application for a particular file-type, it's nice for that decision to be honored by the OS.
From the referenced article in the story : "... The Unix approach (or what I'm calling "Unix" for purposes of this article; its history actually goes back to DEC and DOS and is in fact merely optional in Unix) is to use file extensions, which are abbreviations following a period in a document's name... " The guy who wrote the article clearly has no idea what he's talking about and probably has never seen how this is done in Unix: it uses 'magic'. :)
The Mac OS type system is absurdly complicated.
Determining the application takes into account:
Creator Codes (4 character codes), the file type determined, the file type code, a piece of metadata known as a UTI, the available applications, the UTI's the applications claim to support, the file extensions the application's claim to support, any application explicit bound to the file, The creator codes the applications claim to support, the version numbers of the applications, the classic/OSX status of the apps, of the app, if the app is on a local or network drive, which local drive the app is on, and a few other things.
The result was that unless you bind a file specifically, or explicitly chose a default program for a filetype, it would normally be opened with the prograqm that saved it, but not always.
One can still explicitly bind an application to a specific file, which will override all other considerations. One can still set the default applications for specific types, Which take precedence over other information, except file specific bindings. File types, UTI's, and (I think) file codes are still in use.
So now generally speaking, the preferred app is: the explictly bound app, the explict default app for the file type, or an implicit default app for the file type which is almost impossible to pre-determine, but remains consistent for all files of that type.
To specify a specific app for a specific file, use Finder's Get Info Dialog for that file. That dialog can be opened through the context menu (among other ways).
To set a default app for a file type, use the open with dialog, and check the "Always Open With" box. The open with dialog can be access from the "Other applications" option in the context menu.
So let me get this straight.
Fail. The GP was saying that he'd set all AVI files to open in VLC. In spite of that, some would open in QuickTime anyway because that's what the creator code indicated, which confused the GP greatly because he didn't know that such a mechanism existed.
Dewey, what part of this looks like authorities should be involved?