The ddate Discordian date formatter in the Browser
This page provides an online ddate utility which convert Gregorian dates to Discordian dates. It also provides API which is rate-limit.
API (Application Programming Interface)
The API following has a
rate-limit 1 call per
second.
https://helloacm.com/api/ddate/
It will return JSON-encoded data (example):
"Pungenday, Confusion 37, 3181 YOLD\n"
https://helloacm.com/api/ddate/?m=2&y=2015
It will return JSON-encoded data (example):
"Pungenday, Chaos 33, 3181 YOLD\n"
https://helloacm.com/api/ddate/?m=2&y=2015&d=3&f=Hello-%A
It will return JSON-encoded data (example):
"Hello-Prickle-Prickle\n"
Note: The m parameter can only be ranged from 1 (Jan) to 12 (Dec) inclusive. The d parameter can only be ranged from 1 to 31 inclusive. The API is
rate-limit by 1
second per call.
Principle
We use the linux command
ddate.
NAME
ddate - convert Gregorian dates to Discordian dates
SYNOPSIS
ddate [+format] [date]
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 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
Day.
%. Try it and see.
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 +'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.