Pal is a color, command-line calendar similar to gcal with support for displaying events and holidays. It supports many types of recurring events (daily, weekly, monthly, yearly) and has an easy to use interface for adding new events. pal is distributed with calendar files that include significant holidays and events.
Re: Needs option to parse ~/.calendar file
Thanks for the suggestion. I have considered implementing this feature previously and I might work on it in the future. However, a good search and replace with a few regular expressions should be able to convert a ~/.calendar file to pal's file format relatively easily.