I want to add an option to the finder context menu that calls hg add %1
with %1 being the full path of the selected file in finder.
Of course there are more useful cases I can think of, to add to the context menu.
Is there a simple way to do that which doesn't involve installing any 3rd party software or coding in a compiled language and building binary plugins?
Like creating a script with the script editor and dropping it in /Library/Contextual Menu Items/
?
The steps have changed for Snow Leopard/10.6+ since @khachik's correct answer. To make sure its clear, here are the steps:
Service
files or folders
in Finder.app
"as arguments
Your Automator window should look like the this: :
You can now select multiple files in Finder and then execute your service from the Services sub-menu.
For your script, I think you want the following. This changes to each argument's directory then adds it. I'm using a for loop because Finder allows you to select multiple files in different folders (which could be in different repositories).
for f in "$@"
do
cd $(dirname $f); hg add $f
done
If you assumed they are all in the same repository you could do this:
cd $(dirname $1); hg add $@