Path: utzoo!attcan!uunet!seismo!sundc!pitstop!sun!decwrl!labrea!rutgers!columbia!douglass!dupuy From: dupuy@douglass.columbia.edu (Alexander Dupuy) Newsgroups: comp.lang.postscript Subject: Re: A REAL PostScript calendar... Message-ID: <5887@columbia.edu> Date: 16 Sep 88 16:55:28 GMT References: <8809161531.AA21589@decwrl.dec.com> Sender: news@columbia.edu Reply-To: dupuy@douglass.columbia.edu (Alexander Dupuy) Followup-To: comp.lang.postscript Organization: Columbia University Computer Science Dept. Lines: 447 Well, since you asked... (This is _not_ a shar file) ______________________________________________________________________________ #!/bin/sh - # # PostScript program to print calendars. # Doesn't deal well with September 1752 or before. # # set ENVAR to PRINTER for BSD spooler, LPDEST for USG spooler ENVAR=PRINTER PATH=/usr/ucb:/bin:/usr/bin eval test \$$ENVAR || eval $ENVAR=PostScript export $ENVAR USAGE="Usage: pscal [ -Rrt ] [ -F hfont ] [ -f font ] [ month [ year ] ]" TFONT=Times-Bold DFONT=Helvetica-Bold ROTATE=90 LPR=lpr while test $# != 0 do case $1 in -P) test $# -lt 2 && { echo "$USAGE" 1>&2; exit 1; } eval $ENVAR="$2"; shift 2;; -P*) eval $ENVAR=`echo $1 | sed -n 1s/-.//p`; shift 1;; -F) test $# -lt 2 && { echo "$USAGE" 1>&2; exit 1; } TFONT="$2"; shift 2;; -F*) TFONT=`echo $1 | sed -n 1s/-.//p`; shift 1;; -f) test $# -lt 2 && { echo "$USAGE" 1>&2; exit 1; } DFONT="$2"; shift 2;; -f*) DFONT=`echo $1 | sed -n 1s/-.//p`; shift 1;; -t) LPR=cat; shift 1;; -r) ROTATE=90; shift 1;; -R) ROTATE=0; shift 1;; --|-) break;; -*) echo "$USAGE" 1>&2; exit 1;; *) break esac done test $# -gt 2 && { echo "$USAGE" 1>&2; exit 1; } case $# in 0) set `date`; YEAR=$6 MONTH=`case $2 in Jan) echo 1;;Feb) echo 2;;Mar) echo 3;;Apr) echo 4;; May) echo 5;;Jun) echo 6;;Jul) echo 7;;Aug) echo 8;; Sep) echo 9;;Oct) echo 10;;Nov) echo 11;;Dec) echo 12;;esac`;; 1) MONTH=$1; set `date`; YEAR=$6;; 2) MONTH=$1 YEAR=$2;; esac test $YEAR -lt 100 && YEAR=`expr $YEAR + 1900` $LPR <