My main criteria for a useful to-do list were that the lists be available from any of my three computers at any time, and that they be as easy as possible to use (including drag-and-drop list ordering -- I can't stand having to set priority numbers!). For a while, I optimized on my first criteria by using an online wiki, but the editing wasn't nearly as drop-dead easy as a native Cocoa app. I considered using OmniOutliner, which has a much better interface, but keeping track of different versions of the to-do list would be more of a hassle than I wanted.
Finally I found a happy medium: an Applescript wrapper for OmniOutliner that will automatically sync to my main machine before and after I make changes.
To do this you will need:
- Omni Outliner, or your outliner of choice
- The ability to do keyless SSH authentication.
- Kinkless Getting Things Done, an OmniOutliner Pro document with lots of macros to make things easier.
When the AppleScript is run, it syncs your to-do list with the version on your server (or desktop or whatever). It then opens it and waits while you make whatever edits you want. (The assumption is that the Finder will know which application to use to open it.) When you're done editing, just save and quit. The script beeps once to tell you that it's recognized the fact that the application has quit, then beeps again once it has re-synced with the server and with a backup directory (which could be on another server if you want).
Credit to Eelco Houwink for the part that waits until the program quits.

