DDATE(1)                   Emperor Norton Utilities                   DDATE(1)

       ddate - converts Gregorian dates to Discordian dates

       ddate [+format] [date]

       ddate prints the date in Discordian date format.

       If  called  with  no arguments, ddate will get the current system date,
       convert this to the Discordian date format and print this on the  stan-
       dard  output.  Alternatively,  a Gregorian date may be specified on the
       command line, in the form of a numerical day, month and year.

       If a format string is specified, the Discordian date will be printed in
       a format specified by the string. This mechanism works similarly to the
       format string mechanism of date(1), only almost completely differently.
       The fields are:

       %A     Full name of the day of the week (i.e., Sweetmorn)

       %a     Abbreviated name of the day of the week (i.e., SM)

       %B     Full name of the season (i.e., Chaos)

       %b     Abbreviated name of the season (i.e., Chs)

       %d     Ordinal number of day in season (i.e., 23)

       %e     Cardinal number of day in season (i.e., 23rd)

       %H     Name of current Holyday, if any

       %N     Magic  code  to prevent rest of format from being printed unless
              today is a Holyday.

       %n     Newline

       %t     Tab

       %X     Number of days remaining until X-Day. (Not valid if  the  SubGe-
              nius options are not compiled in.)


       %}     Used  to  enclose the part of the string which is to be replaced
              with the words "St. Tib's Day" if the current day is  St.  Tib's

       %.     Try it and see.

       % ddate
       Sweetmorn, Bureaucracy 42, 3161 YOLD

       % ddate +'Today is %{%A, the %e of %B%}, %Y. %N%nCelebrate %H'
       Today is Sweetmorn, the 42nd of Bureaucracy, 3161.

       % ddate +"It's %{%A, the %e of %B%}, %Y. %N%nCelebrate %H" 26 9 1995
       It's Prickle-Prickle, the 50th of Bureaucracy, 3161.
       Celebrate Bureflux

       % ddate +'Today's %{%A, the %e of %B%}, %Y. %N%nCelebrate %H' 29 2 1996
       Today's St. Tib's Day, 3162.

       ddate(1)  will produce undefined behaviour if asked to produce the date
       for St. Tib's day and its format string does not contain the St.  Tib's
       Day delimiters %{ and %}.

       After  `X-Day'  passed  without  incident,  the Church of the SubGenius
       declared that it had got the year upside down - X-Day  is  actually  in
       8661 AD rather than 1998 AD.  Thus, the True X-Day is Cfn 40, 9827.

       Original   program   by   Druel   the   Chaotic   aka   Jeremy  Johnson
       Major  rewrite  by  Lee  H:.  O:.  Smith,  KYTP,  aka   Andrew   Bulhak
       Five tons of flax.

       Public domain. All rites reversed.

       Malaclypse the Younger, Principia Discordia, Or How I Found Goddess And
       What I Did To Her When I Found Her

                              59 Bureaucracy 3161                     DDATE(1)