logo
Free, unlimited AI code reviews that run on commit
git-lrc git-lrc GitHub Install Now We'd appreciate a star git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt

birthday - warn about upcoming birthdays and other events

Author

       Andy Mortimer <andy.mortimer@zetnet.co.uk>

                                                                                                     birthday(1)

Bugs

       Both the "features" in the DATESPECIFICATION section could be construed as bugs, and are mostly  present
       for backwards compatibility.

       The calendar mode should be a seperate program.

       The program cannot warn more than one year in advance of anything.

Date Specification

       The  file  format  documented here handles dates in a couple of slightly non-standard ways.  Firstly, the
       dates are given in British format of DD/MM/YYYY, as opposed to the more normal US format MM/DD/YYYY.

       Secondly, dates with a two-digit year are assumed to be in the 20th century (19xx),  rather  than  taking
       the  standard  convention  of assuming all two-digit years less than 70 are in the 21st century.  This is
       for reasons of compatibility with older data files, since many people have birthdays before 1970, and the
       program was written before I came across the Y2K issues. :-(  You should probably avoid this format.

Description

       The birthday command reads a file, by default ~/.birthdays, which gives a list  of  events  in  the  near
       future  (see  section  FILEFORMAT  for  details). It can then produce either a list of events which are
       coming up within the next few weeks, or a text-based calendar with a few lines for each day.

Example

       Joe Blow=25/04/1974

File Format

       Each  line  beginning  with  a  hash sign, `#', is a comment and will be ignored. Lines beginning with an
       ampersand, `&', are directives. Currently there is only one such directive, &includefile, which reads in
       a seperate file from your .birthdays file.  file should be given with an absolute path, which should  not
       use the tilde notation to specify your home directory.

       Any  other  line  specifies  the  name  of  a  person  or  event,  followed  by an equals sign and a date
       (DD/MM, DD/MM/YY or DD/MM/YYYY, where the form DD/MM/YY is assumed to give a date in the 20th century and
       is now deprecated), and finally some extra options. These options are:

       bd     This line is a birthday (the default). The year, if given, should be when the person was  born.  A
              line  designated  as  a  birthday  will produce output like Erinhasabirthdayin3days'time or
              Jemimais3in2weeks'time.

       ann    This line is an anniversary. The year, if given, should be the year in which the  thing  happened,
              producing output like Penexploded3yearsagotomorrow given a line such as Penexploded=12/09/93ann.

       ev     This  line  is  an event of some sort. If a year is given, the text will be displayed in that year
              only; otherwise, it will be displayed every year. The remaining time is  simply  appended  to  the
              text;  for  instance,  the input Easter=7/4/1996ev would give rise to the text Easterin1week'stime.

       wn     Warn n days in advance of the date, rather than the default of 21 days or the  number  given  with
              the -W flag.

       todate The event lasts until date, which should be in the same format as for the date of the event.

       fordays
              The event lasts for days days.

Files

~/.birthdays
              Your default birthdays file.

Name

       birthday - warn about upcoming birthdays and other events

Options

-w     Display a list of upcoming events. This is the default.

       -c     Display a calendar, designed to be piped to lpr(1).

       -ffile
              Read the events from file rather than ~/.birthdays.  If file is a single hyphen, read  the  events
              from the standard input (usually the terminal).

   ListOptions-Wwarn
              Warn  warn  days in advance, for entries that have no w flag (see FILEFORMAT).  If this switch is
              not specified, it defaults to 21 days.

       -Mmax Warn at most max days in advance. This overrides any flag given in the file.

       -mmin Warn at least min days in advance. This overrides any flag given in the file.

       -L     Also output the day and name of month after the number of days hence.

   CalendarOptions-llines
              Print lines lines for every day.

       -pweeks
              Print weeks weeks on every page of the calendar. If set to 0, the default, disables page breaks.

       -ddays
              Print the calendar for up to days days in advance.

       -iwidth
              Print the calendar width characters wide. This affects the length of  the  lines  separating  each
              day, and the point at which events will be word-wrapped.

See Also

cal(1)

Synopsis

birthday [-w|-c] [-ffile]  [-Wdefwarn] [-Mmaxwarn] [-mminwarn] [-llines] [-pweeks] [-dtotal] [-iwidth] [-L]

See Also