]> Zhao Yanbai Git Server - minix.git/commitdiff
Importing usr.bin/calendar 41/1141/1
authorThomas Cort <tcort@minix3.org>
Mon, 11 Nov 2013 15:52:51 +0000 (10:52 -0500)
committerThomas Cort <tcort@minix3.org>
Tue, 12 Nov 2013 11:18:01 +0000 (06:18 -0500)
No Minix-specific changes needed.

Change-Id: I9e68983104efb20ab8e946df3bce189d99ab2deb

18 files changed:
distrib/sets/lists/minix/mi
etc/mtree/NetBSD.dist.base
releasetools/nbsd_ports
usr.bin/Makefile
usr.bin/calendar/Makefile [new file with mode: 0644]
usr.bin/calendar/calendar.1 [new file with mode: 0644]
usr.bin/calendar/calendar.c [new file with mode: 0644]
usr.bin/calendar/calendars/calendar.birthday [new file with mode: 0644]
usr.bin/calendar/calendars/calendar.christian [new file with mode: 0644]
usr.bin/calendar/calendars/calendar.computer [new file with mode: 0644]
usr.bin/calendar/calendars/calendar.history [new file with mode: 0644]
usr.bin/calendar/calendars/calendar.holiday [new file with mode: 0644]
usr.bin/calendar/calendars/calendar.judaic [new file with mode: 0644]
usr.bin/calendar/calendars/calendar.lotr [new file with mode: 0644]
usr.bin/calendar/calendars/calendar.music [new file with mode: 0644]
usr.bin/calendar/calendars/calendar.netbsd [new file with mode: 0644]
usr.bin/calendar/calendars/calendar.usholiday [new file with mode: 0644]
usr.bin/calendar/pathnames.h [new file with mode: 0644]

index 2fcfd9e722bf9a9741fd5155b0ed6fa587499e52..3d8b83316659b8db3d4458fc5d10cbfa5b7062d0 100644 (file)
 ./usr/bin/bzip2recover                 minix-sys
 ./usr/bin/c++                          minix-sys       gcccmds
 ./usr/bin/cal                          minix-sys
+./usr/bin/calendar                     minix-sys
 ./usr/bin/cawf                         minix-sys
 ./usr/bin/cc                           minix-sys
 ./usr/bin/cc1                          minix-sys       gcccmds
 ./usr/man/man1/bzip2recover.1          minix-sys
 ./usr/man/man1/c++.1                   minix-sys       gcccmds
 ./usr/man/man1/cal.1                   minix-sys
+./usr/man/man1/calendar.1              minix-sys
 ./usr/man/man1/case.1                  minix-sys
 ./usr/man/man1/cat.1                   minix-sys
 ./usr/man/man1/cawf.1                  minix-sys
 ./usr/share/atf                                minix-sys       atf
 ./usr/share/atf/atf-run.hooks          minix-sys       atf,!kyua
 ./usr/share/atf/libatf-sh.subr         minix-sys       atf
+./usr/share/calendar                   minix-sys
+./usr/share/calendar/calendar.birthday minix-sys
+./usr/share/calendar/calendar.christian        minix-sys
+./usr/share/calendar/calendar.computer minix-sys
+./usr/share/calendar/calendar.history  minix-sys
+./usr/share/calendar/calendar.holiday  minix-sys
+./usr/share/calendar/calendar.judaic   minix-sys
+./usr/share/calendar/calendar.lotr     minix-sys
+./usr/share/calendar/calendar.music    minix-sys
+./usr/share/calendar/calendar.netbsd   minix-sys
+./usr/share/calendar/calendar.usholiday        minix-sys
 ./usr/share/doc                                minix-sys
 ./usr/share/doc/atf                    minix-sys       atf
 ./usr/share/doc/atf/AUTHORS            minix-sys       atf
index 01b9756cc54665a667f59dd5998ee36bb34af223..5cb3df9852dafdeaa1202a8c19fb872d26bf1e56 100644 (file)
@@ -98,6 +98,7 @@
 ./usr/run
 ./usr/sbin
 ./usr/share
+./usr/share/calendar
 ./usr/share/doc
 ./usr/share/doc/html
 ./usr/share/doc/html/bzip2
index c25c099f238e59fa3e3a7300977138e08d917eb7..16be44cb4ae71597ddede2d4f59e343be698ee99 100644 (file)
 2012/10/17 12:00:00,usr.bin/bzip2
 2012/10/17 12:00:00,usr.bin/bzip2recover
 2013/03/15 12:00:00,usr.bin/cal
+2012/10/17 12:00:00,usr.bin/calendar
 2009/04/11 12:10:02,usr.bin/chpass
 2012/10/17 12:00:00,usr.bin/cksum
 2012/10/17 12:00:00,usr.bin/col
index 41355ddcec112aad56c1de4df1bcbcdf23bf08cc..5f719b50bb8acca88d9a91bf148b18d58e9e3bcf 100644 (file)
@@ -5,8 +5,8 @@
 
 SUBDIR= asa \
        banner basename bdes \
-       bzip2 bzip2recover \
-       cal chpass cksum col colrm \
+       bzip2 bzip2recover cal calendar \
+       chpass cksum col colrm \
        column comm csplit ctags cut \
        dirname du \
        env expand \
