Use iCalWatcher to Automatically Sync iCal / Reminder / GeekTool

I recently came across a post at LifeHacker about putting your iCal calendar on your desktop using Reminder, and Adam Laiacano's iCal2Reminder script. I had seen GeekTool stories before, and while interesting, it seemed like an app that would ever become anything more than a novelty for me. On the other hand, constantly reinforcing the things I need to do by putting my ical in front of me all day is the kind of thing I can really use in my day.

The blog post that accompanies Adam's script is a great GeekTool/Reminder/iCal2Reminder tutorial all around, and I definitely recommend it. The only downside is that manually running an applescript in order to sync iCal and Reminder is a bit of a pain.

As involved with cocoa as I've been lately, it's been almost exclusively on the iPhone, and I figured this would be a great opportunity to dive in and familiarize myself with some more Mac oriented cocoa coding. So I went ahead and wrote a wrapper of sorts for the iCal2Reminder applescript.

You can grab the current version here. (instructions after the break)

iCalWatch runs in the background, and adds itself as a startup item. Closing iCal causes the iCal2Reminder script to run.

iCalWatch is a little rough around the edges, a thrown together solution to a problem. Feedback is welcome.


Instructions

Follow Adam's tutorial up to the point where you download and edit his script. iCalWatcher includes the iCal2Reminder script in it's Application package.

Drag iCalWatcher to your Applications folder.

Right click on the iCalWatch application and choose "Show Package Contents"

At this point navigate to Contents/Resources/ to find the iCal2reminder script - open with Script Editor.

You need to make the changes listed in Adam's instructions (the reminder folder location). However, DO NOT SAVE THE SCRIPT AS AN APPLICATION. After the changes are made, just save the file and close the script editor.

Double-Click to start iCalWatch. You won't see an application in your dock, as iCalWatch runs as a service. Running iCalWatch for the first time will add itself to your login items.

At this point, you should be all set, with no need to start iCalWatch again.