The Rules
  • Feel free to leave constructive criticism, or point out a better way to do something.
  • Personal attacks or flames, on me or anyone else, will be deleted.
  • Past history has shown that 99% of comments I can't read (i.e. those in other languages) to be spam. Therefore, any comment I can't read will be removed.
  • I'm pretty mellow concerning profanity, but excessive (as determined subjectively by me), bad language will be removed.

Tuesday, March 18, 2008

AppleScript, Growl, and iCal

Problem:
After deciding that a little more organization would do me some good, I started using iCal. But I still kept forgetting due dates. Email notifications of iCal events were not much help, since I don't use a mail client with any frequency. I hated the message alarms from iCal, but I like Growl, and I especially like the idea behind Creme Rappel (sorry, no accent marks here).

Solution:
So I started tinkering around with iCal's AppleScript dictionary. After a _lot_ of work, and lots of digging around the internets, I cobbled something together that fits the bill. The idea is that when an iCal alarm is triggered, you run an app that looks through your calendars to find the event that triggered an alarm within the current 2-minute window (leaving a little room for error) and tell Growl to tell you about it. You'll need Growl (included in .zip file) installed for this to work.

Disclaimer: If you've got a lot of calendars and events, it will take a minute to churn through them. I'm working on a more efficient way to do this, but now that it's working, school is going to have to come first for a while.

You can get iCalGrowl here.

Screenshot: