I seem to have spent the last two days trying to get my head around how Tiger deals with File & Icon associations. I started using OSX with Panther and Tiger seems alot more Windows like with the way it handles associations. I was always led to believe that in OS X, a file opens with the application which created it. After doing lots and lots of tests, this seems not be the case at all.
I'm running Tiger 10.4.5 on a G4 Powerbook. Here's what I've found, I've tested this stuff on my user account and a brand new one and both give me the same results. I'm posting this mainly to try and confirm if my experiences are shared with other Tiger users....whether this is any use to you or not is another matter, you probably know it already but I felt I needed to write this down just to make sure I understand it myself.
1. I have two text editors on my machine 'TextEdit' & 'TextMate' both allow me to save .txt files(plain text documents). By default Tiger seems to want to open *all* .txt files in TextEdit, and all such files have the TextEdit .txt icon.
If I create a brand new plain text file in TextMate and save it as 'textmate.txt' the file will still open with TextEdit by default and will still have the TextEdit style Icon.
Using Xray to get detailed info on the file, I can see no creator data is present and it's bound to <no application>. More on this later....
If I 'get info' on 'textmate.txt' and go down to the 'open with' panel and then set TextMate to open the file, the icon will change instantly to a TextMate icon and sure enough it will now open with TextMate rather than TextEdit. Using Xray again to view detailed info, this time the file is now bound to the application 'TextMate.app'.
Now, all the other .txt files on my system, whether created with TextEdit or TextMate all still open with TextEdit and have the TextEdit icon EXCEPT ofcourse for the 'texmate.txt' file. This makes perfect sense, as I have just customized 'textmate.txt'. If I now 'get info' on one of my other .txt files, say one that's called 'textedit.txt', proceeding to the 'open with' tab and choosing Open with 'Safari' and then clicking 'Change All'. Now, all my .txt files open with Safari except for 'textmate.txt' because it is bound to TextMate and it has a TextMate icon still. All my other .txt files get the Safari icon, but only after a Finder relaunch (why is this?)....'textedit.txt's' icon changed striaght away but other .txt files remain with their old icon until Finder is relaunched. An important note here also is that all these other .txt files aren't bound to anything, according to XRay. <no application>
To finish off, if I go back to 'textmate.txt' and 'get info', and change the 'opens with' to Safari, this file with now be bound to Safari. Even though now ALL my .txt files have the same icon and all open with Safari 'textmate.txt' is still unique because it is the only one that is bound to an applicaition(Safari). You can tell it's different because 'change all' *is not* dimmed/greyed out unlike all the other .txt files. In order to unbind it from Safari, clicking the 'change all' in it's 'get info' window binds it to <no application>, and thus dims the option. This means that it will follow the rest of the .txt files from now on, almost like it's been unlocked.
So, it seems the creator of a file has little impact on what application opens a file in Tiger, it's the binding that counts. I've done a similar test with Fireworks MX 2004 which does add creator info to the files it saves and exports. But these files will still open with Preview if I have previously 'changed all' .png files to open with Preview.
It also appears that the 'open with - change all' affects future saves. Was it like this in Panther? Like I said, I always assumed before moving to OS X that files always opened with the applications that created them. This doesn't seem true at all under Tiger. Instead you can quite easily use Word to create .doc files and have Pages open them when you double click them.
All of the above makes sense to me, and I kinda like it. The only thing I don't like is the fact that I always have to relaunch finder after doing a 'change all' in order to see ALL my changed icons.
2. I've noticed problems may occur if applications that save the same kind of file, specify a different file kind, ie..
Kind: GIF (gif)
Kind: Graphics Interchange Format (gif)
Kind: Plain Text Document (txt)
Kind: Standard Document (txt)
This causes problems I noticed with icon associations.
3. Applications such as Photoshop and Fireworks, when saving seem to create an embedded preview icon. Saving a native fireworks PNG file creates an icon that is a preview of the file, it's not possible to copy, delete or paste over this icon in the 'get info' window. Saving a PSD from photoshop also results in an icon with a similar preview BUT this time you are able to copy/paste over/delete the icon in the 'get info' window.
These icons also remain in column view, so it's not the same as the 'show preview icon' pref in Finder which isn't actually available in column view.
4. Mac OS X seems to be unable to specify system wide icons. For example, Pages is able to save and edit RTF files so you can quite easily have all your rtf files open in pages by default. BUT, Pages does not have an icon associated with rtf files so if you do have have your rich text files all open with Pages you'll have to put up with a blank/generic icon file.
You can ofcourse manually change the icons so that they aren't blank but this is hardly a solution as you will have to do it everytime you create a new rtf file.
I can't see any way to specify an default icon for rtf files, ala Windows. ? It seems such a simple thing to ask to do.
5. Custom Icons seem to work in the same way that files can be bound to a certain application. When you give a file a custom icon, no matter what changes you make to associations or 'change all' or whatever else the custom icon remains on that file until you delete it from the 'get info' window. Once deleted, the files icon reverts to what it would be if no custom icon was pasted in.
6. Even when saving a .PSD file from Photoshop CS, the resulting file is not bound to photoshop, the creator is set as Photoshop CS but the binding is <no application>. Meaning you can quite easily change all of your PSD files to open with Fireworks or another app that can edit PSD files. So if Photoshop isn't even binding PSD files to only open with it, then I don't see what else is. This destroys the idea that files saved with application X, open with application X. It depends totally on the default setting for that file type/kind.
---------
I understand this a whole lot better now than I did 48 hours ago, but it can be kinda hard to understand the rules which OS X adheres to. I just hope all the above is mirrored on your 10.4.5....?
I'm running Tiger 10.4.5 on a G4 Powerbook. Here's what I've found, I've tested this stuff on my user account and a brand new one and both give me the same results. I'm posting this mainly to try and confirm if my experiences are shared with other Tiger users....whether this is any use to you or not is another matter, you probably know it already but I felt I needed to write this down just to make sure I understand it myself.
1. I have two text editors on my machine 'TextEdit' & 'TextMate' both allow me to save .txt files(plain text documents). By default Tiger seems to want to open *all* .txt files in TextEdit, and all such files have the TextEdit .txt icon.
If I create a brand new plain text file in TextMate and save it as 'textmate.txt' the file will still open with TextEdit by default and will still have the TextEdit style Icon.
Using Xray to get detailed info on the file, I can see no creator data is present and it's bound to <no application>. More on this later....
If I 'get info' on 'textmate.txt' and go down to the 'open with' panel and then set TextMate to open the file, the icon will change instantly to a TextMate icon and sure enough it will now open with TextMate rather than TextEdit. Using Xray again to view detailed info, this time the file is now bound to the application 'TextMate.app'.
Now, all the other .txt files on my system, whether created with TextEdit or TextMate all still open with TextEdit and have the TextEdit icon EXCEPT ofcourse for the 'texmate.txt' file. This makes perfect sense, as I have just customized 'textmate.txt'. If I now 'get info' on one of my other .txt files, say one that's called 'textedit.txt', proceeding to the 'open with' tab and choosing Open with 'Safari' and then clicking 'Change All'. Now, all my .txt files open with Safari except for 'textmate.txt' because it is bound to TextMate and it has a TextMate icon still. All my other .txt files get the Safari icon, but only after a Finder relaunch (why is this?)....'textedit.txt's' icon changed striaght away but other .txt files remain with their old icon until Finder is relaunched. An important note here also is that all these other .txt files aren't bound to anything, according to XRay. <no application>
To finish off, if I go back to 'textmate.txt' and 'get info', and change the 'opens with' to Safari, this file with now be bound to Safari. Even though now ALL my .txt files have the same icon and all open with Safari 'textmate.txt' is still unique because it is the only one that is bound to an applicaition(Safari). You can tell it's different because 'change all' *is not* dimmed/greyed out unlike all the other .txt files. In order to unbind it from Safari, clicking the 'change all' in it's 'get info' window binds it to <no application>, and thus dims the option. This means that it will follow the rest of the .txt files from now on, almost like it's been unlocked.
So, it seems the creator of a file has little impact on what application opens a file in Tiger, it's the binding that counts. I've done a similar test with Fireworks MX 2004 which does add creator info to the files it saves and exports. But these files will still open with Preview if I have previously 'changed all' .png files to open with Preview.
It also appears that the 'open with - change all' affects future saves. Was it like this in Panther? Like I said, I always assumed before moving to OS X that files always opened with the applications that created them. This doesn't seem true at all under Tiger. Instead you can quite easily use Word to create .doc files and have Pages open them when you double click them.
All of the above makes sense to me, and I kinda like it. The only thing I don't like is the fact that I always have to relaunch finder after doing a 'change all' in order to see ALL my changed icons.
2. I've noticed problems may occur if applications that save the same kind of file, specify a different file kind, ie..
Kind: GIF (gif)
Kind: Graphics Interchange Format (gif)
Kind: Plain Text Document (txt)
Kind: Standard Document (txt)
This causes problems I noticed with icon associations.
3. Applications such as Photoshop and Fireworks, when saving seem to create an embedded preview icon. Saving a native fireworks PNG file creates an icon that is a preview of the file, it's not possible to copy, delete or paste over this icon in the 'get info' window. Saving a PSD from photoshop also results in an icon with a similar preview BUT this time you are able to copy/paste over/delete the icon in the 'get info' window.
These icons also remain in column view, so it's not the same as the 'show preview icon' pref in Finder which isn't actually available in column view.
4. Mac OS X seems to be unable to specify system wide icons. For example, Pages is able to save and edit RTF files so you can quite easily have all your rtf files open in pages by default. BUT, Pages does not have an icon associated with rtf files so if you do have have your rich text files all open with Pages you'll have to put up with a blank/generic icon file.
You can ofcourse manually change the icons so that they aren't blank but this is hardly a solution as you will have to do it everytime you create a new rtf file.
I can't see any way to specify an default icon for rtf files, ala Windows. ? It seems such a simple thing to ask to do.
5. Custom Icons seem to work in the same way that files can be bound to a certain application. When you give a file a custom icon, no matter what changes you make to associations or 'change all' or whatever else the custom icon remains on that file until you delete it from the 'get info' window. Once deleted, the files icon reverts to what it would be if no custom icon was pasted in.
6. Even when saving a .PSD file from Photoshop CS, the resulting file is not bound to photoshop, the creator is set as Photoshop CS but the binding is <no application>. Meaning you can quite easily change all of your PSD files to open with Fireworks or another app that can edit PSD files. So if Photoshop isn't even binding PSD files to only open with it, then I don't see what else is. This destroys the idea that files saved with application X, open with application X. It depends totally on the default setting for that file type/kind.
---------
I understand this a whole lot better now than I did 48 hours ago, but it can be kinda hard to understand the rules which OS X adheres to. I just hope all the above is mirrored on your 10.4.5....?