Move Items Contextual Menu for Snow Leopard

Contextual menu plugins are dead in Snow Leopard, replaced by the revamped Services system.  A user recently contacted me because he wanted to replicate the “Move Items” contextual menu item he used to use in Leopard.  He had used Automator to create a service, but was having a few problems, namely that Default Folder X wasn’t available when he chose the destination folder.

This got me to open up Automator in Snow Leopard and take a crack at it myself.  In the process, I was reminded how cool Automator is 🙂  At any rate, here’s the automator script I put together:

So you’re obviously asking: Why go to the trouble of creating variables instead of just using the “Move Finder Items” action by itself?  I’m glad you asked!  The reason is that I want to bring up a file dialog to specify the folder where I want the items to go.  There’s not a clean way to have the “Move Finder Items” do that every time.  You can change its options to “Show this action when the workflow runs” but you still have to click on it every time you use it to ask it to show a file dialog.  If you use Default Folder X to enhance your Open dialogs, it’s faster to just have the dialog pop up and then go where you want to with DFX.

So in the image above, the workflow puts the current Finder selection into the “selection” variable.  Then it uses AppleScript to bring up a file dialog to ask for a folder, which it stores in the “path” variable.  And finally, it uses the Move Finder Items action to do the work.  Not too much more complicated, and it speeds up your workflow considerably if you’ve already got DFX installed so the Open dialogs are smart.

For you automator programmers, note that some of the actions shown in the workflow do not take inputs.  I did this by control-clicking on the action (“Get Value of Variable”, for example) and choosing “Ignore Input” from the contextual menu.  If you don’t do this, Automator will actually add the input from the previous step to the next one, which is definitely not what you want in this case.

Oh, and if you just want the automator workflow file so you can add it to your own system, you can download it here:

If you need more help with Automator and Services, Apple has some good information and tutorials here:

(Once you’ve gotten through the first few steps of the tutorial, you should be able to just replicate the picture above to make the Move Items service yourself).

5 Responses to “Move Items Contextual Menu for Snow Leopard”

  1. Patrick says:

    Thanks for this one! This is a good FinderPop substitution.

  2. Chris says:

    I’m the user who triggered this and I can’t praise Jon higher for his prompt solution to my problem. I just want to add some installation advise for users who my not be familiar with the changes in Snow Leopard:

    The MoveItems.workflow (like any other contextual Service) must be installed in

    /Library/Services/MoveItems.workflow – for all users, or
    Users/user_account_name/Library/Services/MoveItems.workflow – for one user

    to become available from the new contextual Services submenu.

    This is different from Leopard where workflows were put in
    /Library/Workflows/Applications/Finder/ or ~/Library/Workflows/Applications/Finder/
    and were available from the CM Automator submenu.

  3. GL says:

    Thanks, seems like the best substitution to not-working ⌘x in finder. One non-essential change to the script could be using “Ask for Finder Items” action instead of “Run Applescript” – maybe this is a tad faster (though I doubt it)…

  4. Jon says:

    GL – actually, using the AppleScript instead of “Ask for Finder Items” was very intentional. The “Ask for Finder Items” action won’t have Default Folder X’s enhancements in the file dialog it presents to let you select a folder. The AppleScript will because I added the ‘tell application “Finder”‘ clause in the script – this ensures that the file dialog is actually displayed by the Finder, where DFX is already loaded and available.

  5. Bern says:

    Nothing to add that extends this conversation. Just want to add my thanks for this. MUCH appreciated!

Leave a Reply