Associate files to applications using Services in Snow Leopard
As I noted Wednesday, Snow Leopard changes the way applications and documents are associated. The original article has the details, but basically, documents will no longer automatically open in the applications used to create them. For many users—myself included—this change represents a large loss in functionality.
As a user, what can you do if you prefer the “old” behavior of OS X 10.5 and earlier? I list a few alternatives in my article, including using the Open With contextual menu, and changing the file associations in the document’s Get Info window. Today’s hint details a third solution, which is the one I’m now regularly using myself.
This method is basically the same as using the Get Info window to change a given document’s associated application, but it uses Automator to turn the task into a Service—which can then be assigned a keyboard shortcut. I created one Services for those programs I work in most often (Smultron, BBEdit, and Photoshop CS3), to make it easy to reconnect newly-created files with those programs. Here’s how I did it.
Open Automator (in the Applications folder), and when the template chooser appears, select Service and click Choose. On the right side of the Automator window, you’ll see two pop-up menus, next to text that reads Service receives selected and in. Set the first pop-up menu to files or folders, and the second to Finder. You’ve just specified that your new Service will work only on selected files (or folders, but you wouldn’t use this Service on a folder) in the Finder.
Now click on Files and Folders in the Library column, then drag Set Application for Files from the Actions column into the work area on the right. Click the Default pop-up menu, and set it to the application that you would like to set as the owner of the selected file(s). In the above screenshot, I’ve created this Service to set the owner of the chosen file(s) to Smultron (the Snow Leopard beta of Smultron, in particular).
That’s it—your service is done. Save it now with a catchy name (Owner-Smultron or whatever you like; I used _app-AppName to group them all together). Repeat this process for all of your most-used applications, saving each with a unique name.
(Note that there’s also an Open Finder Items action, and it includes an Open With pop-up menu. You could use this action instead to create your own customized Open With entries in the Services menu. This wouldn’t permanently change the file’s association, just open it one time in the chosen application.)
At this point, you can be finished, if you wish. Your newly-created Services will be available in the Services entry of the Finder’s contextual menu—just Control-click on a file, select the correct Service for the document in question, and you’re done.
But you can make it even easier if you like—you can activate your Services via keyboard shortcut. Open the Keyboard System Preferences panel, and switch to the Keyboard Shortcuts tab.
Select Services in the left-hand column, then scroll down to the Files and Folders section of the right-hand column. There you should see your newly-created Services items. Click in the blank space to the right of each entry, and then type a keyboard shortcut.
I had trouble getting keyboard shortcuts to work in the Finder using just the Option or Control keys, so I settled on Command and Control together, as seen in the screen shot. With things set up like this, I can quickly change the association of any file (or files) by selecting it in the Finder, then pressing the applicable keyboard shortcut.
While this is still far from ideal—I’d really like an option to return to the automatic binding that occurred in pre-Snow Leopard OS X releases—it at least makes the task of re-associating my documents to their creating applications much easier.