.\" Copyright (c) 1989, 1990, 1993
.\"	The Regents of the University of California.  All rights reserved.
.\"
.\" This code is derived from software contributed to Berkeley by
.\" Kim Letkeman.
.\"
.\" 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. All advertising materials mentioning features or use of this software
.\"    must display the following acknowledgement:
.\"	This product includes software developed by the University of
.\"	California, Berkeley and its contributors.
.\" 4. 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.
.\"
.\"     @(#)cal.1	8.1 (Berkeley) 6/6/93
.\"
.Dd June 6, 1993
.Dt CAL 1
.Os
.Sh NAME
.Nm cal
.Nd displays a calendar
.Sh SYNOPSIS
.Nm cal
.Op Fl smjy13
.Op [ [ Ar day ] Ar month ] Ar year
.Sh DESCRIPTION
.Nm Cal
displays a simple calendar.
If arguments are not specified,
the current month is displayed.
The options are as follows:
.Bl -tag -width Ds
.It Fl 1
Display single month output.
(This is the default.)
.It Fl 3
Display prev/current/next month output.
.It Fl s
Display Sunday as the first day of the week.
.It Fl m
Display Monday as the first day of the week.
.It Fl j
Display Julian dates (days one-based, numbered from January 1).
.It Fl y
Display a calendar for the current year.
.It Fl V
Display version information and exit.
.El
.Pp
A single parameter specifies the year (1 - 9999) to be displayed;
note the year must be fully specified:
.Dq Li cal 89
will
.Em not
display a calendar for 1989.
Two parameters denote the month (1 - 12) and year.
Three parameters denote the day (1-31), month and year,
and the day will be highlighted if the calendar is displayed on a terminal.
If no parameters are specified, the current month's calendar is
displayed.
.Pp
A year starts on Jan 1. The first day of the week is determined by the locale.
.Pp
The Gregorian Reformation is assumed to have occurred in 1752 on the 3rd
of September.
By this time, most countries had recognized the reformation (although a
few did not recognize it until the early 1900's.)
Ten days following that date were eliminated by the reformation, so the
calendar for that month is a bit unusual.
.Sh HISTORY
A
.Nm
command appeared in Version 6 AT&T UNIX.
.Sh OTHER VERSIONS
Several much more elaborate versions of this program exist,
with support for colors, holidays, birthdays, reminders and
appointments, etc. For example, try the cal from
http://home.sprynet.com/~cbagwell/projects.html
or GNU gcal.
.Sh AVAILABILITY
The cal command is part of the util-linux-ng package and is available from
ftp://ftp.kernel.org/pub/linux/utils/util-linux-ng/.
