I use calendar to display birthdays and things that I should remember a few days before they hit the fan. However, calendar doesn't know all of my relative's birthdays out of the box. I use Gramps to track my family's genealogy, so all the birthday data is in the Gramps database. This is how we get that information out in a format that calendar can read:

$ python src/gramps.py -O wtk -a report -p name=calendar_dates,of="${HOME}/.calendar/birthday"
$ grep --color=always -e 'Important Name' -e ^ ~/.calendar/birthday.txt > ~/.calendar/birthday.color

The -e ^ ensures that every line in birthday.txt is copied to birthday.color, and -e 'Important Name' uses ANSI escape sequences to highlight the name of someone particularly close to you.

The CalendarDates plugin is my adaptation of the BirthdayReport plugin distributed with Gramps (CalendarDates.patch). To install my plugin, create ~/.gramps/gramps34/plugins/CalendarDates, drop CalendarDates.gpr.py into the new directory, copy your Gramps installation's version of BirthdayReport.py into the new directory as CalendarDates.py and apply my patch with:

$ patch CalendarDates < CalendarDates.patch