calendar - reminder service




Calendar(1) checks the current directory for a file named calendar and displays lines that begin with either today's date or tomorrow's. On Fridays, events on Friday through Monday are displayed.

Lines should begin with a month and day. They may be entered in almost any format, either numeric or as character strings. A single asterisk (*) matches every month. A day without a month matches that day of every week. A month without a day matches the first of that month. Two numbers default to the month followed by the day. Lines with leading tabs default to the last entered date, allowing multiple line specifications for a single date. By convention, dates followed by an asterisk are not fixed; that is, they change from year to year.

The "calendar" file is preprocessed by cpp(1), allowing the inclusion of shared files such as company holidays or meetings. If the shared file is not referenced by a full path name, cpp(1) searches in the current (or home) directory first, and then in the directory /usr/share/calendar. Empty lines and lines protected by the C commenting syntax (/* ... */) are ignored.

The following are examples of possible calendar entries:

#include <calendar.usholiday>
#include <calendar.birthday>
6/15 ... June 15 (if ambiguous, will default to month/day).
Jun. 15 ... June 15.
15 June ... June 15.
Thursday ... Every Thursday.
June ... Every June 1st.
15 * ... 15th of every month.


The following sample calendar files are provided:
Days of special significance to computer people.
Events from Tolkien's The Lord of the Rings.
Musical events, births, and deaths. Strongly oriented toward rock 'n' roll.


Older versions of the calendar(1) program selected lines which had the correct date anywhere in the line. In this version, however, the date is only recognized when it occurs first on the line.