A common refrain on this list is being able to edit files remotely. I explored various solutions (transmit, subversion, hotkey), but decided that ultimately what I wanted was something that would just watch one or more local files I was editing and then as they change, automatically upload them to a remote destination.
So I spent some time last night hacking together syncmate (python script), attached:
Usage: syncmate <file> [<file>...] [username@]host:/remote/path/
Watches one or more files for changes and copies to host whenever the file changes locally. The first time called, starts an instance of syncmate as a daemon. Each subsequent time called registers new files with the running daemon.
Usage: syncmate --list
Lists registered files
Usage: syncmate --quit
Causes daemon to quit
It requires the Growl python bindings be installed for notification (btw, I had trouble with the Growl python bindings occasionally causing python to crash, but I think I've narrowed the problem down to attempting to use a custom icon in the notifications, so I've left that out.)
Anyway, I find this useful in combination with textmate, so I figured I'd post it here. Hope someone else finds it useful.
j.