#!/bin/sh

usage () {
    echo usage: $0 [-13smjyV] [[month] year]
    exit 1
}

OPT=""
CURYEAR=
while [ $# -gt 0 ]
do
    case $1 in
        -y) CURYEAR="present"; OPT="$OPT $1";;
        -*) OPT="$OPT $1";;
         *) break;;
    esac
    shift
done

case $# in
    0) if [ -z $CURYEAR ]
       then
            set $(date | tr [A-Z] [a-z]); MONTH=$2; YEAR=$6
       fi;;
    1) MONTH=$(echo $1 | tr [A-Z] [a-z]);
       case $MONTH in
           [0-9]*) YEAR=$MONTH; MONTH= ;;
                *) set $(date | tr [A-Z] [a-z]); YEAR=$6;;
       esac;;
    2) MONTH=$(echo $1 | tr [A-Z] [a-z]); YEAR=$2;;
    *) usage;;
esac

case $MONTH in
    jan) MONTH=1;;
    feb) MONTH=2;;
    mar) MONTH=3;;
    apr) MONTH=4;;
    may) MONTH=5;;
    jun) MONTH=6;;
    jul) MONTH=7;;
    aug) MONTH=8;;
    sep) MONTH=9;;
    oct) MONTH=10;;
    nov) MONTH=11;;
    dec) MONTH=12;;
    [0-9]*|"") ;;
    *) echo "cal: illegal month name";
       echo "use: jan, feb, mar, apr, may, jun, jul, aug, sep, oct, nov, dec";
       exit 1;;
esac

/usr/bin/cal $OPT $MONTH $YEAR


