date and time created 81/02/28 20:45:55 by wnj
authorBill Joy <wnj@ucbvax.Berkeley.EDU>
Sun, 1 Mar 1981 12:45:55 +0000 (04:45 -0800)
committerBill Joy <wnj@ucbvax.Berkeley.EDU>
Sun, 1 Mar 1981 12:45:55 +0000 (04:45 -0800)
SCCS-vsn: usr.bin/calendar/calendar.c 4.1

usr/src/usr.bin/calendar/calendar.c [new file with mode: 0644]

diff --git a/usr/src/usr.bin/calendar/calendar.c b/usr/src/usr.bin/calendar/calendar.c
new file mode 100644 (file)
index 0000000..60bcead
--- /dev/null
@@ -0,0 +1,53 @@
+static char *sccsid = "@(#)calendar.c  4.1 (Berkeley) 81/02/28";
+/* /usr/lib/calendar produces an egrep -f file
+   that will select today's and tomorrow's
+   calendar entries, with special weekend provisions
+
+   used by calendar command
+*/
+#include <time.h>
+
+#define DAY (3600*24L)
+
+char *month[] = {
+       "[Jj]an",
+       "[Ff]eb",
+       "[Mm]ar",
+       "[Aa]pr",
+       "[Mm]ay",
+       "[Jj]un",
+       "[Jj]ul",
+       "[Aa]ug",
+       "[Ss]ep",
+       "[Oo]ct",
+       "[Nn]ov",
+       "[Dd]ec"
+};
+struct tm *localtime();
+
+tprint(t)
+long t;
+{
+       struct tm *tm;
+       tm = localtime(&t);
+       printf("(^|[ (,;])((%s[^ ]* *|%d/)0*%d)([^0123456789]|$)\n",
+               month[tm->tm_mon], tm->tm_mon + 1, tm->tm_mday);
+}
+
+main()
+{
+       long t;
+       time(&t);
+       tprint(t);
+       switch(localtime(&t)->tm_wday) {
+       case 5:
+               t += DAY;
+               tprint(t);
+       case 6:
+               t += DAY;
+               tprint(t);
+       default:
+               t += DAY;
+               tprint(t);
+       }
+}