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

ddate - convert Gregorian dates to Discordian dates

Author

       Original program by Druel the Chaotic aka Jeremy Johnson (mpython@gnu.ai.mit.edu)
       Major rewrite by Lee H:. O:. Smith, KYTP, aka Andrew Bulhak (acb@dev.null.org)
       Gregorian B.C.E. dates fixed by Chaplain Nyan the Wiser, aka Dan Dart (ntw@dandart.co.uk)
       Five tons of flax.

Availability

       The ddate command is available from https://github.com/bo0ts/ddate.

ddate                                           Bureaucracy 3161                                        DDATE(1)

Bugs

ddate(1)  will  produce  undefined behavior 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 %}.

Description

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 standard 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 SubGenius 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 Day.

       %.     Try it and see.

Distribution Policy

       Public domain. All rites reversed.

Examples

       % 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.

Name

       ddate - convert Gregorian dates to Discordian dates

Note

       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.

See Also

date(1),
       http://www.subgenius.com/
       Malaclypse  the  Younger,  PrincipiaDiscordia,OrHowIFoundGoddessAndWhatIDidToHerWhenIFoundHer

Synopsis

ddate [+format] [date]

See Also