I use the excellent remind tool for keeping my brain in order. Its immense power is a little too much for me at times, so I mate it with the Wyrd ncurses front-end.
I have prepared an include file modelling South Australia public holidays (available here). It correctly handles the nuances of our floating holiday system. Include this into your ~/.reminders
file using the INCLUDE
directive. You must also include a clean version of defs.rem
from the remind distribution.
Unfortunately I am cursed to deal with a Microsoft Exchange messaging system at my place of employment. In the UNIX way however, mutt, perl, remind and wyrd can work together so that I don't miss an appointment.
Firstly, setup a binding for mutt to pipe an invitation email to a script which will parse the ical attachment(s) (created by Exchange) and add them to the ~/.reminders
file. This binding could be:
macro index ",c" "<pipe-message>~/.mutt/parse_remind.pl<enter>"
This script (available here) uses ical2rem.pl (local mirror) to convert from ical format to remind format. I patched this script to add support for the following when converting from ical to remind format:
DURATION
flag of timed reminders.DESCRIPTION
text of reminders.LOCATION
field of reminders.This patch (against ical2rem.pl
version 0.5.2) is available here.
ical2rem.pl
in turn uses the iCal::Parser
perl module. I patched this module to properly support the timezone attribute in an ical file, so that remind and thus wyrd can handle invitations from multiple timezones. This patch (against iCal::Parser v1.16) is available here.
Now, our Outlook-using brethen need be none the wiser.