diff --git a/usr.bin/calendar/Makefile b/usr.bin/calendar/Makefile
new file mode 100644 (file)
index 0000000..72aa979
--- /dev/null
@@ -0,0 +1,12 @@
+#      $NetBSD: Makefile,v 1.14 2009/04/14 22:15:17 lukem Exp $
+#      @(#)Makefile    8.1 (Berkeley) 6/6/93
+
+.include <bsd.own.mk>
+
+PROG=  calendar
+.if ${MKSHARE} != "no"
+FILESDIR=/usr/share/calendar
+FILES!= echo ${.CURDIR}/calendars/calendar.*
+.endif
+
+.include <bsd.prog.mk>
diff --git a/usr.bin/calendar/calendar.1 b/usr.bin/calendar/calendar.1
new file mode 100644 (file)
index 0000000..6dc1a43
--- /dev/null
@@ -0,0 +1,241 @@
+.\"    $NetBSD: calendar.1,v 1.25 2010/06/08 03:08:47 riz Exp $
+.\"
+.\" Copyright (c) 1989, 1990, 1993
+.\"    The Regents of the University of California.  All rights reserved.
+.\"
+.\" Redistribution and use in source and binary forms, with or without
+.\" modification, are permitted provided that the following conditions
+.\" are met:
+.\" 1. Redistributions of source code must retain the above copyright
+.\"    notice, this list of conditions and the following disclaimer.
+.\" 2. Redistributions in binary form must reproduce the above copyright
+.\"    notice, this list of conditions and the following disclaimer in the
+.\"    documentation and/or other materials provided with the distribution.
+.\" 3. Neither the name of the University nor the names of its contributors
+.\"    may be used to endorse or promote products derived from this software
+.\"    without specific prior written permission.
+.\"
+.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
+.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+.\" ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
+.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+.\" SUCH DAMAGE.
+.\"
+.\"     @(#)calendar.1 8.1 (Berkeley) 6/29/93
+.\"
+.Dd August 27, 2009
+.Dt CALENDAR 1
+.Os
+.Sh NAME
+.Nm calendar
+.Nd reminder service
+.Sh SYNOPSIS
+.Nm
+.Op Fl ax
+.Op Fl d Ar MMDD[[YY]YY]
+.Op Fl f Ar file
+.Op Fl l Ar days
+.Op Fl w Ar days
+.Sh DESCRIPTION
+The
+.Nm
+utility processes text files and displays lines that match certain dates.
+.Pp
+The following options are available:
+.Bl -tag -width Ds
+.It Fl a
+Process the
+.Dq calendar
+files of all users and mail the results to them.
+This requires super-user privileges.
+.It Fl d Ar MMDD[[YY]YY]
+Display lines for the given date.
+By default, the current date is used.
+The year, which may be given in either two or four digit format, is used
+only for purposes of determining whether the given date falls on a Friday
+in that year (see below).
+If the year is not specified, the current year is assumed.
+.It Fl f Ar file
+Display matching calendar files from the given filename.
+By default, the following filenames are checked for:
+.Bl -item -compact -offset indent
+.It
+.Pa ~/calendar
+.It
+.Pa ~/.calendar
+.It
+.Pa /etc/calendar
+.El
+and the first which is found is used.
+The filename may be absolute.
+If not absolute, it is taken relative to the
+directory specified by the
+.Ev CALENDAR_DIR
+environment variable, if set; otherwise, it is taken relative to the
+user's home directory.
+Or, if the
+.Fl a
+flag is given, a non-absolute filename is taken relative to each user's
+home directory in turn.
+.It Fl l Ar days
+Causes the program to
+.Dq look ahead
+a given number of days (default one) from the specified date and
+display their entries as well.
+.It Fl w Ar days
+Causes the program to add the specified number of days to the
+.Dq look ahead
+number if and only if the day specified is a Friday.
+The default value is two, which causes
+.Nm
+to print entries through the weekend on Fridays.
+.It Fl x
+Causes
+.Nm
+not to set the
+.Ev CPP_RESTRICTED
+environment variable.
+Passing this flag allows users the (somewhat obscure) option of
+including a named pipe via
+.Xr cpp 1 Ns No 's
+.Li #include
+syntax, but opens up the possibility of
+.Nm
+hanging indefinitely if users do so incorrectly.
+For this reason, the
+.Fl x
+flag should never be used with
+.Nm
+.Fl a .
+.El
+.Pp
+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
+.Pq Sq *
+matches every month, or every day if a month has been provided.
+This means that two asterisks
+.Pq Sq **
+matches every day of the year, and is thus useful for ToDo tasks.
+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, i.e., change
+from year to year.
+.Pp
+The
+.Dq calendar
+file is preprocessed by
+.Xr cpp 1 ,
+allowing the inclusion of shared files such as company holidays or
+meetings.
+If the shared file is not referenced by a full pathname,
+.Xr cpp 1
+searches in the current (or home) directory first, and then in the
+directory
+.Pa /usr/share/calendar .
+Empty lines and lines protected by the C commenting syntax
+.Pq Li /* ... */
+are ignored.
+.Pp
+Some possible calendar entries:
+.Bd -literal -offset indent
+#include       \*[Lt]calendar.usholiday\*[Gt]
+#include       \*[Lt]calendar.birthday\*[Gt]
+
+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.
+*15            ... 15th of every month.
+June*          ... Every day of June.
+**             ... Every day
+.Ed
+.Sh FILES
+The following default calendar files are provided:
+.Pp
+.Bl -tag -width calendar.christian -compact
+.It Pa calendar.birthday
+Births and deaths of famous (and not-so-famous) people.
+.It Pa calendar.christian
+Christian holidays.
+This calendar should be updated yearly by the local system administrator
+so that roving holidays are set correctly for the current year.
+.It Pa calendar.computer
+Days of special significance to computer people.
+.It Pa calendar.history
+Everything else, mostly U.S. historical events.
+.It Pa calendar.holiday
+Other holidays, including the not-well-known, obscure, and
+.Em really
+obscure.
+.It Pa calendar.judaic
+Jewish holidays.
+This calendar should be updated yearly by the local system administrator
+so that roving holidays are set correctly for the current year.
+.It Pa calendar.lotr
+Important dates in the Lord of the Rings series.
+.It Pa calendar.music
+Musical events, births, and deaths.
+Strongly oriented toward rock 'n' roll.
+.It Pa calendar.netbsd
+Important dates in the history of the
+.Nx
+project.
+Mostly releases and port additions.
+.It Pa calendar.usholiday
+U.S. holidays.
+This calendar should be updated yearly by the local system administrator
+so that roving holidays are set correctly for the current year.
+.El
+.Sh COMPATIBILITY
+The
+.Nm
+program previously selected lines which had the correct date anywhere
+in the line.
+This is no longer true, the date is only recognized when it occurs
+first on the line.
+.Pp
+In
+.Nx 3.0 ,
+the
+.Nm
+command was modified to search the user's home directory instead of the current
+directory by default.
+Users desiring the historical behavior should set the
+.Ev CALENDAR_DIR
+environment variable to
+.Pa \&. ,
+or use the
+.Fl f
+flag.
+.Sh SEE ALSO
+.Xr at 1 ,
+.Xr cpp 1 ,
+.Xr cron 8
+.Sh HISTORY
+A
+.Nm
+command appeared in
+.At v7 .
+.Sh BUGS
+.Nm
+doesn't handle events that move around from year to year, i.e.,
+.Dq the last Monday in April .
+.Pp
+The
+.Fl a
+option ignores the user's
+.Ev CALENDAR_DIR
+environment variable.
diff --git a/usr.bin/calendar/calendar.c b/usr.bin/calendar/calendar.c
new file mode 100644 (file)
index 0000000..279f779
--- /dev/null
@@ -0,0 +1,609 @@
+/*     $NetBSD: calendar.c,v 1.49 2012/04/03 12:03:04 matthias Exp $   */
+
+/*
+ * Copyright (c) 1989, 1993, 1994
+ *     The Regents of the University of California.  All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in the
+ *    documentation and/or other materials provided with the distribution.
+ * 3. Neither the name of the University nor the names of its contributors
+ *    may be used to endorse or promote products derived from this software
+ *    without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
+ * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+ * ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
+ * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+ * SUCH DAMAGE.
+ */
+
+#include <sys/cdefs.h>
+#ifndef lint
+__COPYRIGHT("@(#) Copyright (c) 1989, 1993\
+ The Regents of the University of California.  All rights reserved.");
+#endif /* not lint */
+
+#ifndef lint
+#if 0
+static char sccsid[] = "@(#)calendar.c 8.4 (Berkeley) 1/7/95";
+#endif
+__RCSID("$NetBSD: calendar.c,v 1.49 2012/04/03 12:03:04 matthias Exp $");
+#endif /* not lint */
+
+#include <sys/param.h>
+#include <sys/time.h>
+#include <sys/stat.h>
+#include <sys/uio.h>
+#include <sys/wait.h>
+
+#include <ctype.h>
+#include <err.h>
+#include <errno.h>
+#include <fcntl.h>
+#include <pwd.h>
+#include <stdbool.h>
+#include <stdio.h>
+#include <stdlib.h>
+#include <string.h>
+#include <time.h>
+#include <tzfile.h>
+#include <unistd.h>
+
+#include "pathnames.h"
+
+       /* flags used by calendar file parser */
+#define        F_ISMONTH       0x01
+#define        F_ISDAY         0x02
+#define        F_ISDOW         0x04
+#define        F_WILDMONTH     0x10
+#define        F_WILDDAY       0x20
+
+static unsigned short lookahead = 1;
+static unsigned short weekend = 2;
+static char *fname = NULL;
+static char *datestr = NULL;
+static const char *defaultnames[] = {"calendar", ".calendar", _PATH_SYSTEM_CALENDAR, NULL};
+static struct passwd *pw;
+static char path[MAXPATHLEN + 1];
+static bool doall = false;
+static bool cpp_restricted = false;
+
+/* 1-based month, 0-based days, cumulative */
+static const int daytab[][14] = {
+       { 0, -1, 30, 58, 89, 119, 150, 180, 211, 242, 272, 303, 333, 364 },
+       { 0, -1, 30, 59, 90, 120, 151, 181, 212, 243, 273, 304, 334, 365 },
+};
+static struct tm *tp;
+static const int *cumdays;
+static int offset, yrdays;
+static char dayname[10];
+
+static struct iovec header[] = {
+       { __UNCONST("From: "), 6 },
+       { NULL, 0 },
+       { __UNCONST(" (Reminder Service)\nTo: "), 24 },
+       { NULL, 0 },
+       { __UNCONST("\nSubject: "), 10 },
+       { NULL, 0 },
+       { __UNCONST("'s Calendar\nPrecedence: bulk\n\n"),  30 },
+};
+
+static const char *days[] = {
+       "sun", "mon", "tue", "wed", "thu", "fri", "sat", NULL,
+};
+
+static const char *months[] = {
+       "jan", "feb", "mar", "apr", "may", "jun",
+       "jul", "aug", "sep", "oct", "nov", "dec", NULL,
+};
+
+static void     atodays(int, char *, unsigned short *);
+static void     cal(void);
+static void     closecal(FILE *);
+static int      getday(char *);
+static int      getfield(char *, char **, int *);
+static void     getmmdd(struct tm *, char *);
+static int      getmonth(char *);
+static bool     isnow(char *);
+static FILE    *opencal(FILE **);
+static void     settime(void);
+static void     usage(void) __dead;
+
+int
+main(int argc, char **argv)
+{
+       int ch;
+       const char *caldir;
+
+       (void)setprogname(argv[0]);     /* for portability */
+
+       while ((ch = getopt(argc, argv, "-ad:f:l:w:x")) != -1) {
+               switch (ch) {
+               case '-':               /* backward contemptible */
+               case 'a':
+                       if (getuid()) {
+                               errno = EPERM;
+                               err(EXIT_FAILURE, NULL);
+                       }
+                       doall = true;
+                       break;
+               case 'd':
+                       datestr = optarg;
+                       break;
+               case 'f':
+                       fname = optarg;
+                       break;
+               case 'l':
+                       atodays(ch, optarg, &lookahead);
+                       break;
+               case 'w':
+                       atodays(ch, optarg, &weekend);
+                       break;
+               case 'x':
+                       cpp_restricted = true;
+                       break;
+               case '?':
+               default:
+                       usage();
+               }
+       }
+       argc -= optind;
+       argv += optind;
+
+       if (argc)
+               usage();
+
+       settime();
+       if (doall) {
+               /*
+                * XXX - This ignores the user's CALENDAR_DIR variable.
+                *       Run under user's login shell?
+                */
+               while ((pw = getpwent()) != NULL) {
+                       (void)setegid(pw->pw_gid);
+                       (void)seteuid(pw->pw_uid);
+                       if (chdir(pw->pw_dir) != -1)
+                               cal();
+                       (void)seteuid(0);
+               }
+       } else if ((caldir = getenv("CALENDAR_DIR")) != NULL) {
+               if (chdir(caldir) != -1)
+                       cal();
+       } else if ((pw = getpwuid(geteuid())) != NULL) {
+               if (chdir(pw->pw_dir) != -1)
+                       cal();
+       }
+       return 0;
+}
+
+static void
+cal(void)
+{
+       bool printing;
+       FILE *fp, *in = NULL;
+       char *line;
+
+       if ((fp = opencal(&in)) == NULL || in == NULL)
+               return;
+       printing = false;
+       while ((line = fparseln(in,
+                   NULL, NULL, NULL, FPARSELN_UNESCCOMM)) != NULL) {
+               if (line[0] == '\0')
+                       continue;
+               if (line[0] != '\t')
+                       printing = isnow(line);
+               if (printing)
+                       (void)fprintf(fp, "%s\n", line);
+               free(line);
+
+       }
+       closecal(fp);
+}
+
+static void
+settime(void)
+{
+       time_t now;
+
+       (void)time(&now);
+       tp = localtime(&now);
+       if (datestr)
+               getmmdd(tp, datestr);
+
+       if (isleap(tp->tm_year + TM_YEAR_BASE)) {
+               yrdays = DAYSPERLYEAR;
+               cumdays = daytab[1];
+       } else {
+               yrdays = DAYSPERNYEAR;
+               cumdays = daytab[0];
+       }
+       /* Friday displays Monday's events */
+       offset = tp->tm_wday == 5 ? lookahead + weekend : lookahead;
+       header[5].iov_base = dayname;
+       header[5].iov_len = strftime(dayname, sizeof(dayname), "%A", tp);
+}
+
+/*
+ * Possible date formats include any combination of:
+ *     3-charmonth                     (January, Jan, Jan)
+ *     3-charweekday                   (Friday, Monday, mon.)
+ *     numeric month or day            (1, 2, 04)
+ *
+ * Any character may separate them, or they may not be separated.  Any line,
+ * following a line that is matched, that starts with "whitespace", is shown
+ * along with the matched line.
+ */
+static bool
+isnow(char *endp)
+{
+       int day;
+       int flags;
+       int month;
+       int v1;
+       int v2;
+
+       flags = 0;
+
+       /* didn't recognize anything, skip it */
+       if (!(v1 = getfield(endp, &endp, &flags)))
+               return false;
+
+       if ((flags & (F_ISDAY|F_ISDOW)) || v1 > 12) {
+               /* found a day */
+               day = v1;
+               /* if no recognizable month, assume wildcard ('*') month */
+               if ((month = getfield(endp, &endp, &flags)) == 0) {
+                       flags |= F_ISMONTH | F_WILDMONTH;
+                       month = tp->tm_mon + 1;
+               }
+       } else if (flags & F_ISMONTH) {
+               month = v1;
+               /* if no recognizable day, assume the first */
+               if ((day = getfield(endp, &endp, &flags)) == 0)
+                       day = 1;
+       } else {
+               v2 = getfield(endp, &endp, &flags);
+               if (flags & F_ISMONTH) {
+                       day = v1;
+                       month = v2;
+               } else {
+                       /* F_ISDAY set, v2 > 12, or no way to tell */
+                       month = v1;
+                       /* if no recognizable day, assume the first */
+                       day = v2 ? v2 : 1;
+               }
+       }
+       /* if month is out of range, treat it as '*' */
+       if (month < 1 || month > 12) {
+               flags |= F_ISMONTH | F_WILDMONTH;
+               month = tp->tm_mon + 1;
+       }
+
+       if (flags & F_WILDMONTH && flags & F_WILDDAY)
+               return true;
+
+       if (flags & F_WILDMONTH && flags & F_ISDAY && day == tp->tm_mday)
+               return true;
+
+       if (flags & F_WILDMONTH && flags & F_ISDOW && day == tp->tm_wday + 1)
+               return true;
+
+       if (flags & F_ISMONTH && flags & F_WILDDAY && month == tp->tm_mon + 1)
+               return true;
+
+       if (flags & F_ISMONTH && flags & F_ISDOW && month == tp->tm_mon + 1 &&
+           day == tp->tm_wday + 1)
+               return true;
+
+       if (flags & F_ISDOW)
+               day = tp->tm_mday + (((day - 1) - tp->tm_wday + 7) % 7);
+       day = cumdays[month] + day;
+
+       /* if today or today + offset days */
+       if (day >= tp->tm_yday && day <= tp->tm_yday + offset)
+               return true;
+
+       /* if number of days left in this year + days to event in next year */
+       if (yrdays - tp->tm_yday + day <= offset)
+               return true;
+
+       return false;
+}
+
+static int
+getfield(char *p, char **endp, int *flags)
+{
+       int val;
+       char *start;
+       char savech;
+
+/*
+ * note this macro has an arg that isn't used ... it is retained
+ * (it is believed) to make the macro call look more "natural"
+ * and suggest at the call site what is happening.
+ */
+#define FLDCHAR(a) (*p != '\0' && !isdigit((unsigned char)*p) && \
+    !isalpha((unsigned char)*p) && *p != '*')
+
+       val = 0;
+       for (/*EMPTY*/; FLDCHAR(*p); ++p)
+               continue;
+       if (*p == '*') {                        /* `*' is current month */
+               if (!(*flags & F_ISMONTH)) {
+                       *flags |= F_ISMONTH | F_WILDMONTH;
+                       *endp = p + 1;
+                       return tp->tm_mon + 1;
+               } else {
+                       *flags |= F_ISDAY | F_WILDDAY;
+                       *endp = p + 1;
+                       return 1;
+               }
+       }
+       if (isdigit((unsigned char)*p)) {
+               val = (int)strtol(p, &p, 10);   /* if 0, it's failure */
+               for (/*EMPTY*/; FLDCHAR(*p); ++p)
+                       continue;
+               *endp = p;
+               return val;
+       }
+       for (start = p; *p != '\0' && isalpha((unsigned char)*p); p++)
+               continue;
+
+       savech = *p;
+       if (p != start) {
+               *p = '\0';
+               if ((val = getmonth(start)) != 0)
+                       *flags |= F_ISMONTH;
+               else if ((val = getday(start)) != 0)
+                       *flags |= F_ISDOW;
+               else {
+                       *p = savech;
+                       *endp = start;
+                       return 0;
+               }
+       }
+       for (*p = savech; FLDCHAR(*p); ++p)
+               continue;
+       *endp = p;
+       return val;
+}
+
+static FILE *
+opencal(FILE **in)
+{
+       int fd;
+       int pdes[2];
+       const char **name;
+
+       /* open up calendar file as stdin */
+       if (fname == NULL) {
+               for (name = defaultnames; *name != NULL; name++) {
+                       if ((fd = open(*name, O_RDONLY)) < 0)
+                               continue;
+                       else
+                               break;
+               }
+               if (*name == NULL) {
+                       if (doall)
+                               return NULL;
+                       err(EXIT_FAILURE, "Cannot open calendar file");
+               }
+       } else if ((fd = open(fname, O_RDONLY)) < 0) {
+               if (doall)
+                       return NULL;
+               err(EXIT_FAILURE, "Cannot open `%s'", fname);
+       }
+
+       if (pipe(pdes) == -1) {
+               warn("Cannot open pipe");
+               return NULL;
+       }
+
+       switch (fork()) {
+       case -1:
+               /* error */
+               (void)close(pdes[0]);
+               (void)close(pdes[1]);
+               return NULL;
+       case 0:
+               /* child */
+               /* set stdin to calendar file */
+               if (fd != STDIN_FILENO) {
+                       (void)dup2(fd, STDIN_FILENO);
+                       (void)close(fd);
+               }
+               /* set stdout to pipe input */
+               if (pdes[1] != STDOUT_FILENO) {
+                       (void)dup2(pdes[1], STDOUT_FILENO);
+                       (void)close(pdes[1]);
+               }
+               (void)close(pdes[0]);
+               /* tell CPP to only open regular files */
+               if(!cpp_restricted && setenv("CPP_RESTRICTED", "", 1) == -1)
+                       err(EXIT_FAILURE, "Cannot restrict cpp");
+               cpp_restricted = true;
+
+               (void)execl(_PATH_CPP, "cpp", "-traditional", "-P", "-I.",
+                   "-I" _PATH_CALENDARS, NULL);
+               err(EXIT_FAILURE, "Cannot exec `%s'", _PATH_CPP);
+               /*NOTREACHED*/
+       default:
+               /* parent -- fdopen *in to pipe output */
+               *in = fdopen(pdes[0], "r");
+               (void)close(pdes[1]);
+
+               /* close calendar file */
+               close(fd);
+
+               /* not reading all calendar files, just set output to stdout */
+               if (!doall)
+                       return stdout;
+
+               /*
+                * Set output to a temporary file, so if no output
+                * don't send mail.
+                */
+               (void)snprintf(path, sizeof(path), "%s/_calXXXXXX", _PATH_TMP);
+               if ((fd = mkstemp(path)) == -1) {
+                       warn("Cannot create temporary file");
+                       return NULL;
+               }
+               return fdopen(fd, "w+");
+       }
+       /*NOTREACHED*/
+}
+
+static void
+closecal(FILE *fp)
+{
+       struct stat sbuf;
+       ssize_t nread;
+       int pdes[2];
+       int status;
+       char buf[1024];
+
+       if (!doall)
+               return;
+
+       (void)rewind(fp);
+       if (fstat(fileno(fp), &sbuf) == -1 || sbuf.st_size == 0)
+               goto done;
+       if (pipe(pdes) == -1)
+               goto done;
+
+       switch (fork()) {
+       case -1:
+               /* error */
+               (void)close(pdes[0]);
+               (void)close(pdes[1]);
+               break;
+       case 0:
+               /* child -- set stdin to pipe output */
+               if (pdes[0] != STDIN_FILENO) {
+                       (void)dup2(pdes[0], STDIN_FILENO);
+                       (void)close(pdes[0]);
+               }
+               (void)close(pdes[1]);
+               (void)execl(_PATH_SENDMAIL, "sendmail", "-i", "-t", "-F",
+                   "\"Reminder Service\"", "-f", "root", NULL);
+               err(EXIT_FAILURE, "Cannot exec `%s'", _PATH_SENDMAIL);
+               /*NOTREACHED*/
+       default:
+               /* parent -- write to pipe input */
+               (void)close(pdes[0]);
+
+               header[1].iov_base = header[3].iov_base = (void *)pw->pw_name;
+               header[1].iov_len = header[3].iov_len = strlen(pw->pw_name);
+               (void)writev(pdes[1], header, 7);
+               while ((nread = read(fileno(fp), buf, sizeof(buf))) > 0)
+                       (void)write(pdes[1], buf, (size_t)nread);
+               (void)close(pdes[1]);
+               break;
+       }
+
+done:  (void)fclose(fp);
+       (void)unlink(path);
+       while (wait(&status) != -1)
+               continue;
+}
+
+static int
+getmonth(char *s)
+{
+       const char **p;
+
+       for (p = months; *p; ++p)
+               if (strncasecmp(s, *p, 3) == 0)
+                       return (int)(p - months) + 1;
+       return 0;
+}
+
+static int
+getday(char *s)
+{
+       const char **p;
+
+       for (p = days; *p; ++p)
+               if (strncasecmp(s, *p, 3) == 0)
+                       return (int)(p - days) + 1;
+       return 0;
+}
+
+static void
+atodays(int ch, char *arg, unsigned short *rvp)
+{
+       int u;
+
+       u = atoi(arg);
+       if (u < 0 || u > 366)
+               warnx("-%c %d out of range 0-366, ignored.", ch, u);
+       else
+               *rvp = u;
+}
+
+#define todigit(x) ((x) - '0')
+#define ATOI2(x) (todigit((x)[0]) * 10 + todigit((x)[1]))
+#define ISDIG2(x) (isdigit((unsigned char)(x)[0]) && isdigit((unsigned char)(x)[1]))
+
+static void
+getmmdd(struct tm *ptm, char *ds)
+{
+       bool ok = false;
+       struct tm ttm;
+
+       ttm = *ptm;
+       ttm.tm_isdst = -1;
+
+       if (ISDIG2(ds)) {
+               ttm.tm_mon = ATOI2(ds) - 1;
+               ds += 2;
+       }
+       if (ISDIG2(ds)) {
+               ttm.tm_mday = ATOI2(ds);
+               ds += 2;
+               ok = true;
+       }
+       if (ok) {
+               if (ISDIG2(ds) && ISDIG2(ds + 2)) {
+                       ttm.tm_year = ATOI2(ds) * 100 - TM_YEAR_BASE;
+                       ds += 2;
+                       ttm.tm_year += ATOI2(ds);
+               } else if (ISDIG2(ds)) {
+                       ttm.tm_year = ATOI2(ds);
+                       if (ttm.tm_year < 69)
+                               ttm.tm_year += 2000 - TM_YEAR_BASE;
+                       else
+                               ttm.tm_year += 1900 - TM_YEAR_BASE;
+               }
+       }
+       if (ok && mktime(&ttm) == -1)
+               ok = false;
+
+       if (ok)
+               *ptm = ttm;
+       else {
+               warnx("Can't convert `%s' to date, ignored.", ds);
+               usage();
+       }
+}
+
+__dead
+static void
+usage(void)
+{
+       (void)fprintf(stderr, "usage: %s [-ax] [-d MMDD[[YY]YY]"
+           " [-f fname] [-l days] [-w days]\n", getprogname());
+       exit(1);
+}
diff --git a/usr.bin/calendar/calendars/calendar.birthday b/usr.bin/calendar/calendars/calendar.birthday
new file mode 100644 (file)
index 0000000..d0bb213
--- /dev/null
@@ -0,0 +1,265 @@
+01/01  J.D. Salinger born, 1919
+01/01  Paul Revere born in Boston, 1735
+01/01  Heinz Zemanek born in Vienna, Austria, 1920
+01/02  Isaac Asimov born in Petrovichi, Russian SFSR (now Russia), 1920
+01/04  George Washington Carver born in Missouri, 1864
+01/04  Jakob Grimm born, 1785
+01/04  Wilhelm Beer born, 1797, first astronomer to map Mars
+01/05  DeWitt B. Brace born, 1859, inventor of spectrophotometer
+01/08  Stephen Hawking born in Oxford, England, 1942
+01/10  Ethan Allen born, 1738
+01/11  Alexander Hamilton born in Nevis, British West Indies, 1757?
+01/12  "Long" John Baldry born in London, 1941
+01/13  Horatio Alger born, 1834
+01/13  Sophie Tucker born, 1884
+01/13  Wilhelm Wien born, 1864, Nobel prize for blackbody radiation laws
+01/14  Albert Schweitzer born, 1875
+01/15  Martin Luther King, Jr. born, 1929
+01/17  Benjamin Franklin born in Boston, 1706
+01/19  Edgar Allan Poe born in Boston, 1809
+01/19  Robert Edward Lee born in Stratford Estate, Virginia, 1807
+01/20  Buzz Aldrin born, 1930
+01/20  George Burns born, 1898
+01/21  Vladimir Lenin died, 1924
+01/21  Thomas Jonathan "Stonewall" Jackson born in Clarksburg, VA, 1824
+01/22  Sir Francis Bacon born, 1561
+01/23  Ernst Abbe born, 1840, formulated diffraction theory
+01/23  Humphrey Bogart born in New York City, 1899
+01/23  John Hancock born, 1737
+01/23  Joseph Hewes born, 1730
+01/24  John Belushi born in Chicago, 1949
+01/25  Robert Burns born, 1759
+01/25  Virginia Woolf born, 1882
+01/25  W. Somerset Maugham born, 1874
+01/27  Samuel Gompers born, 1850
+01/30  Franklin Delano Roosevelt born in Hyde Park, New York, 1882
+01/31  Jackie Robinson born, 1919
+02/03  Gertrude Stein born, 1874
+02/05  Alex Harvey (SAHB) born in Glasgow, Scotland, 1935
+02/06  King George VI of UK dies;  his daughter becomes Elizabeth II, 1952
+02/07  Sinclair Lewis born, 1885
+02/08  Friedleib F. Runge born, 1795, father of paper chromatography
+02/08  Jules Verne born in Nantes, France, 1828
+02/09  George Hartmann born, 1489, designed astrolabes, timepieces, etc.
+02/10  Charles Lamb born, 1775
+02/10  William Allen White born, 1868
+02/11  Thomas Edison born, 1847
+02/11  William Henry Fox Talbot born, 1800, photographic pioneer
+02/12  Abraham Lincoln born, 1809
+02/12  Charles Darwin born in Shrewsbury, England, 1809
+02/15  Galileo Galilei born in Pisa, Italy, 1564
+02/15  Susan B. Anthony born, 1820
+02/16  Pierre Bouguer born, 1698, founder of photometry
+02/17  Frederick Eugene Ives born, 1856, pioneer of halftone
+02/17  Marion Anderson born, 1902
+02/17  T. J. Watson, Sr. born, 1874
+02/18  Ernst Mach born, 1838, philosopher & optics pioneer
+02/19  Nicolas Copernicus born in Thorn, Poland, 1473
+02/20  Ludwig Boltzmann born, 1838, atomic physics pioneer
+02/21  Alexis De Rochon born, 1838, developed the spyglass
+02/22  George Washington born, 1732
+02/22  Pierre Jules Cesar Janssen born, 1838, found hydrogen in the sun
+02/23  W.E.B. DuBois born, 1868
+02/24  Winslow Homer born, 1836
+02/25  George Harrison born in Liverpool, England, 1943
+02/25  Renoir born, 1841
+02/26  Dominique Francois Jean Arago born, 1786;
+               observed "Poisson's spot" cf June 21
+02/28  Michel de Mantaigne born, 1533
+02/29  Herman Hollerith born, 1860
+03/01  David Niven born, 1910
+03/02  Dr. Seuss born, 1904
+03/04  Casimir Pulaski born, 1747
+03/05  John Belushi dies in Los Angeles, 1982
+03/07  Sir John Frederick William Herschel born, 1792, astronomer
+03/08  Alvan Clark born, 1804, astronomer & lens manufacturer
+03/08  Howard Aiken born, 1900
+03/11  Robert Treat Paine born, 1737
+03/11  Vannevar Bush born, 1890
+03/12  Gustav Robert Kirchhoff born, 1824, physicist
+03/14  Albert Einstein born, 1879
+03/14  Casey Jones born, 1864
+03/14  Giovanni Virginia Schiaparelli born, 1835, astronomer;
+               named Mars "canals"
+03/14  Jean Baptiste Joseph Fourier born, 1768, mathematician & physicist
+03/15  Julius Caesar assassinated by Brutus; Ides of March, 44 BC
+03/15  J.J. Robert's Birthday in Liberia
+03/16  George Clymer born, 1739
+03/16  James Madison born, 1751
+03/23  Thomas Kelly, Father of the Lunar module, died, 2002
+03/24  Harry Houdini born, 1874
+03/26  Benjamin Thompson born, 1753, Count Rumford; physicist
+03/26  David Packard died, 1996; age of 83
+03/27  Wilhelm Conrad Roentgen born, 1845, discoverer of X-rays
+03/28  Pierre Simon de Laplace born, 1749, mathematician & astronomer
+03/30  Francisco Jose de Goya born, 1746
+03/30  Sean O'Casey born, 1880
+03/30  Vincent Van Gogh born, 1853
+03/30  Queen Elizabeth, the Queen Mother, died at the age of 101, 2002
+03/31  Rene Descartes born, 1596, mathematician & philosopher
+04/03  Washington Irving born, 1783
+04/05  Thomas Hobbes born, 1588, philosopher
+04/08  Buddha born, 563 BC
+04/08  David Rittenhouse born, 1732, astronomer & mathematician
+04/09  Edward Muybridge born, 1830, motion-picture pioneer
+04/09  J. Presper Eckert born, 1919
+04/10  Commodore Matthew Calbraith Perry born, 1854
+04/10  William Booth born, 1829, founder of the Salvation Army
+04/13  Thomas Jefferson born, 1743
+04/14  Christian Huygen born, 1629, physicist & astronomer;
+               discovered Saturn's rings
+04/15  Leonardo da Vinci born, 1452
+04/16  Charles (Charlie) Chaplin (Sir) born in London, 1889
+04/22  Immanuel Kant born, 1724
+04/27  Louis Victor de Broglie born, 1774, physicist
+04/28  James Monroe born, 1758
+04/29  Jules Henri Poincare born, 1854, founder of topology
+04/29  William Randolph Hearst born in San Francisco, 1863
+04/30  Carl Friedrich Gauss born, 1777, mathematician & astronomer
+05/01  Little Walter (Marion Walter Jacobs) born in Alexandria,
+               Louisiana, 1930
+05/02  Dr. Benjamin Spock born, 1903
+05/09  Pinza died, 1957
+05/10  Fred Astaire (Frederick Austerlitz) born in Omaha, Nebraska, 1899
+05/11  Johnny Appleseed born, 1768
+05/12  Florence Nightingale born in Florence, Italy, 1820
+05/13  Arthur S. Sullivan born, 1842
+05/15  Mike Oldfield born in Essex, England, 1953
+05/19  Ho Chi Minh born, 1890
+05/21  Plato (Aristocles) born in Athens(?), 427 BC
+05/27  Hubert H. Humphrey born, 1911
+05/28  Dionne quintuplets born, 1934
+05/29  Gilbert Keith Chesterton born, 1874
+05/29  John Fitzgerald Kennedy born, 1917
+05/29  Patrick Henry born, 1736
+05/30  Mel (Melvin Jerome) Blanc born in San Francisco, 1908
+06/01  Brigham Young born, 1801
+06/01  Marilyn Monroe born, 1928
+06/03  Henry James born, 1811
+06/07  (Eugene Henri) Paul Gaugin born, 1848
+06/07  George Bryan "Beau" Brummel born, 1778
+06/07  Alan Mathison Turing died, 1954
+06/08  Frank Lloyd Wright born in Richland Center, Wisconsin, 1869
+06/13  Alexander the Great dies (323 BC)
+06/15  Edward (Edvard Hagerup) Grieg born in Bergen, Norway, 1843
+06/16  Hammurabi the Great dies, Babylon, 1686 BC
+06/18  M.C. Escher born, 1898
+06/22  Carl Hubbell born, 1903
+06/22  Meryl Streep born in Summit, New Jersey, 1949
+06/22  Konrad Zuse born in Berlin, Germany, 1910
+06/23  Alan Mathison Turing born, 1912
+06/25  Eric Arthur Blair (a.k.a. George Orwell) born, 1903
+06/27  Helen Keller born, 1880
+07/03  Franz Kafka born, 1883
+07/04  Nathaniel Hawthorne born in Salem, Massachusetts, 1804
+07/04  John Adams and Thomas Jefferson die on same day, 1826
+07/06  (Helen) Beatrix Potter born, 1866
+07/06  John Paul Jones born, 1747
+07/07  P.T. Barnum dies, 1891
+07/08  Count Ferdinand von Zeppelin born, 1838
+07/10  John Calvin born, 1509
+07/11  John Quincy Adams born, 1767
+07/12  Henry David Thoreau born, 1817
+07/15  Clement Clarke Moore born, 1779, author of "A Visit from
+               Saint Nicholas"
+07/18  Brian Auger born in London, 1939
+07/25  Steve Goodman born in Chicago, 1948
+07/29  Benito Mussolini born, 1883
+07/30  Emily Bronte born, 1818
+07/30  Henry Ford born, 1863
+08/01  Herman Melville born, 1819
+08/03  Lenny Bruce dies of a morphine overdose, 1966
+08/08  Dustin Hoffman born in Los Angeles, 1937
+08/12  Thomas Mann's Death, 1955
+08/13  Annie Oakley born, 1860
+08/13  Fidel Castro born, 1927
+08/17  Mae West born, 1892
+08/18  Meriwether Lewis born, 1774, American explorer
+08/20  Leon Trotsky assassinated, 1940
+08/23  Gene Kelly born, 1912
+08/27  Lyndon B. Johnson born, 1908
+08/29  Oliver Wendell Holmes born, 1809, physician & father of the jurist
+08/30  John W. Mauchly born, 1907
+09/05  King Louis XIV of France born, 1638
+09/05  Raquel Welch born, 1942
+09/06  Word is received that Perry has reached the North Pole and died, 1909
+09/07  James Fenimore Cooper born in Burlington, NJ, 1789
+09/07  Queen Elizabeth I of England born, 1533
+09/08  King Richard I of England born, 1157
+09/08  Peter Sellers born in Southsea, England, 1925
+09/09  Chinese Communist Party Chairman Mao Tse-Tung dies at age 82, 1976
+09/09  Dennis Ritchie born in Bronxville, New York, 1941
+09/12  Jesse Owens born, 1913
+09/13  Walter Reed born, 1851
+09/15  Agatha Christie born in Torquay, England, 1890
+09/16  Allen Funt born in Brooklyn, NY, 1914
+09/18  Greta Garbo born, 1905
+09/20  Upton (Beall) Sinclair born, 1878
+09/21  H.G. (Herbert George) Wells born in Bromley, England, 1866
+09/21  Louis Joliet born, 1645
+09/22  President Garfield dies of wounds in Baltimore, 1881
+09/23  Augustus (Gaius Octavius) Caesar born in Rome, 63 BC
+09/23  Euripides born in Salamis, Greece, 480 BC
+09/24  F. Scott Fitzgerald born, 1896
+09/26  Johnny Appleseed born, 1774
+09/26  T.S. (Thomas Stearns) Eliot born in St. Louis, 1888
+09/27  Thomas Nast born, 1840
+09/28  Michelangelo Buonarroti born in Caprese, Italy, 1573
+09/28  Pompey (Gnaeus Pompeius Magnus) born in Rome, 106 BC
+09/28  Seymour Cray born, 1925
+09/29  Gene Autry born, 1907
+10/01  Jimmy Carter born, 1924
+10/02  Aristotle dies of indigestion, 322 BC
+10/02  Mohandas K. Gandhi born at Porbandar, Kathiawad, India, 1869
+10/04  John V. Atanasoff born, 1903
+10/05  Pablo Picasso born in Malaga, Spain, 1881
+10/05  Ray Kroc (founder of McDonald's) born, 1902
+10/08  Dennis Ritchie died in Murray Hill, New Jersey, 2011
+10/13  Lenny Bruce born in New York City, 1925
+10/13  Virgil (Publius Vergilius Maro) born near Mantua, Italy, 70 BC
+10/14  Dwight David Eisenhower born, 1890
+10/14  William Penn born in London, 1644
+10/15  Pelham Grenville Wodehouse born, 1881
+10/16  Noah Webster born, 1758
+10/16  Oscar (Fingal O'Flahertie Wills) Wilde born in Dublin, 1854
+10/16  Dr. Jonathan B. Postel dies at age 55, 1998
+10/17  Richard Mentor Johnson born, 1780, 9th V.P. of U.S.
+10/21  Alfred Nobel born in Stockholm, 1833
+10/27  Gerald M. Weinberg born, 1933
+10/27  James Cook born, 1728
+10/31  Chiang Kai-Shek born, 1887
+10/31  Dale Evans born, 1912 
+11/02  Daniel Boone born near Reading, PA, 1734
+11/04  King William III of Orange born, 1650
+11/05  Roy Rogers born, 1912
+11/09  Carl Sagan born, 1934
+11/10  Martin Luther born in Eisleben, Germany, 1483
+11/10  Soviet President Leonid Brezhnev dies at age 75, 1982
+11/11  Kurt Vonnegut, Jr, born in Indianapolis, 1922
+11/13  Robert Louis Stevenson born, 1850
+11/13  St. Augustine of Hippo born in Numidia, Algeria, 354
+11/18  Imogene Coca born, 1908
+11/18  William S. Gilbert born, 1836
+11/20  Robert Francis Kennedy (RFK) born in Boston, Massachusetts, 1925
+11/26  Charles Schulz born in Minneapolis, 1922
+11/26  Norbert Wiener born in Columbia, Missouri, 1894
+11/29  John Mayall born in Cheshire, England, 1933
+11/30  Cleopatra died, 30 BC
+11/30  Mark Twain (Samuel Clemens) born in Florida, Missouri, 1835
+12/01  Woody Allen (Allen Stuart Konigsberg) born in Brooklyn, NY, 1935
+12/04  Tommy Bolin dies of a heroin overdose in Miami, 1976
+12/05  Walt (Walter Elias) Disney born in Chicago, 1901
+12/08  Horace (Quintus Horatius Flaccus) born in Venosa (Italy), 65 BC
+12/08  James (Grover) Thurber born in Columbus, Ohio, 1894
+12/10  Emily Dickenson born, 1830
+12/12  E.G. Robinson born, 1893
+12/14  George Washington dies, 1799
+12/17  William Safire (Safir) born, 1929
+12/18  Konrad Zuse died, 1995
+12/20  Carl Sagan died, 1996
+12/21  Benjamin Disraeli born, 1804
+12/22  Giacomo Puccini born, 1858
+12/23  Joseph Smith born, 1805
+12/25  Isaac Newton (Sir) born in Grantham, England, 1642
+12/26  Chas. Babbage born, 1791
+12/28  John von Neumann born, 1903
diff --git a/usr.bin/calendar/calendars/calendar.christian b/usr.bin/calendar/calendars/calendar.christian
new file mode 100644 (file)
index 0000000..1f178dd
--- /dev/null
@@ -0,0 +1,17 @@
+01/18* Epiphany
+02/12* Shrove Tuesday / Mardi Gras (day before Ash Wednesday)
+02/13* Ash Wednesday (First day of Lent)
+03/24* Palm Sunday (7 days before Easter)
+03/28* Maundy Thursday (3 days before Easter)
+03/29* Good Friday (2 days before Easter)
+03/31* Easter Sunday
+05/05* Rogation Sunday
+05/09* Ascension Day (10 days before Pentecost)
+05/19* Pentecost (Whitsunday)
+05/20* Whitmonday
+05/26* Trinity Sunday (7 days after Pentecost)
+05/30* Corpus Christi (11 days after Pentecost)
+10/18  Feast Day of St. Luke
+12/01* First Sunday of Advent (4th Sunday before Christmas)
+12/06  St. Nicholas' Day
+12/25  Feast of the Nativity (Christmas)
diff --git a/usr.bin/calendar/calendars/calendar.computer b/usr.bin/calendar/calendars/calendar.computer
new file mode 100644 (file)
index 0000000..30cb7c4
--- /dev/null
@@ -0,0 +1,68 @@
+01/01  The Epoch (Time 0 for UNIX systems, Midnight GMT, 1970)
+01/01  ARPANET converts from NCP to TCP/IP - the Internet is born, 1983
+01/01  AT&T officially divests its local Bell companies, 1984
+01/03  Apple Computer incorporated, 1977
+01/08  American Telephone and Telegraph loses antitrust case, 1982
+01/08  Herman Hollerith patents first data processing computer, 1889
+01/08  Justice Dept. drops IBM suit, 1982
+01/10  First CDC 1604 delivered to Navy, 1960
+01/16  Set uid bit patent issued, to Dennis Ritchie, 1979
+01/17  Justice Dept. begins IBM anti-trust suit, 1969 (drops it, 01/08/1982)
+01/22  Apple airs "1984" commercial during Superbowl XVIII, 1984
+01/24  Data General Nova introduced, 1969
+01/24  First Apple Macintosh released, 1984
+01/25  First U.S. meeting of ALGOL definition committee, 1958
+01/26  EDVAC demonstrated, 1952
+01/31  Hewlett-Packard founded, 1939
+02/11  Last day of JOSS service at RAND Corp., 1966
+02/14  First micro-on-a-chip patented (TI), 1978
+02/15  ENIAC demonstrated, 1946
+03/01  First NPL (later PL/I) report published, 1964
+03/04  First Cray-1 shipped to Los Alamos, 1976
+03/09  "GOTO considered harmful" (E.J. Dijkstra) published in CACM, 1968
+03/14  LISP introduced, 1960
+03/21  NetBSD project born, 1993
+03/28  DEC announces PDP-11, 1970
+03/31  Eckert-Mauchly Computer Corp. founded, Phila, 1946
+04/01  Yourdon, Inc. founded, 1974  (It figures.)
+04/01  Apple Computer founded, 1976
+04/03  IBM 701 introduced, 1953
+04/04  Tandy Corp. acquires Radio Shack, 1963 (9 stores)
+04/07  IBM announces System/360, 1964
+04/09  ENIAC Project begun, 1943
+04/20  Apple announces the Apple ][ at the 1st West Coast Computer Faire, 1977
+04/28  Zilog Z-80 introduced, 1974
+05/06  EDSAC demonstrated, 1949
+05/01  First BASIC program run at Dartmouth, 1964
+05/16  First report on SNOBOL distributed (within BTL), 1963
+05/21  DEC announces PDP-8, 1965
+05/22  Ethernet first described, 1973
+05/27  First joint meeting of U.S. and European ALGOL definition cte., 1958
+05/28  First meeting of COBOL definition cte. (eventually CODASYL), 1959
+05/30  Colossus Mark II, 1944
+06/02  First issue of Computerworld, 1967
+06/10  First Apple II shipped, 1977
+06/15  UNIVAC I delivered to the Census Bureau, 1951
+06/16  First programming error at Census Bureau, 1951 (apocryphal)
+06/19  FreeBSD project born, 1993
+06/23  IBM unbundles software, 1969
+06/30  First advanced degree on computer related topic: to H. Karamanian,
+       Temple Univ., Phila, 1948, for symbolic differentiation on the ENIAC
+07/08  Bell Telephone Co. formed (predecessor of AT&T), 1877
+07/08  CDC incorporated, 1957
+08/14  First Unix-based mallet created, 1954
+08/14  IBM PC announced, 1981
+08/22  CDC 6600 introduced, 1963
+08/23  DEC founded, 1957
+09/15  ACM founded, 1947
+09/20  Harlan Herrick runs first FORTRAN program, 1954
+10/02  First robotics-based CAM, 1939
+10/06  First GPSS manual published, 1961
+10/08  First VisiCalc prototype, 1978
+10/12  Univac gives contract for SIMULA compiler to Nygaard and Dahl, 1962
+10/14  British Computer Society founded, 1957
+10/15  First FORTRAN Programmer's Reference Manual published
+10/20  Zurich ALGOL report published, 1958
+10/25  DEC announces VAX-11/780, 1978
+11/04  UNIVAC I program predicts Eisenhower victory based on 7% of votes, 1952
+12/08  First Ph.D. awarded by Computer Science Dept, Univ. of Penna, 1965
diff --git a/usr.bin/calendar/calendars/calendar.history b/usr.bin/calendar/calendars/calendar.history
new file mode 100644 (file)
index 0000000..722085f
--- /dev/null
@@ -0,0 +1,518 @@
+01/01  Julian Calendar takes effect, 45 BC
+01/01  Haitian Independence Proclaimed, 1803
+01/01  Emancipation Proclamation enters effect, 1863
+01/01  United Nations created, 1942
+01/02  Reconquest of Spain completed, 1492
+01/02  Russian Fleet surrenders to Japan at Port Arthur, 1905
+01/03  Martin Luther excommunicated, 1521
+01/03  Emperor Meiji Restored to throne in Japan, 1868
+01/04  Single European Currency debuts, 1999
+01/04  New York Stock Exchange opens first permanent headquarters, 1865
+01/04  Burma becomes independent, 1948
+01/05  Prague Spring begins, 1968
+01/05  -50 degrees F, Strawberry UT, 1913
+01/05  The FCC hears the first demonstration of FM radio, 1940
+01/06  Harold Godwinson crowned King Harold II of England, 1066
+01/06  Electric Telegraph first tested by Samuel Morse, 1838
+01/07  Pol Pot overthrown, 1979
+01/07  Calais, last continental holding of England, falls to France, 1558
+01/08   Major General Andrew Jackson leads US troops to victory at
+       Battle of New Orleans, 1815
+01/09  Cruise ship RMS Queen Elizabeth destroyed by fire, 1972
+01/10  First meeting of United Nations General Assembly in London, 1946
+01/10  Thomas Paine's Common Sense published, 1776
+01/10  League of Nations instituted, 1920
+01/10  Lend-Lease Act introduced, 1941
+01/11  Milk delivered in bottles for first time, 1878
+01/11  Amelia Earhart flies from Hawaii to California, 1935
+01/12  Zulu War begins, 1879
+01/12  Siege of Leningrad ends, 1943
+01/12  Santa Clara, California founded, 1777
+01/13   First live radio concert broadcast, by Enrico Caruso,
+       broadcast from New York, 1910
+01/14  United Nations condemns Soviet invasion of Afghanistan, 1980
+01/14   Treaty of Paris ratified by Continental Congress, officially
+       establishing independent United States, 1784
+01/15  Elizabeth I crowned Queen of England, 1559
+01/16  Prohibition takes effect, 1919
+01/16  Reza Shah Pallavi flees Iran, 1979
+01/16  First Persian Gulf War begins, 1991
+01/16  Chevy Corvette introduced, 1953
+01/17  Over $2 million stolen in "Great Brinks Robbery" in Boston, 1950
+01/18  James Cook discovers Hawaii, 1778
+01/18  Robert Falcon Scott reaches South Pole, 1912
+01/18  First Australian penal colony established, 1788
+01/19  Indira Ghandi becomes Prime Minister of India, 1966
+01/19  First college basketball game played, Chicago beats Iowa 15-12, 1896
+01/20  Hong Kong ceded to Britain, 1841
+01/20  US Hostages released from Iran, 1981
+01/21  First commercial flight of Concorde SST, 1976
+01/21  King Louis XVI executed, 1793
+01/22  First British colonists arrive in New Zealand, 1840
+01/22  First Russian Revolution begins, 1905
+01/22  Battle of Tobruk concludes, 1941
+01/23  USS Pueblo seized by North Korea, 1968
+01/23  First insulin injection for diabetes, 1922
+01/23  Peace treaty ending Vietnam war announced, 1973
+01/24  Eskimo Pie patented by Christian Nelson, 1922
+01/24  Joseph Marshall finds Gold at Sutter's Mill in California, 1848
+01/24  Last IJA soldier captured in Guam, 1972
+01/24  The Pleasure Garden, first Alfred Hitchcock film opens in London, 1927 
+01/25  First Winter Olympics held in Charmonix, 1924
+01/25   Reporter Nellie Bly arrives in New York, completing
+       circumnavigation of the globe in 72 days, 6 hours, 11
+       minutes, 1890
+01/26  Republic of India founded, 1950
+01/26  Barcelona falls to Nationalist forces, 1939
+01/26  Auschwitz liberated, 1945
+01/26  Sydney settled, 1788
+01/27  Somali dictator Muhammad Siyad Barre flees country, 1991
+01/27  Grissom, White and Chaffe die in fire aboard Apollo I, 1967
+01/27  Paris Peace Accords signed, ending Vietnam War, 1973
+01/28  Space Shuttle Challenger (51-L) explodes 74 seconds after liftoff
+       killing Scobee, Smith, McNair, Resnick, Jarvis, Onizuka and McAuliffe,
+       1986
+01/29  Stanley Kubrick's Dr. Strangelove premieres, 1964
+01/30  Mohandas Gandhi assassinated in New Delhi, 1948
+01/30  King Charles I executed by Cromwell's forces, 1649
+01/30  Tet Offensive begins, 1968
+01/31   "Ham" the chimpanzee soars into space aboard Mercury-Redstone 2, 1961
+01/31  Explorer I launched, resulting in discovery of Van Allen Belt, 1958
+
+02/01  "Secret Storm", first TV soap opera airs, 1954
+02/01  Forces lead by the Ayatollah Khomeini take over Iran, 1979
+02/01   Space Shuttle Columbia (STS-107) disintegrates over Texas
+       during re-entry killing Husband, Anderson, Brown, Chawla,
+       Clark, McCool, Ramon, 2003
+02/01  First session of the United States Supreme Court, 1790
+02/01   First automobile insurance policy issued by Travellers
+       Insurance of Hartford, CT, 1898
+02/01  Land battle of Guadalcanal ends with Japanese evacuation after
+       seven months of fighting, 1943
+02/02   Mexican-American war ends with signing of Treaty of Guadalupe
+       Hidalgo, 1848
+02/02  Last German troops in Stalingrad surrender, 1943
+02/03  Soviet probe Lunik 9 makes first controlled landing on Moon, 1966
+02/03  Sixteenth Amendment to US Constitution, establishing first Federal
+       Income Tax, takes effect, 1913
+02/04  George Washington elected first President of the United States, 1789
+02/04  Confederate States of America formed, 1861
+02/04   Roosevelt, Churchill, and Stalin meet at Yalta to determine
+       shape of post-war Europe, 1945
+02/04  Cybernet inaugurated, 1969
+02/04  James Fenimore Cooper's The Last of the Mohicans published, 1826
+02/05   New Mexican Constitution proclaimed, founding modern nation
+       of Mexico, 1917
+02/05  First Walk/Don't Walk sign installed, New York City, 1952
+02/05  Last Soviet troops pull out of Kabul, 1989
+02/06  John Steinbeck's Of Mice and Men published, 1937
+02/07  Beatles arrive in New York, 1964        
+02/07  Great Baltimore Fire begins, 1904
+02/07  Bruce McCandless completes first untethered spacewalk, 1984
+02/07  Maastricht Treaty signed, establishing European Union, 1992
+02/07  Soviet Communist Party relinquishes monopoly on political power, 1990
+02/08  Mary Queen of Scots beheaded at Fotheringhay Castle, 1587
+02/08   Russo-Japanese war begins with surprise naval attack on
+       Port Arthur by Japanese forces, 1904
+02/09  First US combat troops arrive in Vietnam, 1965
+02/09  -51 degrees F, Vanderbilt MI, 1934
+02/10  Seven Years' War ends, 1763
+02/11   Japan becomes fourth nation to complete successful space
+       launch, 1970
+02/11  Nelson Mandela freed, 1990
+02/12  Last Emperor of China abdicates throne, 1912
+02/12  Anatoly Scharansky released from Soviet prison camp, 1986
+02/12  George Gershwin's Rhapsody in Blue debuts, 1924
+02/13   William and Mary proclaimed King and Queen of England after
+       Glorious Revolution, 1689
+02/14  Sandinistas agree to free elections in Nicaragua, 1989
+02/14  Battle of the Kasserine Pass, 1943
+02/15  Singapore surrenders to Japanese forces, 1942
+02/15   USS Maine explodes in Havana harbor, leading to Spanish-American
+       war, 1898
+02/15  Canadian Maple-Leaf Flag adopted, 1965
+02/16  Nylon patented, 1937
+02/16   Raiding party led by Stephen Decatur burns captured US
+       frigate in Tripoli harbor, 1804
+02/16  Fidel Castro sworn in as Prime Minister of Cuba, 1959
+02/17   China invades Vietnam, resulting in nine days of fighting
+       before Chinese retreat, 1979
+02/18  Charleston, SC surrendered to Union forces, 1865
+02/18  Pluto discovered by Clyde Tombaugh, Lowell Observatory, AZ, 1930
+02/19  US Marines land on Iwo Jima, 1945
+02/19  First prototype Ford Thunderbird completed, 1954
+02/19  Donner Party rescued after four months, 1847
+02/20  John Glenn orbits the Earth 3 times, 1962
+02/21  Battle of Verdun begins, 1916
+02/21  First telephone directory, New Haven, Connecticut, 1878
+02/21  Karl Marx's Communist Manifesto published, 1848
+02/21  Richard Nixon arrives in China for historic eight-day visit, 1972
+02/22  Walt Disney's Cinderella opens, 1950
+02/23  US Flag raised over Mount Suribachi on Iwo Jima, 1945
+02/24  Impeachment proceedings against Andrew Johnson begin, 1868
+02/24   Tet Offensive ends with recapture of Hue by US and South
+       Vietnamese forces, 1968
+02/24  Ground offensive begins in first Gulf War, 1991
+02/25  Ferdinand Marcos flees the Philippines, 1986
+02/25  Bloodless coup leads to Communist government in Czechoslovakia, 1948
+02/26  World Trade Center bombed, killing 6, 1993
+02/26  Free elections held in Nicaragua, Sandinistas ousted, 1990
+02/27  Reichstag building burns, 1933
+02/27  Kuwait liberated, ending offensive ground operations in First Gulf War, 1991
+02/28  The "French Connection" drug bust occurs in Marseilles, 1972
+02/29   French and Indian raid on Deerfield MA kills 56 as part of
+       Queen Anne's War, 1704
+
+03/01  Yellowstone National Park established by President Grant, 1872
+03/01  Peace Corps established by President Kennedy, 1961
+03/01   Twenty-month-old son of Charles Lindbergh kidnapped and killed, 1932
+03/02  Texas declares independence from Mexico, 1836
+03/02  Importation of slaves into United States prohibited, 1807
+03/02  Pioneer 10 launched to explore Jupiter and beyond, 1973
+03/02  Soviet and Chinese troops clash along Ussuri river, 1969
+03/03   Treaty of Brest-Litovsk ends Russian participation in First
+       World War, 1918
+03/03  Finland declares war on Germany, 1945
+03/04   United States Constitution takes effect, and Congress meets
+       in New York, 1789
+03/05   British troops fire into snowball-throwing crowd in Boston
+       Massacre, 1770
+03/06   Alamo falls to forces of Mexican General Santa Anna after
+       13 days of siege, 1836
+03/06   Dutch Resistance ambush, kill SS Lt. General Hanns Rauter
+       in Apeldoorn, 1945
+03/07   Nazi forces re-militarize Rheinland in violation of Treaty
+       of Versailles and Locarno Pact, 1936
+03/07   Sheikh Mujib Rahman becomes first elected leader of
+       Bangladesh, 1973
+03/08   `February Revolution' in Russia begins on February 23 of
+       calendar then in use in Russia, 1917
+03/08  Dutch forces on Java surrender to the Japanese, 1942
+03/09   USS Monitor battles CSS Virginia (USS Merrimac) in world's
+       first battle between ironclad warships, 1862
+03/09   Former Last Emperor of China becomes regent of Japanese
+       puppet state of Manchukuo, 1932
+03/09   US forces land at Vera Cruz in largest amphibious landing
+       before World War II, 1847
+03/10   Alexander Graham Bell conducts first successful telephone
+       experiment, 1876
+03/10  Jan Masaryk dead in Czechoslovakia in reported suicide, 1948
+03/11  Lend-Lease Act signed, 1941
+03/11  Mikhail Gorbachev becomes Premier of USSR, 1985
+03/11  Lithuania declares independence from USSR, 1990
+03/12  Austria annexed by Germany, 1938
+03/12  Mahatma Ghandi begins march to sea in protest of British Salt Tax, 1930
+03/13  Uranus discovered by William Hershel, 1781
+03/13  Tsar Alexander II of Russia assassinated, 1881
+
+
+03/15  Tsar Nicholas II abdicates throne of Russia, 1917
+
+
+03/16  Robert Goddard launches first liquid-fueled rocket, Auburn MA, 1926
+03/17  Vanguard I launched, 1958.  Earth proved pear-shaped
+03/18  Aleksei Leonov performs first spacewalk, 1965
+03/24  Construction of New York subway system begins, 1900
+03/26  Popeye statue unveiled, Crystal City TX Spinach Festival, 1937
+03/27  Khrushchev becomes Premier of Soviet Union, 1958
+03/29  Swedish settled Christiana (Wilmington) DE, 1638
+03/30  Alaska purchased from Russia for $7.2 million, 1867
+03/30  Five rings around Uranus discovered, 1977
+03/30  Pencil with eraser patented, 1858
+03/31   Pioneer 10 mission ends, having travelled 6 billion miles
+       and provided close-up pictures of Jupiter and first data on
+       interstellar space, 1997
+
+04/04  Martin Luther King assassinated in Memphis, Tennessee, 1968
+04/04  NATO Established, 1949
+04/05  US nationalises Gold at a value of $20.67, 1933
+04/06  Joseph Smith founds Mormon Church, 1830
+04/09  Lee surrenders to Grant at Appomattox Courthouse, 1865
+04/12  Confederate troops fire first shots of Civil War at Ft Sumter, 1861
+04/12  Space Shuttle Columbia launched, 1981
+04/12  Yuri Gagarin becomes the first man in space, 1961
+04/14  Lincoln shot in Ford's Theatre by John Wilkes Booth, 1865
+04/14  Titanic hits iceberg and sinks, 1912
+04/15  Ray Kroc opens first McDonalds in Des Plaines, IL, 1955
+04/18  First Laundromat opens, Fort Worth Texas, 1934
+04/18  San Francisco earthquake, 1906
+04/19  Warsaw Ghetto uprising, 1943
+04/23  Hank Aaron hits his first home run, 1954
+04/26  William Shakespeare baptised in Stratford-on-Avon, England, 1564,
+       birthdate unknown
+04/27  Magellan killed in Philippines, 1521
+04/29  Zipper patented by Gideon Sindback, 1913
+
+05/06  Hindenburg explodes and burns upon landing at Lakehurst, NJ, 1939
+05/07  Germany surrenders after WWII, 1945
+05/09  94 degrees, New York, 1979
+05/10  Germany invades Low Countries, 1940
+05/10  Nazi bookburning, 1933
+05/14  Beginning of Lewis and Clark Expedition, 1804
+05/14  Nation of Israel proclaimed, 1948
+05/15  Asylum for Inebriates founded, Binghamton NY, 1854
+05/17  24" rain in 11 hours, Pearl River, S. China, 1982
+05/18  Battle of Las Piedras in Uruguay
+05/18  Napoleon crowned Emperor, 1804
+05/21  Battle of Iquique in Chile
+05/21  US explodes first hydrogen bomb, 1956
+05/22  US Civil War ends, 1865
+05/23  Israeli raid into Argentina to capture Adolf Eichmann, 1960
+05/24  Battle of Pinchincha in Ecuador
+05/25  Successful test of the limelight in Purfleet, England, 1830
+05/27  Golden Gate Bridge opens, 1937
+05/29  Edmund Hillary and Tenzing Norkay climb Mt. Everest, 1953
+
+06/04  Roquefort cheese developed, 1070
+06/05  Robert Kennedy assassinated, 1968
+08/15  US leaves the Gold Standard, 1971
+06/06  First drive-in movie, 1933
+06/06  Normandy landing, 1944
+06/10  Death of Alexander the Great, 323 B.C.
+06/13  Pioneer 10 flies past Neptune's orbit, the first human artifact
+       to travel beyond the orbits of all known planets, 1983
+06/14  Sandpaper invented by I. Fischer, Jr., 1834
+06/15  Ben Franklin's kite experiment, 1752
+06/15  Magna Carta signed, 1215
+06/15  Series of photographs by Edward Muggeridge prove to Leland Stanford
+       that all the hooves of a horse are off the ground during the gallop,
+       1878
+06/16  "The Blues Brothers" premieres in Chicago, 1980
+06/17  China explodes its first Hydrogen bomb, 1967
+06/19  Lizzie Borden acquitted, 1893
+06/20  Victoria crowned, 1837
+06/21  Berlin airlift begins, 1948
+06/23  Slavery abolished in England, 1772
+06/25  Custer's Last Stand at Little Big Horn, 1876
+06/25  North Korea invades South Korea, 1950
+06/26  Battle of Gettysburg, 1863
+06/26  St. Lawrence Seaway dedicated by Eisenhower & Queen Elizabeth II, 1959
+06/26  Toothbrush invented, 1498
+06/27  100 degrees, Fort Yukon, 1915
+06/28  Supreme Court decides in favor of Alan Bakke, 1978
+06/30  "That" explosion in Siberia, 1908
+06/30  China and Soviet Union announce split over ideology, 1960
+
+07/01  Battle of Gettysburg begins, 1863
+07/04  Battles of Vicksburg and Gettysburg won by Union forces, 1863
+07/04  Cloudy, 76 degrees, Philadelphia PA, 1776
+07/04  New York abstains on Declaration of Independence vote, 1776
+07/04  Thoreau enters woods, 1845
+07/06  First `talkie' (talking motion picture) premiere in New York, 1928
+07/06  Lawrence of Arabia captures Aqaba, 1917
+07/07  First radio broadcast of "Dragnet", 1949
+07/08  First public reading of the Declaration of Independence, 1776
+07/08  Liberty Bell cracks while being rung at funeral of John Marshall, 1835
+07/09  10-hour working day set by law, NH, 1847
+07/10  134 degrees in Death Valley, 1913
+07/13  Women first compete in Olympic games, 1908
+07/16  Detonation of the first atomic bomb at Alamogordo, NM, 1945
+07/17  Disneyland opens, 1955
+07/18  Ty Cobb gets 4000th base hit, 1927
+07/20  Armstrong and Aldrin land on moon, 1969
+07/21  First Train Robbery, Jesse James gets $3000 near Adair, Iowa, 1873
+07/23  Ice cream cone introduced, St. Louis MO, 1904
+07/24  Scopes Monkey Trial, 1925
+07/30  "In God We Trust" made U.S. motto, 1956
+07/31  Harry S. Truman dedicates N.Y. Int'l Airport @ Idlewild Field, 1948,
+       later JFK
+
+08/03  Columbus sets sail for Cathay, 1492
+08/03  USS Nautilus crosses under north polar ice cap, 1958
+08/04  Axe murder of Andrew and Abbey Borden, 1892
+08/04  Britain declares war on Germany starting World War I, 1914
+08/06  Atomic bomb dropped on Hiroshima, 1945
+08/06  Caricom in Barbados
+08/06  Cy Young pitches first game, 1890
+08/08  Atomic bomb dropped on Nagasaki, 1945
+08/08  Montenegro declares war on Germany, 1914
+08/08  Richard Nixon resigns the US presidency, 1974
+08/08  The Great Train Robbery -- $7,368,000, 1963
+08/09  Helter Skelter... the Charles Manson murders take place, 1969
+08/09  Persia defeats Spartan King Leonidas at Thermopylae, 480 BC
+08/09  US/Canada border defined in the Webster-Ashburton Treaty, 1842
+08/10  Chicago incorporated as a village of 300 people, 1833
+08/10  US and Panama agree to transfer the canal in the year 2000, 1977
+08/11  France Ends War in Indochina, 1954
+08/12  First test flight of Space Shuttle "Enterprise" from 747, 1977
+08/12  Last U.S. ground troops out of Vietnam, 1972
+08/13  Berlin wall erected, 1961
+08/13  Li'l Abner debut, 1934
+08/14  Social Security begins in U.S., 1935
+08/15  Gandhi's movement obtains independence for Pakistan and India, 1947
+08/15  Hurricane hits Plimoth Plantation, 1635
+08/16  Roller Coaster patented, 1898
+08/17  First public bath opened in N.Y., 1891
+08/18  Anti-Cigarette League of America formed
+08/19  Air Force cargo plane snares payload from Discoverer 14 spy satellite,
+       marking start of practical military reconnaissance from space, 1960
+08/19  Gail Borden patents condensed milk, 1856
+08/22  Death of King Richard III, 1485, Last of the Plantagenets
+08/22  Joe Walker sets X-15 all time altitude mark (67 miles), 1963
+08/22  St. Columbia reports seeing monster in Loch Ness, 565
+08/24  "Alice's Restaurant" premieres in New York and Los Angeles, 1969
+08/24  -126.9 F at Vostok, Antarctica, 1960
+08/24  British troops burn Washington, 1814
+08/25  Gen. DeGaulle leads French forces into Paris, 1944
+08/26  Women get the right to vote, Nineteenth Amendment to US Constitution
+       becomes law, 1920
+08/27  Edgar Rice Burroughs' "Tarzan of the Apes" published, 1912
+08/27  Krakatoa, Java explodes with a force of 1,300 megatons, 1883
+08/28  King leads over 200K in civil rights rally in Washington, DC, 1963
+08/29  Star in Cygnus goes nova and becomes 4th brightest in sky, 1975;
+       Nova Cygni 1975.
+08/30  Japan Stationery Co. sells first felt-tipped pen, 1960
+08/30  Washington-to-Moscow hot line connected, 1963
+08/31  269 people killed after Korean Airlines 747 shot down by USSR, 1983
+08/31  Mary Anne Nichols becomes Jack the Ripper's first victim, 1888
+08/31  Non-aggression pact signed by USSR and Afghanistan, 1926
+
+09/01  Bobby Fischer defeats Boris Spassky in World Chess Match, 1972
+09/01  Joshua A. Norton proclaims himself 'Emperor Norton I', 1859
+09/02  Great Britain adopts Gregorian Calendar, 1752
+09/02  Japan signs unconditional surrender on US battleship `Missouri', 1945
+09/05  The first Continental Congress was convened in Philadelphia, 1774
+09/06  149 Pilgrims set forth from England aboard the Mayflower, 1620
+09/06  First Star Trek episode (The Man Trap) aired 1966
+09/06  Pres. McKinley shot, 1901
+09/08  "Star Trek" debuts on NBC (1966)
+09/08  Jack the Ripper kills again, Annie Chapman is second victim, 1888
+09/08  President Ford pardons Richard M. Nixon, 1974
+09/09  California becomes the 31st state, 1850
+09/09  United Colonies is renamed the United States, 1776
+09/11  Twin Towers fall in terrorist attacks, 2001
+09/12  German paratroopers rescue Mussolini from captivity in Rome, 1943
+09/12  Germany annexes Sudetenland, 1938
+09/13  136.4 F at el Azizia, Libya, 1922
+09/13  British defeat the French at Abraham near Quebec City, 1788
+09/13  Building of Hadrian's Wall begun, 122
+09/13  Chiang Kai-Shek becomes president of China, 1943
+09/14  Benjamin Franklin is sent to France as an American minister, 1778
+09/14  Salem, Massachusetts, is founded, 1629
+09/14  The Selective Service Act establishes the first peacetime draft, 1940
+09/15  Soviet Premier Nikita Khrushchev begins his 13 day tour of the US, 1959
+09/15  The U.S. Foreign Affairs Dept. becomes the U.S. State Department, 1789
+09/16  The village of Shawmut, Massachusetts, becomes the city of Boston, 1630
+09/17  Battle of Antietam, 1862
+09/20  Equal Rights Party nominates Belva Lockwood for President, 1884
+09/20  First meeting of the American Association for the Advancement of
+       Science, 1848
+09/20  First meeting of the National Research Council, 1916
+09/20  Magellan leaves Spain on the first Round the World passage, 1519
+09/20  The Roxy Theater opens in Hollywood, 1973
+09/22  Allied forces form the independent nation West Germany, 1953
+09/22  President Lincoln issues the Emancipation Proclamation, 1862
+09/22  The first Soviet atomic bomb explodes, 1949
+09/23  Philippine President Ferdinand Marcos declares martial law, 1972
+09/23  The New York Knickerbockers becomes the first U.S. Baseball club, 1845
+09/25  Sandra Day O'Connor becomes first woman on US Supreme Court, 1981
+09/27  The first passenger was hauled in a locomotive in England, 1825
+09/28  John Bunyan's "Pilgrim's Progress" published, 1678
+09/28  A Greek soldier runs 26+ miles after the Persian defeat at Marathon,
+       490BC
+09/30  Red Jack kills 2, Elizabeth Stride (\#3) and Catherine Eddowes (\#4),
+       1888
+09/30  The first tooth is extracted under anesthesia in Charleston, Mass, 1846
+09/30  The verdicts of the Nuremberg trials are announced, 1946
+
+10/01  NASA officially begins operations, 1958
+10/02  Thurgood Marshall sworn in as the first black Supreme Court Justice, 1967
+10/04  Crimean war begins, 1853
+10/04  Sputnik 1, world's first orbiting satellite launched, 1957
+10/06  Antioch College is the first public school to admit men and women, 1853
+10/06  Egyptian President Anwar Sadat is assassinated in Cairo, 1981
+10/06  Israel is attacked by the alliance of Egypt and Syria, 1973
+10/07  Foundation of the German Democratic Republic in 1949
+10/07  Georgia Tech. beats Cumberland Univ. 222-0, 1916
+10/07  Mother Teresa of Calcutta awarded the Nobel Peace Prize, 1979
+10/08  Great Chicago Fire, 1871
+10/09  First two-way telephone conversation, 1876
+10/11  "Saturday Night Live" premiers on NBC-TV, 1975
+10/11  The Gang of Four are arrested in Peking, 1976
+10/11  The first steam powered ferry ran between New York and Hoboken, 1811
+10/11  The second Vatican Ecumenical Council opens in Rome, 1962
+10/12  Bahama Natives discover Columbus of Europe lost on their shores, 1492
+10/12  Khrushchev pounds his desk with shoe during a speech to the UN, 1960
+10/12  Man O'War's last race, 1920
+10/13  Italy declares war on Germany, 1943
+10/13  U.S. Navy born, 1775, authorized by the Second Continental Congress
+10/14  Battle of Hastings won by William the Conqueror and the Normans, 1066
+10/14  Chuck Yeager breaks sound barrier, 1947
+10/18  Boston Shoemakers form first U.S. labor org., 1648
+10/18  Soviets announce their probe took photos of the Moon's far side, 1959
+10/19  Mao Tse-tung establishes the People's Republic of China, 1949
+10/19  Napoleon's beaten army begins the long retreat from Moscow, 1812
+10/20  OPEC embargo, 1973
+10/21  Edison makes the first practical incandescent lamp, 1879
+10/21  Guggenheim Museum opens, 1959
+10/23  Battle of Leyte Gulf begins, 1944
+10/25  The UN removes Taiwan and admits the People's Republic of China, 1971
+10/26  UN's World Health Organization declares smallpox eradicated, 1978
+10/27  New York's Boss Tweed is arrested on fraud charges, 1871
+10/27  The first New York Subway is opened, 1904
+10/28  Columbus discovers Cuba, 1492
+10/28  Constantine's army defeats forces of Maxentius at Mulvian Bridge, 312
+10/28  Harvard was founded in Massachusetts, 1636
+10/28  Statue of Liberty was dedicated on Bedloe's Island, 1886
+10/29  Stock Market Crash, 1929
+10/30  Orson Welles' "War of the Worlds" broadcast, 1938
+10/31  Luther nails 95 Theses to door of Castle Church, Wittenberg, 1517
+
+11/01  Austria-Hungary become two separate nations, 1918
+11/02  Luftwaffe completes 57 consecutive nights of bombing of London, 1940
+11/02  Two Frenchmen make the first free hot air balloon flight, 1783
+11/03  Beef rises to 3 cents a pound, IL, 1837
+11/03  Linus Pauling wins Nobel Chemistry Prize, 1954
+11/03  Sputnik II launched, 1957, bearing spacedog Laika
+11/04  Iranian militants seize US embassy personnel in Teheran, 1979
+11/04  Soviet forces crush the anti-communist revolt in Hungary, 1956
+11/05  Guy Fawkes' Plot, 1605
+11/06  Anniversary of the October Socialist Revolution (2 days) in U.S.S.R.
+11/07  Lewis and Clark Expedition in sight of the Pacific Ocean, 1805
+11/09  Blackout of New York, New England, and Eastern Canada, 1965
+11/09  Giant panda discovered (?!), China, 1927
+11/09  Jack the Ripper kills fifth and final victim, Jane Kelly, 1888
+11/09  Roosevelt establishes the Civil Works Administration, 1933
+11/10  41 Women arrested in suffragette demonstrations near White House, 1917
+11/10  Cpt. Wirz, commandant of Andersonville Prison hanged, 1865
+11/10  Henry Stanley asks David Livingston, "Dr. Livingston, I presume?", 1871
+11/11  Washington becomes the 42nd state, 1889
+11/12  Dr. Sun Yat-sen's Birthday in Taiwan
+11/12  U.S. first exports oil to Europe, 1861
+11/15  Niagara Falls power plant startup, 1896
+11/16  Opening of the Suez Canal, 1869
+11/17  46,000 meteoroids fall over AZ in 20 minutes, 1966
+11/18  First hydrogen bomb blasts Enewetok, 1952
+11/18  Local standard time zones established for US, 1883
+11/19  Gettysburg Address delivered, 1863
+11/22  Kennedy shot in Dallas, Texas by Lee Harvey Oswald, 1963
+11/23  First broadcast of Dr. Who, 1963
+11/24  Lee Harvey Oswald killed by Jack Ruby, 1963
+11/25  Alfred Nobel invents dynamite, 1867
+11/27  Alfred Nobel establishes Nobel Prize, 1895
+11/27  Friction match invented, England, 1826
+11/27  Hoosac Railroad Tunnel completed, 1873, in NW Massachusetts
+11/29  King Tut's tomb opened, 1922
+
+12/01  Martin Luther King Jr., leads black boycott of Montgomery buses, 1955
+12/01  Rosa Parks refuses to move to back of the bus (Montgomery, AL), 1953
+12/03  First neon light display, Paris, 1910
+12/03  First successful human heart transplant led by Dr. Barnard, 1967
+12/04  Washington takes leave of his officers at Fraunce's Tavern, NYC, 1783
+12/05  End of Prohibition, 1933 (at least the alcohol part)
+12/05  Phi Beta Kappa founded, 1776
+12/05  The Eighteenth Amendment repealed, ending Prohibition, 1933
+12/07  Japan bombs Pearl Harbor, 1941
+12/09  Ball-bearing roller skates patented, 1884
+12/10  Metric system established in France, 1799
+12/12  First wireless message sent across Atlantic by Marconi, 1901
+12/13  Apollo 17 leaves the moon, with "last" men to walk on moon aboard, 1972
+12/13  Dartmouth College chartered, 1769
+12/15  Bill of Rights adopted, 1791
+12/15  James Naismith invents basketball, Canada, 1891
+12/16  Kazakhstan declares independence from USSR, 1991
+12/20  U.S. buys ~1,000,000 sq. miles of Louisiana for ~$20/sq.mi.
+12/27  Ether first used as anesthetic in childbirth, 1845
+12/28  Comet Kohoutek at perihelion, 1973
+12/29  Massacre at Wounded Knee, 1890
+12/30  First Los Angeles freeway dedicated, 1940
diff --git a/usr.bin/calendar/calendars/calendar.holiday b/usr.bin/calendar/calendars/calendar.holiday
new file mode 100644 (file)
index 0000000..9b311e4
--- /dev/null
@@ -0,0 +1,570 @@
+01/01  New Year's Day
+01/01  Independence Day in Haiti, Sudan
+01/01  Universal Fraternity Day in Mozambique
+01/02  Ancestry Day in Haiti
+01/02  St. Berchtold's Day in Switzerland
+01/03  New Year's Holiday in Scotland
+01/03  Revolution Day in Upper Volta
+01/04  Independence Day in Burma
+01/04  Martyrs Day in Zaire
+01/06  Children's Day in Uruguay
+01/06  Three Kings' Day in Puerto Rico
+01/07  Christmas in Ethiopia
+01/07  Pioneer's Day in Liberia
+01/09  Day of the Martyrs in Panama
+01/11  Armed Forces Day in Liberia
+01/12  Zanzibar Revolution Day in Tanzania
+01/13  National Liberation Day in Togo
+01/15  Coming-of-Age Day (2nd Monday)
+01/15  Arbor Day in Jordan
+01/16  Martyrs Day in Benin
+01/18  Revolution Day in Tunisia
+01/19  Confederate Heroes Day in Texas
+01/19  Ethiopian Epiphany in Ethiopia
+01/19  Nameday of Archbishop Makarios in Cyprus
+01/20  Army Day in Mali 
+01/20  National Heroes Day in Guinea-Bissau
+01/20* Martin Luther King Day in New York (3rd Sunday)
+01/21* Lee-Jackson Day in Virginia (3rd Monday)
+01/21* Robert E. Lee's Birthday in Alabama & Mississippi (3rd Monday)
+01/21  Our Lady of Altagracia in Dominican Republic
+01/21* Lee-Jackson Day in Virginia (3rd Monday)
+01/23  Feast of St. Ildefonsus
+01/23  National Handwriting Day
+01/24  Economic Liberation Day in Togo
+01/26  Australia Day in Australia
+01/26  Republic Day in India
+02/01  Chinese New Year Holiday (3 days) in Taiwan
+02/02  Candlemas
+02/04  Independence Commemoration Day in Sri Lanka
+02/05  Constitution Day in Mexico
+02/06  New Zealand Day
+02/07  Independence Day in Grenada
+02/09  St. Maron's Day in Lebanon
+02/10  Feast of St. Paul's Shipwreck, AD 60
+02/11  National Foundation Day in Japan
+02/12  Pyidaungsa Day in Burma
+02/16  Makha Bucha Day in Thailand
+02/18  Democracy Day in Nepal
+02/18  Independence Day in The Gambia
+02/23  Republic Day in Guyana
+02/24  Gregorian Calendar Day
+02/25  National Day in Kuwait
+02/27  Independence Day in Dominican Republic
+03/01  Samil Independence Movement Day in South Korea
+03/01  St. David's Day, Cardiff
+03/02  Peasants Day in Burma
+03/02  Texas Independence day
+03/02  Victory of Adowa in Ethiopia
+03/03  Throne Day in Morocco
+03/04  Vermont Admission Day (admitted as 14th state in 1791)
+03/05  Independence Day in Equatorial Guinea
+03/06  Lantern Day, Bejing
+02/23* Purim - Feast of Lots 
+03/08  First Annual International Women's Day, 1909
+03/08  International Women's Day in U.S.S.R.
+03/08  Syrian National Day in Libyan Arab Republic
+03/08  Women's Day in Guinea-Bissau, Taiwan, Yemen Democratic Republic
+03/08  Youth Day in Zambia
+03/09  Decoration Day in Liberia
+03/09  Falgun Purnima Day in Nepal
+03/10  Labor Day in South Korea
+03/11  Johnny Appleseed Day; anniversary of the death of John Chapman
+03/12  Commonwealth Day in Swaziland
+03/12  Independence Day in Mauritius
+03/12  Moshoeshoe's Birthday in Lesotho
+03/12  Renovation Day in Gabon
+03/13  National Day in Grenada
+03/15  Day of the 1848 revolution in Hungary
+03/16  Black Press Day; first Black newspaper founded in 1827
+03/17  Evacuation Day in Suffolk County, Massachusetts
+03/17  St. Patrick's Day
+03/19  St. Joseph's Day in Colombia, Costa Rica, Holy See, Liechtenstein,
+       San Marino, Spain, Venezuela
+03/19  Tree Planting Day in Lestho
+03/20  Independence Day in Tunisia
+03/20  Youth Day in Oklahoma
+03/21  Afghan New Year in Afghanistan
+03/21  Juarez' Birthday in Mexico
+03/22  Abolition Day in Puerto Rico
+03/23  Pakistan Day in Pakistan
+03/25  Greek Independence Day in Cyprus
+03/25  Lady Day (a.k.a. the Feast of the Annunciation)
+03/25  Maryland Day in Maryland
+03/25  National Holiday in Greece
+03/25* Seward's Day in Alaska (last Monday)
+03/26  Independence Day in Bangladesh
+03/26  Prince Jonah Kuhio Kalanianaole Day in Hawaii
+03/27  Armed Forces Day in Burma
+03/29  Death of President Barthelemy Boganda in Central African Republic
+03/29  Memorial Day in Madagascar
+03/31  National Day in Malta
+04/01  Youth Day in Benin
+04/02  Malvinas Day in Argentina
+04/02  Pascua Florida Day in Florida
+04/04  Ching Ming Festival in Hong Kong
+04/04  National Day in Senegal
+04/05  Arbor Day in South Korea
+04/05  Tomb Sweeping Day in Taiwan
+04/06  Chakri Memorial Day in Thailand
+04/06  Victory Day in Ethiopia
+04/08  Fast and Prayer Day in Liberia
+04/09  Martyrs Day in Tunisia
+04/11  National Heroes Day in Costa Rica
+04/13  National Day in Chad
+04/13  Songkran Day in Thailand
+04/14  Day of the Americas in Honduras
+04/15  Bengali New Year in Bangladesh
+04/22* Patriot's Day in Maine & Massachusetts (3rd Monday)
+04/16  De Diego's Birthday (celebrated in Puerto Rico)
+04/16  Holy Week (5 days) in Venezuela
+04/16  Tourist Week (5 days) in Uruguay
+04/17  Burmese New Year in Burma
+04/18  Independence Day in Chile, Zimbabwe
+04/19  Declaration of Independence in Venezuela
+04/19  Republic Day in Sierra Leone
+04/21  San Jacinto Day in Texas
+04/22  Arbor Day in Nebraska & Delaware
+04/22  Oklahoma Day in Oklahoma
+04/24  Victory Day in Togo
+03/25* Pesach - First Day of Passover - Festival of Freedom
+04/25  Anzac Day in Australia, New Zealand, Tonga, Western Samoa
+04/25  Liberation Day in Italy 
+04/25  National Flag Day in Swaziland
+04/26  Confederate Memorial Day in Florida & Georgia
+04/26  Union Day in Tanzania
+04/27  Independence Day in Togo
+04/29* Arbor Day in Wyoming (last Monday)
+04/29* Confederate Memorial Day in Alabama & Mississippi (last Monday)
+04/30  The Workers Day in Uruguay
+05/01  Labor Day in many places
+05/01  Law Day (decl. by Eisenhower)
+05/01  May Day in many places
+05/03  Constitution Day in Japan
+05/04  Rhode Island Independence Day
+05/05  Children's Day in Japan, South Korea
+05/05  Coronation Day in Thailand
+05/05  Liberation Day in Netherlands
+05/06  Bataan Day in Philippines
+05/06* Bank Holiday in UK (first Monday in May)
+05/07  May Day in United Kingdom
+05/08  Truman Day in Missouri
+05/09  Liberation Day in Czechoslovakia
+05/09  Victory Day in Poland, U.S.S.R.
+05/10  Confederate Memorial Day in South Carolina
+05/10  Mothers Day in Guatemala
+05/11  Minnesota Day in Minnesota
+05/14  Buddhist Holiday (Waisak 2528) in Indonesia
+05/14  Independence Day (2 days) in Paraguay
+05/14  Unification Day in Liberia
+05/15  Kamuzu Day in Malawi
+05/15  Vesak Day in Singapore, Malaysia
+05/15  Visakha Bucha Day in Thailand
+05/16  Discovery Day in Cayman Islands
+05/17  Constitution Day in Nauru, Norway
+05/18  Flag Day in Haiti
+05/18  Prayer Day in Denmark
+05/19  Youth and Sports Day in Turkey
+05/20* Memorial Day in Michigan (3rd Monday)
+05/20  Mecklenburg Independence Day in North Carolina
+05/20  National Day in Cameroon
+05/20* Memorial Day in Michigan (3rd Monday)
+05/20* Victoria Day in Canada
+05/22  National Heroes Day in Sri Lanka
+05/23  Commonwealth Day in Jamaica, Belize
+05/23  National Labor Day in Jamaica
+05/24  Bermuda Day in Bermuda
+05/24  Day of Slav Letters in Bulgaria
+05/25  African Freedom Day in Zimbabwe
+05/25  African Liberation Day in Chad, Mauritania, Zambia
+05/25  Independence Day in Jordan
+05/25  Memorial Day in New Mexico & Puerto Rico
+05/29* First Day of Shavuot 
+05/27* Bank Holiday in UK (last Monday in May)
+05/28  Mothers Day in Central African Republic
+05/31  Pya Martyrs Day in Togo
+05/31  Republic Day in South Africa
+06/01  Independence Days (3 days) in Western Samoa
+06/01  Madaraka Day in Kenya
+06/01  Victory Day in Tunisia
+06/03  Confederate Memorial Day in Kentucky & Louisiana
+06/03  Labor Day in Bahamas
+06/03* Bank Holiday in Rep. of Ireland (first Monday in June)
+06/04  Emancipation Day in Tonga
+06/05  Constitution Day in Denmark
+06/05  Liberation Day in Seychelles
+06/06  Memorial Day in South Korea
+06/09  Senior Citizen's Day in Oklahoma
+06/10  Camoes Day in Portugal
+06/11  King Kamehameha I Day in Hawaii
+06/12  Independence Day in Philippines
+06/14  Flag Day
+06/17  Bunker Hill Day in Suffolk County, Massachusetts
+06/17  Independence Day in Iceland
+06/17  National Day in Federal Republic of Germany
+06/18  Evacuation Day in Egypt
+06/19  Emancipation Day in Texas
+06/19  Labor Day in Trinidad, Tobago
+06/19  Revolution Day in Algeria
+06/20  Flag Day in Argentina
+06/20  West Virginia Day in West Virginia
+06/22  National Sovereignty Day in Haiti
+06/23  National Holiday in Luxembourg
+06/24  Fisherman's Day in Madagascar, Mozambique, Somalia
+06/24  Kings Day in Spain
+06/24  Peasants Day in Peru
+06/24  St. Jean-Baptiste Day in Quebec
+06/28  Mothers Day in Central African Republic
+06/29  Independence Day in Seychelles
+06/29  Last Day of Ramadan* in Algeria, Oman
+06/30  Day of the Army in Guatemala
+07/01  Dominion Day in Canada
+07/01  Freedom Day in Suriname
+07/01  Independence Day in Burundi
+07/01  National Day in Rwanda
+07/01  Republic Day in Ghana
+07/02  National Day in Kiribati
+07/04  Caribbean Day in Guyana
+07/04  Constitution Day in Cayman Islands
+07/04  Family Day in Lesotho
+07/04  Heroes Day in Zambia
+07/04  Kadooment Day in Barbados
+07/04  Philippine-American Friendship Day in the Philippines
+07/04  Warriors Day (2 days) in Yugoslavia
+07/05  Day of Peace and Unity in Rwanda
+07/05  Independence Day in Algeria, Venezuela
+07/07  National Day in Malawi
+07/07  Saba Saba Day in Tanzania
+07/09  Independence Day in Argentina
+07/10  Independence Day in Bahamas
+07/11  National Holiday in the Mongolian People's Republic
+07/14  Bastille Day
+07/14  National Holiday in Monaco
+07/15  St. Swithin's Day
+07/16  Presidents Day in Botswana
+07/17  Constitution Day in South Korea
+07/17  Public Holiday in Botswana
+07/18  Constitution Day in Uruguay
+07/18  Liberation Day in Nicaragua
+07/19  Martyrs Day in Burma
+07/20  Independence Day in Colombia
+07/21  National Holiday in Belgium
+07/22  National Day in Poland
+07/23  Egyptian National Day in Syrian Arab Republic
+07/23  Remembrance Day in Papua, New Guinea
+07/24  Pioneer Day in Utah
+07/24  Simon Bolivar's Day in Ecuador, Venezuela
+07/25  Constitution Day in Puerto Rico
+07/25  National Rebellion Day (3 days) in Cuba
+07/25  Republic Day in Tunisia
+07/26  Independence Day in Liberia
+07/26  National Day in Maldives
+07/28  Independence Days (2 days) in Peru
+07/29  Rain Day in Waynesburg, PA
+07/31  Revolution Day in Congo
+08/01  Discovery Day in Trinidad, Tobogo
+08/01  Emancipation Day in Granada
+08/01  Freedom Day in Guyana
+08/01  National Day in Switzerland
+08/01  National Holidays (5 days) in El Salvador
+08/01  Parent's Day in Zaire
+08/03  Independence Day in Jamaica, Niger
+08/03  Memorial Day of Archbishop Makarios in Cyprus
+08/04  Freedom Day in Guyana
+08/05* Bank Holiday in Scotland and Northern Ireland (first Monday in August)
+08/05* Bank Holiday in Australia, British Columbia, Fiji, Iceland, Ireland,
+       Ontario (first Monday in August)
+08/06  Emancipation Day in Bahamas
+08/06  Independence Day in Bolivia
+08/09  National Day in Singapore
+08/10  Independence Day in Ecuador
+08/11  Heroes Day (2 days) in Zimbabwe
+08/11  Independence Day in Chad
+08/13  Women's Day in Tunisia
+08/14  Independence Day in Pakistan
+08/14  VJ Day, 1945
+08/15  Independence Day in India
+08/15  Liberation Day in South Korea
+08/15  National Day in Congo
+08/16* Admission Day in Hawaii, 1984 (3rd Friday)
+08/16  Bennington Battle Day in Vermont
+08/16  Independence Days (3 days) in Gabon
+08/16  Restoration Day in Dominican Republic
+08/17  Independence Day in Indonesia
+08/19  Independence Day in Afghanistan
+08/20  Constitution Day in Hungary and birthday of King St. Istvan
+08/23  Liberation Days (2 days) in Romania
+08/24  National Flag Day in Liberia
+08/25  Constitution Day in Paraguay
+08/25  Independence Day in Uruguay
+08/26  Susan B. Anthony Day in Massachusetts
+08/26* Bank Holiday in England and Wales (last Monday in August)
+08/27  Liberation Day in Hong Kong
+08/28  Heroes Day in Philippines
+08/30  Huey P. Long Day in Louisiana
+08/30  Victory Day in Turkey
+08/31  Independence Day in Trinidad, Tobago
+08/31  National Day in Malaysia
+08/31  Pashtoonian Day in Afghanistan
+09/01  Army Day in Chile
+09/03  Independence Day in Qatar
+09/03  Memorial Day in Tunisia
+09/06  Defense of Pakistan Day in Pakistan
+09/06  Settlers Day in South Africa
+09/07  Independence Day in Brazil
+09/09  Admission Day in California
+09/09  National Day in North Korea
+09/10  Korean Thanksgiving Day (Chusuk) in South Korea
+09/10  National Day in Belize
+09/11  National Holiday in Chile
+09/12  Defender's Day in Maryland
+09/12  Revolution Day in Ethiopia
+09/13  Barry Day commemorates the death of Commodore John Barry
+09/15  Respect for the Aged Day in Japan
+09/16  Cherokee Strip Day in Oklahoma
+09/16  Independence Day in Mexico, Papua, New Guinea
+09/17  National Heroes Day in Angola
+09/18  Independence Day in Chile, Zimbabwe
+09/19  Army Day in Chile
+09/21  Independence Day in Belize
+09/22  Independence Day in Mali
+09/22  National Sovereignty Day in Haiti
+09/24  Independence Day in Guinea-Bissau
+09/24  National Day in Saudi Arabia
+09/24  Republic Day in Trinidad, Tobago
+09/25  Army Day in Mozambique
+09/25  Referendum Day in Rwanda
+09/26  Revolution Anniversary Day in Yemen Arab
+09/28  Confucius' Day in Taiwan
+09/30  Botswana Day in Botswana
+09/30  First Day of Sukkot
+10/01  Armed Forces Day in South Korea
+10/01  Independence Day in Nigeria
+10/01  Labor Day in Australia
+10/01  National Liberation Day (2 days) in China
+10/01  Public Holiday in Botswana
+10/03  National Foundation Day in South Korea
+10/03  U.N. Day in Barbados
+10/03  German Reunification Day in Germany
+10/04  Independence Day in Lesotho
+10/06  National Sports Day in Lesotho
+10/07  National Heroes Day in Jamaica
+10/08  Constitution Day in U.S.S.R
+10/08  Fiji Day in Fiji
+10/08  Thanksgiving Day in Canada
+10/09  Independence Day in Uganda
+10/09  Korean Alphabet Day in South Korea
+10/09  Leif Erikson Day commemorates the discovery of North America in AD 1000
+10/09  Republic Day in Khmer Republic
+10/10  Fiji Day in Fiji
+10/10  Health-Sports Day in Japan (2nd Monday)
+10/10  National Day in Taiwan
+10/10  Oklahoma Historical Day in Oklahoma
+10/11  Day of the Revolution in Panama
+10/11  Druger Day in South Africa
+10/12  Day of the Race in Argentina
+10/12  Discovery Day in Gahamas
+10/12  National Day in Equatorial Guinea, Spain
+10/12  Our Lady Aparecida Day in Brazil
+10/12  Pan American Day in Belize
+10/13  St. Edward's Day - Patron saint of England
+10/14  National Day in Yemen Arab Republic
+10/14  Young People's Day in Zaire
+10/14* Thanksgiving Day in Canada
+10/15  Evacuation Day in Tunisia
+10/16  National Boss Day
+10/17  Heroes Day in Jamaica
+10/17  Mother's Day in Malawi
+10/20  Kenyatta Day in Kenya
+10/21  Armed Forces Day in Honduras
+10/21  Revolution Days (2 days) in Somalia
+10/23  Chulalongkron's Day in Thailand
+10/23  Day of the 1956 revolution in Hungary
+10/24  Independence Day in Zambia
+10/24  United Nations Day 
+10/25  Labor Day in New Zealand
+10/25  Taiwan Restoration Day in Taiwan
+10/26  Agam Day in Nauru
+10/26  Armed Forces Day in Benin, Rwanda
+10/26  National Day in Austria
+10/28  National Holiday in Greece
+10/28  OHI Day in Cyprus
+10/28* Bank Holiday in Rep. of Ireland (last Monday in October)
+10/29  Republic Day in Turkey
+10/31  Nevada Day in Nevada
+11/01  All Saints Day
+11/02  All Souls Day in Bolivia, Brazil, El Salvador, Uruguay
+11/02  Memorial Day in Ecuador
+11/03  Culture Day in Japan
+11/03  Thanksgiving Day in Liberia
+11/04  Flag Day in Panama
+11/04  Will Rogers Day
+11/06  Green March Day in Morocco
+11/07  National Revolution Day
+11/11  Independence Day in Angola
+11/11  Remembrance Day in Canada
+11/11  Republic Day in Maldives
+11/15  Dynasty Day in Belgium
+11/17  Army Day in Zaire
+11/18  Independence Day in Morocco
+11/18  National Days (4 days) in Oman
+11/19  Discovery Day in Puerto Rico
+11/19  Feast Day of S.A.S. Prince Rainier in Monaco
+11/20  Revolution Day in Mexico
+11/21  Day of Prayer and Repentance in Federal Republic of Germany
+11/22  Independence Day in Lebanon
+11/23  Labor Thanksgiving Day in Japan
+11/25  Independence Day in Suriname
+11/28  Independence Day in Albania, Mauritania
+11/29  Day of the Republic (2 days) in Yugoslavia
+11/29  Goodwill Day in Liberia
+11/29  Liberation Day in Albania
+11/29  National Day in Burma
+11/30  Independence Day in Barbados, Yemen Democratic Republic
+11/30  National Day in Benin
+11/30  National Heroes Day in Philippines
+11/30  St. Andrew's Day
+12/01  Independence Day in Central African Republic
+12/01  World AIDS Day
+12/02  National Holiday in United Arab Emirates
+12/03  National Holiday in Laos
+12/06  Independence Day in Finland
+12/07  Delaware Day in Delaware
+12/07  Independence Day in Ivory Coast, Panama
+12/08  Mother's Day in Panama
+12/09  Independence Day in Tanzania
+12/10  Human Rights Day
+12/10  Thai Constitution Day in Thailand
+12/10  Wyoming Day in Wyoming
+12/11  Independence Day in Upper Volta
+12/12  Independence Day in Kenya
+12/13  Republic Day in Malta
+12/15  Statue Day in Netherlands Antilles
+12/16  Constitution Day in Nepal
+12/16  Day of the Covenant in South Africa
+12/16  National Day in Bahrain
+12/16  Victory Day in Bangladesh
+12/17  National Day in Bhutan
+12/18  Republic Day in Niger
+12/23  Victory Day in Egypt
+12/25  Children's Day in Congo
+12/26  Bank Holiday in Canada, Rep. of Ireland, and UK
+12/26  Boxing Day
+12/26  Family Day in South Africa
+12/26  St. Stephen's Day
+12/27  Bank Holiday in Cayman Islands
+12/27  Constitution Day in North Korea
+12/27  Public Holiday in Lesotho, Zimbabwe
+12/29  Civic Holidays (3 days) in Costa Rica
+12/31  Bank Holiday in El Salvador, Honduras, Pakistan
+12/31  Feed Yourself Day in Benin
+
+04/21  Tiradentes in Brazil
+04/25  Anniversary of the Revolution in Portugal
+04/29  Showa day in Japan (used to be Greenery day)
+05/04  Greenery day in Japan
+12/23  Emperor's Birthday in Japan
+04/30  Queen's Birthday in Netherlands, Netherlands Antilles
+05/02  King's Birthday in Lesotho
+05/05  Battle of Puebla in Mexico
+05/08  Buddha's Birthday in South Korea
+05/08  Elections for the National Assembly in Philippines
+05/14  Anniversary of the Founding of Guinean Democratic Party in Guinea
+
+05/25  Anniversary of the Revolution of 1810 in Argentina
+05/25  Revolution in the Sudan in Libyan Arab Republic
+05/27  Afghanistan attains sovereignty, 1921
+06/02  Corpus Christi in Paraguay
+06/03  Jefferson Davis's Birthday in Alabama & Mississippi (1st Monday)
+06/03  Jefferson Davis's Birthday in Florida, Georgia, & S. Carolina
+06/04  Queen's Birthday in New Zealand
+06/06  His Majesty, Yang Di-Pertuan Agong's Birthday in Malaysia
+06/11  Queen's Birthday
+06/12  Peace with Bolivia in Paraguay
+06/13  Corrective Movement in Yemen Arab Republic
+06/16  Bloomsday - Anniversary of Dublin events, 1904, in "Ulysses"
+06/18  Queen's Birthday in Fiji
+06/19  Artigas Birthday in Uruguay
+06/22  Corrective Movement in Yemen Democratic Republic
+06/22  Midsummer Eve in Finland, Sweden
+06/24  Battle of Carabobob in Venezuela
+07/01  Union of the Somalia Republic in Somalia
+07/07  Anniversary of the P.U.N. in Equatorial Guinea
+07/12  Battle of Boyne celebrated in Northern Ireland
+07/12  The Twelfth in Northern Ireland
+07/13  Buddhist Lent in Thailand
+07/14  Anniversary of the Revolution in Iraq
+07/17  July Revolution in Iraq
+07/17  Munoz Rivera's Birthday (celebrated in Puerto Rico)
+07/22  King's Birthday in Swaziland
+07/23  Anniversary of the Revolution in Egypt
+07/25  St. James, Patron Saint in Spain
+07/27  Barbosa's Birthday (celebrated in Puerto Rico)
+07/29  Olsok Eve in Norway to commemorate Norway's Viking King St. Olav
+08/01  Founding of Asuncion in Paraguay
+08/02  Our Lady of Los Angeles in Costa Rica
+08/03  Massacre du Pidjiguiti in Guinea-Bissau
+08/07  Battle of Boyaca in Colombia
+08/11  King Hussein's Accession to the Throne in Jordan
+08/12  Queen's Birthday in Thailand
+08/13  Proclamation of Independence in Central African Republic
+08/14  Waddi Dhahab in Morocco
+08/15  Founding of Ascuncion in Paraguay
+08/15  Santa Maria in Malta
+08/17  Anniversary of the Death of General San Martin in Argentina
+09/09  Anniversary of the Socialist Revolution (2 days) in Bulgaria
+09/10  Moon Festival in Taiwan
+09/11  Anniversary of military coup in Chile
+09/11  Ethiopian New Year in Ethiopia
+09/12  Amilcar Cabral's Birthday in Guinea-Bissau
+09/14  Battle of San Jacinto in Nicaragua
+09/15  Foundation of Panama in Panama
+09/23  Grito de Lares in Puerto Rico
+09/24  Anniversary of the Third Republic in Ghana
+09/24  Our Lady of Mercedes in Dominican Republic
+09/27  Feast of Finding the True Cross in Ethiopia
+09/29  Battle of Boqueron in Paraquay
+10/02  Anniversary of Guinean Independence in Guinea
+10/03  Chung Yeung Festival in Hong Kong
+10/03  Francisco Morazan's Birthday in Honduras
+10/05  Anniversary of Proclamation of the Republic in Portugal
+10/08  Battle of Agamos in Peru
+10/09  Independence of Guayaquil in Ecuador
+09/19* Eid-ul-Fitr (2 days) in Muslim countries
+10/17  Dessaline's Death Anniversary in Haiti
+10/20  Anniversary of the 1944 Revolution in Guatemala
+11/01  Feast of All Saints in Portugal
+11/01  Samhain; Beginning of the Celtic year and most important holiday.
+11/03  Independence from Columbia in Panama
+11/03  Independence of Cuenca in Ecuador
+11/06  Prophet Mohammed's Birthday in Malaysia
+11/07  Anniversary of Great October Revolution in Bulgaria
+11/08  Her Majesty, the Queen's Birthday in Nepal
+11/10  King's Birthday in Bhutan
+11/11  Angola gains independence from Portugal, 1975
+11/11  Independence of Cartagena in Colombia
+11/12  Prince Charles' Birthday in Fiji
+11/14  King Hussein's Birthday in Jordan
+11/15  Proclamation of the Republic in Brazil
+11/15  Thatlouang Festival in Laos
+11/16  Oklahoma Heritage Week in Oklahoma
+11/17  Corrective Movement in Syrian Arab Republic
+11/18  Battle of Viertieres in Haiti
+11/19  Anniversary of the 1968 Coup by the Army in Mali
+11/19  Garifuna Settlement in Belize
+11/19  Prince of Wales Birthday in Fiji
+11/22  Anniversary of Portuguese Aggression in Guinea
+11/24  Anniversary of the New Regime in Zaire
+11/28  Independence from Spain in Panama
+11/28  Proclamation of the Republic in Chad
+12/01  Anniversary of the Restoration of Independence in Portugal
+12/07  Prophet Mohammed's Birthday in Fiji
+12/08  Blessing of the Water in Uruguay
+12/08  Our Lady of the Cacupe in Paraguay
+12/10  Foundation of Worker's Party in Angola
+12/25  Birthday of Quaid-i-Azam in Pakistan
+12/26  Feast of Our Theotokos in Greece
+12/29  His Majesty, the King's Birthday in Nepal
+12/30  Anniversary of the Democratic Republic of Madagascar in Madagascar
+12/31  Proclamation of the Republic in Congo
+07/20  Ocean Day in Japan
diff --git a/usr.bin/calendar/calendars/calendar.judaic b/usr.bin/calendar/calendars/calendar.judaic
new file mode 100644 (file)
index 0000000..f53ac7c
--- /dev/null
@@ -0,0 +1,27 @@
+01/26*  Tu B'Shvat (Feast of Trees)
+02/22* Fast of Esther (Battle of Purim; 1 day before Purim; fast day)
+02/23* Purim (Feast of Lots; 30 days before Pesach)
+03/25* Pesach (First Day of Passover; sabbatical)
+03/26* Pesach (sabbatical)
+03/27* Pesach (sabbatical)
+03/28* Pesach (Last Day of Passover; 8th day of Pesach; sabbatical)
+04/16* Yom HaAtzma'ut (Israel Independence Day)
+05/12* Lag B'Omer (Commemoration of the Great Rebellion)
+05/22* Yom Yerushalayim (Reunification of Jerusalem)
+05/29* Shavuos (Festival of Weeks; 50 days after Pesach; sabbatical)
+07/09* Fast of Shiv'a Asar B'Tammuz (Tzom Tammuz) (Romans breach Wall of Jerusalem;
+       fast day)
+07/30* Fast of Tish'a B'Av (Babylon/Rome destroys Holy Temple; fast day)
+09/19* First Day of Rosh Hashanah (Jewish Lunar New Year; 5767 == 2006;
+       sabbatical)
+09/04* Rosh Hashanah (sabbatical)
+09/05* Fast of Gedalya (Murder of Gedalya and subsequent Exile; 1 day
+       after Rosh Hashanah; fast day)
+09/13* Yom Kippur (Day of Atonement; 9 days after Rosh Hashanah;
+       sabbatical, fast day)
+09/28* Succos (Festival of Tabernacles; 14 days after Rosh Hashanah;
+       sabbatical)
+10/04* Hoshanah Rabba (7th day of Succos)
+10/15* Shmini Atzeres (8th Day of Gathering; 1 day after Succos; sabbatical)
+12/12* First Day of Chanukah
+12/27* Fast of Asara B'Tevet (Babylonians put siege on Jerusalem; fast day)
diff --git a/usr.bin/calendar/calendars/calendar.lotr b/usr.bin/calendar/calendars/calendar.lotr
new file mode 100644 (file)
index 0000000..4523f02
--- /dev/null
@@ -0,0 +1,37 @@
+01/05  Fellowship enters Moria (LOTR)
+01/09  Fellowship reaches Lorien (LOTR)
+01/17  Passing of Gandalf (LOTR)
+02/07  Fellowship leaves Lorien (LOTR)
+02/17  Death of Boromir (LOTR)
+02/20  Meriadoc & Pippin meet Treebeard (LOTR)
+02/22  Passing of King Elessar (LOTR)
+02/24  Ents destroy Isengard (LOTR)
+02/26  Aragorn takes the Paths of the Dead (LOTR)
+03/05  Frodo & Samwise encounter Shelob (LOTR)
+03/08  Deaths of Denethor & Theoden (LOTR)
+03/18  Destruction of the Ring (LOTR)
+03/29  Flowering of the Mallorn (LOTR)
+04/04  Gandalf visits Bilbo (LOTR)
+04/17  An unexpected party (LOTR)
+04/23  Crowning of King Elessar (LOTR)
+05/19  Arwen leaves Lorien to wed King Elessar (LOTR)
+06/11  Sauron attacks Osgilliath (LOTR)
+06/13  Bilbo returns to Bag End (LOTR)
+06/23  Wedding of Elessar & Arwen (LOTR)
+07/04  Gandalf imprisoned by Saruman (LOTR)
+07/24  The ring comes to Bilbo (LOTR)
+07/26  Bilbo rescued from Wargs by Eagles (LOTR)
+08/03  Funeral of King Theoden (LOTR)
+08/29  Saruman enters the Shire (LOTR)
+09/10  Gandalf escapes from Orthanc (LOTR)
+09/14  Frodo & Bilbo's birthday (LOTR)
+09/15  Black riders enter the Shire (LOTR)
+09/18  Frodo and company rescued by Bombadil (LOTR)
+09/28  Frodo wounded at Weathertop (LOTR)
+10/05  Frodo crosses bridge of Mitheithel (LOTR)
+10/16  Boromir reaches Rivendell (LOTR)
+10/17  Council of Elrond (LOTR)
+10/25  End of War of the Ring (LOTR)
+11/16  Bilbo reaches the Lonely Mountain (LOTR)
+12/05  Death of Smaug (LOTR)
+12/16  Fellowship begins Quest (LOTR)
diff --git a/usr.bin/calendar/calendars/calendar.music b/usr.bin/calendar/calendars/calendar.music
new file mode 100644 (file)
index 0000000..f004446
--- /dev/null
@@ -0,0 +1,184 @@
+01/01  Country Joe McDonald is born in El Monte, California, 1942
+01/03  Steven Stills is born in Dallas, 1945
+01/04  Jazz great Charlie Mingus dies at 57 in Cuernavaca, Mexico, 1979
+01/08  David Bowie (then David Robert Jones) is born in London, 1947
+01/09  James Patrick Page (Led Zeppelin) is born in Middlesex, England, 1945
+01/10  Blues guitarist Howlin' Wolf dies in Chicago, 1976
+01/10  Jim Croce is born in Philadelphia, 1943
+01/10  Pat Benatar is born in Long Island, 1952
+01/10  Rod Stewart is born in Glasgow, Scotland, 1945
+01/13  Eric Clapton plays the "Rainbow Concert" in London, 1973
+01/17  Led Zeppelin's first album is released, 1969
+01/19  Janis Joplin is born in Port Arthur, Texas, 1943
+01/22  Sam Cooke is born in Chicago, 1935
+01/23  Samuel Barber died, 1981
+01/24  Warren Zevon is born, 1947
+01/25  Bob Dylan plays the second "Hurricane" benefit, in the Astrodome, 1978
+01/27  Bobby "Blue" Bland (Robert Calvin Bland) is born in Tennessee, 1930
+01/27  Wolfgang Amadeus Mozart born in Salzburg, 1756
+01/28  Jimi Hendrix headlines Madison Square Garden, 1970
+01/30  Lightnin' Hopkins, the most-recorded blues artist ever, dies, 1982
+01/31  The Grateful Dead are busted in New Orleans, 1970
+02/01  RCA Victor unveils the 45 rpm record playing system, 1949
+02/02  Graham Nash is born in Lancashire, England, 1942
+02/03  The Day The Music Died; Buddy Holly, Richie Valens, and the Big
+       Bopper are killed in a plane crash outside Mason City, Iowa, 1959
+02/07  Beatles land at JFK airport to begin first U.S. tour, 1964
+02/07  Steven Stills makes the first digitally recorded rock album, 1979
+02/08  John Towner Williams born in New York City, 1932; composer
+       well-known for his many motion picture and television scores
+02/09  Carole King (Carole Klein) is born in Brooklyn, 1941
+02/12  The Beatles play Carnegie Hall in New York City, 1964
+02/17  Jazz great Thelonius Monk dies in Englewood, New Jersey, 1982
+02/18  Yoko Ono Lennon is born in Tokyo, 1933
+02/19  Paul McCartney's "Give Ireland Back to the Irish" is banned in
+       Britain, 1972
+02/19  William "Smokey" Robinson is born in Detroit, 1940
+02/20  J. Geils (J. Geils Band) is born, 1946
+02/20  Yes sells out Madison Square Garden...without advertising, 1974
+02/23  George Frideric Handel born, 1685
+02/23  Johnny Winter is born in Leland, Mississippi, 1944
+02/29  Jimmy Dorsey born, 1904
+03/01  Jim Morrison is busted for obscenity in Miami, 1969
+03/02  Blues guitarist Rory Gallagher is born in Ballyshannon, Ireland, 1949
+03/03  Buffalo Springfield is formed in Los Angeles, 1966
+03/04  Antonio Vivaldi born in Venice, Italy, 1678
+03/07  Last Gilbert & Sullivan opera produced, 1896
+03/08  Ron "Pigpen" McKernan (Grateful Dead) dies in California, 1973
+03/09  Robin Trower is born in London, 1945
+03/09  Samuel Barber is born in West Chester, Pennsylvania, 1910
+03/13  The Allman Brothers record their live album at the Fillmore East, 1971
+03/15  Sly Stone born, 1944
+03/17  Paul Kantner (Jefferson Airplane) is born in San Francisco, 1942
+03/21  Johann Sebastian Bach born in Eisenach, Germany, 1685
+03/22  Ten Years After plays their last concert, 1974
+03/25  Aretha Franklin is born in Detroit, 1943
+03/26  Emerson, Lake, and Palmer record "Pictures at an Exhibition" live, 1971
+03/29  Dr. Hook gets a group picture on the cover of "Rolling Stone", 1973
+03/30  Eric Clapton is born in Surrey, England, 1945
+04/02  Marvin Gaye is born in Washington, D.C., 1939
+04/04  Muddy Waters (McKinley Morganfield) is born in Rolling Fork,
+       Mississippi, 1915
+04/09  Paul Robeson born, 1898
+04/10  Paul McCartney announces he's quitting the Beatles, 1970
+04/14  Ritchie Blackmore (Deep Purple, Rainbow) is born, 1945
+04/18  Yes breaks up after 13 years, 1981
+04/25  Blues guitarist Albert King is born, 1925
+04/25  Ella Fitzgerald born, 1918
+04/26  Carol Burnett born in San Antonio, Texas, 1933
+04/29  "Hair" premiers on Broadway, 1968
+05/01  Kate Smith born, 1909
+05/03  Bob Seger is born in Ann Arbor, Michigan, 1945
+05/07  Johannes Brahms born in Hamburg, 1833
+05/07  Peter Ilyich Tchaikovsky born, 1840
+05/10  Dave Mason is born in Worcester, England, 1945
+05/11  Bob Marley dies in his sleep in Miami, 1981
+05/12  Pink Floyd performs the first quadraphonic concert, 1977
+05/18  Rick Wakeman is born in West London, England, 1949
+05/19  Pete Townshend is born in London, 1945
+05/20  The Jimi Hendrix Experience is signed by Reprise Records, 1967
+05/23  Blues great Elmore James dies, 1963
+05/24  Bob Dylan (Robert Zimmerman) is born in Duluth, 1941
+05/26  Al Jolson born, 1886
+05/31  The Who perform the loudest concert ever -- 76,000 watts of PA, 1976
+06/01  The Beatles release "Sgt. Pepper", 1967
+06/02  Edward Elgar (Sir) born in Worcester, England, 1857
+06/06  "Rock Around The Clock" makes Billboard's \#1 slot, 1955
+06/07  Blind Faith debuts in concert at London's Hyde Park, 1969
+06/09  Les Paul (Lester Polfus) is born in Waukesha, Wisconsin, 1923
+06/10  Howlin' Wolf (Chester Burnett) is born in West Point, Mississippi, 1910
+06/10  Judy Garland born, 1922
+06/15  Harry Nilsson is born in Brooklyn, 1941
+06/16  The Monterey Pop festival opens, 1967
+06/18  Paul McCartney born in Liverpool, England, 1942
+06/21  Columbia records announces the first mass production of LPs, 1948
+06/22  Todd Rundgren is born in Upper Darby, Pennsylvania, 1948
+06/24  Jeff Beck is born in Surrey, England, 1944
+07/02  Felix Pappalardi and Leslie West form Mountain, 1969
+07/03  Jim Morrison dies in Paris, 1971
+07/06  The Jefferson Airplane is formed in San Francisco, 1965
+07/07  Ringo Starr (Richard Starkey) born in Liverpool, England, 1940
+07/12  Chicago DJ Steve Dahl holds "Disco Demolition" at Comiskey Park, 1979
+07/14  Woodie Guthrie born, 1912
+07/16  Cream forms in the U.K., 1966
+07/16  Harry Chapin dies on Long Island Expressway, 1981
+07/17  "Yellow Submarine" premieres at the London Pavilon, 1968
+07/20  Carlos Santana is born in Autlan, Mexico, 1947
+07/25  Bob Dylan goes electric at the Newport Folk Festival, 1965
+07/25  Crosby, Stills, Nash & Young debut at the Fillmore East, 1969
+07/26  Mick Jagger is born in Kent, England, 1943
+07/28  Bach dies, 1750
+07/28  The Watkins Glen "Summer Jam" opens, 1973
+08/01  Birth of Jerome "Jerry" Garcia (Grateful Dead), 1942
+08/01  The Concert for Bangladesh takes place at Madison Square Garden, 1971
+08/04  John Lennon points out "the Beatles are more popular than Jesus", 1966
+08/09  Death of Jerome "Jerry" Garcia (Grateful Dead), 1995
+08/10  Ian Anderson (Jethro Tull) is born in Edinburgh, Scotland, 1947
+08/13  Dan Fogelberg is born in Peoria, Illinois, 1951
+08/15  Beatles replace drummer Pete Best with Richard Starkey, 1962
+08/15  The Beatles play Shea Stadium in New York, 1965
+08/15  Woodstock Festival, Max Yasgur's farm, 1969
+08/26  Jimi Hendrix gives his last performance at the Isle of Wight, 1970
+08/26  Jimi Hendrix's Electric Ladyland Studios opens in New York, 1970
+08/27  Stevie Ray Vaughan dies in a helicopter crash, 1990
+09/07  Keith Moon (The Who) dies in London of a drug overdose, 1978
+09/08  Anton Dvorak born in Nelahozeves, Czechoslovakia, 1841
+09/08  Ron "Pigpen" McKernan (Grateful Dead) is born in San Bruno,
+       California, 1945
+09/14  Francis Scott Key writes words to "Star Spangled Banner", 1814
+09/16  B.B. King is born in Itta Bena, Mississippi, 1925
+09/18  Jimi Hendrix dies of an overdose, 1970
+09/19  Simon & Garfunkel reunite to play New York's Central Park, 1981
+09/20  Jim Croce dies in a plane crash, 1973
+09/23  "Paul is dead" rumors sweep the country, 1969
+09/23  Bruce "The Boss" Springsteen is born in Freehold, New Jersey, 1949
+09/25  John Bonham (Led Zeppelin) dies of alcohol poisoning, 1980
+09/26  George Gershwin born in Brooklyn, NY, 1898
+10/03  Stevie Ray Vaughan born in Dallas, TX, 1954
+10/04  Janis Joplin dies of a heroin overdose in Hollywood, 1970
+10/05  Steve Miller is born in Dallas, 1943
+10/07  First Bandstand (later, American Bandstand) broadcast, 1957
+10/09  John Lennon born in Liverpool, England, 1940
+10/10  John Prine is born in Maywood, Illinois, 1946
+10/12  The Jimi Hendrix Experience is formed in London, 1966
+10/16  Bob Weir (Grateful Dead) is born in San Francisco, 1947
+10/17  "Hair" opens at New York's Public Theater, 1967
+10/18  Chuck Berry is born in St. Louis, Missouri, 1926
+10/20  Three members of Lynyrd Skynyrd die in a plane crash, 1977
+10/22  Franz Liszt born, 1811
+10/25  Jon Anderson (Yes) is born in Lancashire, England, 1944
+10/25  The Rolling Stones appear on The Ed Sullivan Show, 1964
+10/29  Duane Allman dies in motorcycle crash near Macon, Georgia, 1971
+10/30  Grace Slick is born in Chicago, 1939
+11/02  Jimi Hendrix's "Electric Ladyland" enters US charts at \#1, 1968
+11/02  Keith Emerson is born, 1944
+11/03  James Taylor and Carly Simon are married in Manhattan, 1972
+11/07  Joni Mitchell (Roberta Joan Anderson) is born in Alberta, Canada, 1943
+11/08  Patti Page born, 1927
+11/09  The first issue of "Rolling Stone" is published, 1967
+11/10  Greg Lake is born in Bournemouth, England, 1948
+11/12  Neil Young is born in Toronto, 1945
+11/13  Paul Simon born, 1942
+11/16  Bill Ham first demonstrates his psychedelic "Light Show", 1965
+11/20  Duane Allman is born in Nashville, Tennessee, 1946
+11/20  Joe Walsh is born in Cleveland, 1947
+11/24  Scott Joplin born, 1868
+11/25  "The Last Waltz" concert is played by The Band at Winterland, 1976
+11/25  Johann Strauss, Jr., writes `On the Beautiful Blue Danube', 1867
+11/26  Cream performs their farewell concert at Royal Albert Hall, 1968
+11/27  Jimi Hendrix (Johnny Allen Hendrix) is born in Seattle, 1942
+12/05  Mozart dies, 1791
+12/06  First sound recording made by Thomas Edison, 1877
+12/06  The Rolling Stones play Altamont Speedway near San Francisco, 1969
+12/07  Harry Chapin is born in New York City, 1942
+12/08  Jim Morrison is born in Melbourne, Florida, 1943
+12/08  John Lennon is shot and killed in New York City, 1980
+12/09  The Who's "Tommy" premieres in London, 1973
+12/13  Ted Nugent, the motor city madman, born in Detroit, 1949
+12/15  Thomas Edison receives patent on the phonograph, 1877
+12/16  Ludwig van Beethoven born in Bonn, Germany, 1770
+12/16  Don McLean's "American Pie" is released, 1971
+12/21  Frank Zappa is born in Baltimore, 1940
+12/23  First G&S collaboration, Thespis, 1871
+12/28  Edgar Winter is born in Beaumont, Texas, 1946
+12/31  Jimi Hendrix introduces the Band of Gypsies at the Fillmore East, 1969
diff --git a/usr.bin/calendar/calendars/calendar.netbsd b/usr.bin/calendar/calendars/calendar.netbsd
new file mode 100644 (file)
index 0000000..2f88be0
--- /dev/null
@@ -0,0 +1,104 @@
+01/04   NetBSD 1.3 released, 1998
+01/05   NetBSD/luna68k port started, 2000
+01/07   NetBSD/dreamcast port started, 2001
+01/17   NetBSD/hpcsh port started, 2001
+01/23   NetBSD/arc port started, 2000
+01/31   NetBSD/shark port started, 1996
+02/02  NetBSD 5.1.2 released, 2012
+02/06   NetBSD/evbsh3 port started, 2001
+02/11   NetBSD/sandpoint port started, 2001
+02/12  NetBSD 5.0.2 released, 2010
+02/13   NetBSD/alpha port started, 1995
+02/18   NetBSD/newsmips port started, 1998
+02/20   NetBSD/hpcarm port started, 2001
+02/27   NetBSD/mvmeppc, port started, 2002
+02/29   NetBSD/prep port started, 2000
+03/01   NetBSD 1.6.2 released, 2004
+03/06   NetBSD/sbmips port started, 2002
+03/07   NetBSD/evbmips port started, 2002
+03/08   pkgsrc/Solaris support added, 1999
+03/09   NetBSD 1.3.1 released, 1998
+03/11   NetBSD/xen port started, 2004
+03/11   pkgsrc/Interix support added, 2004
+03/19   NetBSD/cobalt port started, 2000
+03/21   NetBSD 1.4.2 released, 2000
+03/21   NetBSD/i386 port started, 1993
+03/26   NetBSD/atari port started, 1995
+03/28   NetBSD/sun2 port started, 2001
+04/14   NetBSD 2.0.2 released, 2005
+04/20   NetBSD 0.8 released, 1993
+04/21   NetBSD 1.6.1 released, 2003
+04/29   NetBSD 5.0 released, 2009
+05/05   NetBSD/x68k port started, 1996
+05/09   NetBSD/acorn26 port started, 2000
+05/12   NetBSD 1.4 released, 1999
+05/12   NetBSD/hp300 port started, 1993
+05/14   NetBSD/cesfic port started, 2001
+05/15   NetBSD/macppc port started, 1998
+05/20   NetBSD 1.2.1 released, 1997
+05/25   NetBSD/amigappc port started, 2000
+05/28   NetBSD/algor port started, 2001
+05/28   NetBSD/ofppc port started, 1998
+05/29   NetBSD 1.3.2 released, 1998
+05/31   NetBSD/pmppc port started, 2002
+06/05   NetBSD gets its own package system, 1997
+06/06   NetBSD/hp700 port started, 2002
+06/09   NetBSD/netwinder port started, 2001
+06/09   NetBSD/next68k port started, 1998
+06/13   NetBSD/walnut port started, 2001
+06/14   NetBSD/sgimips port started, 2000
+06/19   NetBSD/x86_64 port started, 2001
+06/20   NetBSD/sparc64 port started, 1998
+06/23   pkgsrc/Linux support added, 1999
+06/25   NetBSD/sun3 port started, 1993
+07/05   NetBSD/evbsh5 port started, 2002
+07/11   NetBSD 1.5.1 released, 2001
+07/22   NetBSD 1.5.3 released, 2002
+07/24  NetBSD 3.0.1 released, 2006
+07/25   NetBSD/mvme68k port started, 1995
+08/02  NetBSD 5.0.1 released, 2009
+08/02   NetBSD/vax port started, 1994
+08/12   NetBSD/mipsco port started, 2000
+08/20   pkgsrc forked from FreeBSD Ports, 1997
+08/23   NetBSD 0.9 released, 1993
+08/26   NetBSD 1.4.1 released, 1999
+09/02   NetBSD/amiga port started, 1993
+09/05   NetBSD/evbarm port started, 2001
+09/09   NetBSD/pc532 port started, 1993
+09/13   NetBSD 1.5.2 released, 2001
+09/14   NetBSD 1.6 released, 2002
+09/25   NetBSD/hpcmips port started, 1999
+09/29   NetBSD/mac68k port started, 1993
+10/02   NetBSD/sparc port started, 1993
+10/04   NetBSD 1.2 released, 1996
+10/05   NetBSD/cats port started, 1998
+10/12   NetBSD/pmax port started, 1993
+10/13   NetBSD/iyonix port started, 2004
+10/14  NetBSD 4.0.1 released, 2008
+10/14   NetBSD/bebox port started, 1997
+10/16   NetBSD/playstation2 port started, 2001
+10/26   NetBSD 1.0 released, 1994
+10/30   pkgsrc/Darwin support added, 2001
+10/31  NetBSD 2.0.3 released, 2005
+11/02   NetBSD 2.1 released, 2005
+11/04  NetBSD 3.0.2 released, 2006
+11/04   NetBSD 3.1 released, 2006
+11/17   pkgsrc/FreeBSD support added, 2002
+11/18   NetBSD/acorn32 port started, 2001
+11/19  NetBSD 5.1 released, 2010
+11/20   pkgsrc/OSF1 support added, 2004
+11/25   NetBSD 1.4.3 released, 2000
+11/26   NetBSD 1.1 released, 1995
+11/30   pkgsrc/OpenBSD support added, 2002
+12/02   pkgsrc/IRIX support added, 2002
+12/03   pkgsrc/AIX support added, 2003
+12/03   pkgsrc/BSDI support added, 2003
+12/06   NetBSD 1.5 released, 2000
+12/09   NetBSD 2.0 released, 2004
+12/09   NetBSD/news68k port started, 1999
+12/09   NetBSD/evbppc port started, 2002
+12/17   NetBSD/zaurus port started, 2006
+12/19   NetBSD 4.0 released, 2007
+12/23   NetBSD 1.3.3 released, 1998
+12/23   NetBSD 3.0 released, 2005
+12/29   NetBSD/ews4800mips port started, 2005
diff --git a/usr.bin/calendar/calendars/calendar.usholiday b/usr.bin/calendar/calendars/calendar.usholiday
new file mode 100644 (file)
index 0000000..09e0338
--- /dev/null
@@ -0,0 +1,31 @@
+01/01  New Year's Day
+01/14  Julian Calendar New Year's Day
+02/02  Groundhog Day
+02/14  St. Valentine's Day
+02/18* President's Day (3rd Monday of February)
+03/05  Mother-in-Law Day
+03/17  St. Patrick's Day
+03/20* Vernal Equinox
+04/01  April Fool's Day
+04/15  Income Tax Day
+03/10* Daylight Savings Time begins; clocks move forward (2nd Sunday of March)
+04/28* Arbor Day (varies from state to state)
+05/12* Mother's Day (2nd Sunday of May)
+05/18* Armed Forces Day (3rd Saturday of May)
+05/27* Memorial Day (Last Monday of May)
+06/16* Father's Day (3rd Sunday of June)
+06/21* Summer Solstice
+07/04  Independence Day
+09/02* Labor Day (1st Monday of September)
+09/08* Grandparent's Day (2nd Sunday of September; varies from state to state)
+09/22* Autumnal Equinox
+10/14* Columbus Day (2nd Monday of October)
+11/03* Daylight Savings Time ends; clocks move back (First Sunday in November)
+10/31  All Hallows Eve  (Halloween)
+11/04* Election Day (1st Tuesday after 1st Monday for even years)
+11/11  Veterans' Day
+11/28* Thanksgiving Day (Fourth Thursday in November)
+12/21* Winter Solstice
+12/24  Christmas Eve
+12/25  Christmas
+12/31  New Year's Eve
diff --git a/usr.bin/calendar/pathnames.h b/usr.bin/calendar/pathnames.h
new file mode 100644 (file)
index 0000000..1f334a0
--- /dev/null
@@ -0,0 +1,38 @@
+/*     $NetBSD: pathnames.h,v 1.6 2004/12/07 16:47:32 jwise Exp $      */
+
+/*
+ * Copyright (c) 1989, 1993
+ *     The Regents of the University of California.  All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in the
+ *    documentation and/or other materials provided with the distribution.
+ * 3. Neither the name of the University nor the names of its contributors
+ *    may be used to endorse or promote products derived from this software
+ *    without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
+ * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+ * ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
+ * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+ * SUCH DAMAGE.
+ *
+ *     @(#)pathnames.h 8.1 (Berkeley) 6/6/93
+ */
+
+#include <paths.h>
+
+#define        _PATH_CPP       "/usr/bin/cpp"
+#define        _PATH_CALENDARS "/usr/share/calendar"
+#define _PATH_SYSTEM_CALENDAR  "/etc/calendar"