summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/source/latex/datetime/datetime.dtx
diff options
context:
space:
mode:
Diffstat (limited to 'Master/texmf-dist/source/latex/datetime/datetime.dtx')
-rw-r--r--Master/texmf-dist/source/latex/datetime/datetime.dtx1377
1 files changed, 908 insertions, 469 deletions
diff --git a/Master/texmf-dist/source/latex/datetime/datetime.dtx b/Master/texmf-dist/source/latex/datetime/datetime.dtx
index 8173974405b..0e11ef730c0 100644
--- a/Master/texmf-dist/source/latex/datetime/datetime.dtx
+++ b/Master/texmf-dist/source/latex/datetime/datetime.dtx
@@ -12,7 +12,7 @@
% -doc "datetime-manual.tex"
% -author "Nicola Talbot"
% datetime
-% Created on 2010/9/21 10:02
+% Created on 2013/9/10 11:38
%\fi
%\iffalse
%<*package>
@@ -35,7 +35,7 @@
%\fi
% \iffalse
% Doc-Source file to use with LaTeX2e
-% Copyright (C) 2010 Nicola Talbot, all rights reserved.
+% Copyright (C) 2013 Nicola Talbot, all rights reserved.
% \fi
% \iffalse
%<*driver>
@@ -59,15 +59,12 @@
%\RecordChanges
%\OnlyDescription
%
-%\title{datetime.sty v2.58:
+%\title{datetime.sty v2.59:
%Formatting Current Date and Time}
% \author{Nicola L. C. Talbot\\[10pt]
-% School of Computing Sciences\\
-% University of East Anglia\\
-% Norwich. NR4 7TJ.\\
-% United Kingdom.\\
-% \url{http://theoval.cmp.uea.ac.uk/~nlct/}}
-% \date{2010-09-21}
+% Dickimaw Books\\
+% \url{http://www.dickimaw-books.com/}}
+% \date{2013-09-10}
% \maketitle
% \tableofcontents
% \section{Introduction}
@@ -534,7 +531,7 @@
%\item[\pkgopt{dmyyyy}] make \cs{today} produce D/M/YYYY date
%\item[\pkgopt{ddmmyy}] make \cs{today} produce DD/MM/YY date
%\item[\pkgopt{dmyy}] make \cs{today} produce D/M/YY date
-%\item[\pkgopt{text}] make \cs{today} produce text date
+%\item[\pkgopt{text}] make \cs{today} produce text date in UK style
%\item[\pkgopt{us}] make \cs{today} produce US style date
%\item[\pkgopt{mmddyyyy}] make \cs{today} produce MM/DD/YYYY date
%\item[\pkgopt{mdyyyy}] make \cs{today} produce M/D/YYYY date
@@ -666,7 +663,10 @@
%\fi}
%\end{verbatim}
%If you want them added to future versions of
-%\sty{datetime}, please email me the code.
+%\sty{datetime}, please post them on my feature request form at:
+%\url{http://www.dickimaw-books.com/feature-request.html}.
+%Please use \LaTeX\ commands to produce accents to ensure encoding
+%independence. (For example, use \verb|\'e| instead of \'{e}.)
%
%\section{Registers}
%
@@ -737,7 +737,7 @@
%\section{Troubleshooting}
%
%There is a \sty{datetime} FAQ available at:
-%\url{http://theoval.cmp.uea.ac.uk/~nlct/latex/packages/faq/}
+%\url{http://www.dickimaw-books.com/faqs/datetimefaq.html}.
%
%\StopEventually{\phantomsection
%\addcontentsline{toc}{section}{Index}\PrintIndex
@@ -748,6 +748,111 @@
%\section{The Code}
%\iffalse
% \begin{macrocode}
+%<*datetime-defaults.sty>
+% \end{macrocode}
+%\fi
+% Default language settings.
+% \begin{macrocode}
+\ProvidesPackage{datetime-defaults}[2013/09/10]
+% \end{macrocode}
+%\begin{macro}{\ordinaldateenglish}
+% Default date ordinal:
+% \begin{macrocode}
+\newcommand*{\ordinaldateenglish}[1]{\ordinalnum{#1}}
+% \end{macrocode}
+%\end{macro}
+%\begin{macro}{\monthnameenglish}
+% \begin{macrocode}
+\providecommand*{\monthnameenglish}[1][\month]{%
+ \@orgargctr=#1\relax
+ \ifcase\@orgargctr
+ \PackageError{datetime}{Invalid Month number \the\@orgargctr}{Month
+ numbers should go from 1 (January) to 12 (December)}%
+ \or January%
+ \or February%
+ \or March%
+ \or April%
+ \or May%
+ \or June%
+ \or July%
+ \or August%
+ \or September%
+ \or October%
+ \or November%
+ \or December%
+ \else \PackageError{datetime}{Invalid Month number \the\@orgargctr}{%
+ Month numbers should go from 1 (January) to 12 (December)}%
+ \fi
+}
+% \end{macrocode}
+%\end{macro}
+%\begin{macro}{\shortmonthnameenglish}
+%\changes{2.1}{2003/12/17}{fixed bug producing an error message
+% in December}
+% \begin{macrocode}
+\providecommand*{\shortmonthnameenglish}[1][\month]{%
+ \@orgargctr=#1\relax
+ \ifcase\@orgargctr
+ \PackageError{datetime}{Invalid Month number \the\@orgargctr}{Month
+ numbers should go from 1 (jan) to 12 (dec)}%
+ \or Jan%
+ \or Feb%
+ \or Mar%
+ \or Apr%
+ \or May%
+ \or Jun%
+ \or Jul%
+ \or Aug%
+ \or Sept%
+ \or Oct%
+ \or Nov%
+ \or Dec%
+ \else%
+ \PackageError{datetime}%
+ {Invalid Month number \the\@orgargctr}%
+ {Month numbers should go from 1 (jan) to 12 (dec)}%
+\fi
+}
+% \end{macrocode}
+%\end{macro}
+%\begin{macro}{\dayofweeknameidenglish}
+% Given the day of week index, print associated the English name.
+% \begin{macrocode}
+\providecommand*{\dayofweeknameidenglish}[1]{%
+ \ifcase#1\relax
+ \or Sunday%
+ \or Monday%
+ \or Tuesday%
+ \or Wednesday%
+ \or Thursday%
+ \or Friday%
+ \or Saturday%
+ \fi
+}
+% \end{macrocode}
+%\end{macro}
+%\begin{macro}{\shortdayofweeknameidenglish}
+% As before, but for abbreviated day of week name. English version:
+% \begin{macrocode}
+\providecommand*{\shortdayofweeknameidenglish}[1]{%
+ \ifcase#1\relax
+ \or Sun%
+ \or Mon%
+ \or Tue%
+ \or Wed%
+ \or Thu%
+ \or Fri%
+ \or Sat%
+\fi}
+% \end{macrocode}
+%\end{macro}
+%\iffalse
+% \begin{macrocode}
+%</datetime-defaults.sty>
+% \end{macrocode}
+%\fi
+%\iffalse
+% \begin{macrocode}
%<*datetime.sty>
% \end{macrocode}
%\fi
@@ -755,18 +860,33 @@
% This section documents the code for \texttt{datetime.sty}
% \begin{macrocode}
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{datetime}[2010/09/21 v2.58 Date Time Package]
+\ProvidesPackage{datetime}[2013/09/10 v2.59 Date Time Package]
+% \end{macrocode}
+%\changes{2.59}{2013/09/10}{new loads etoolbox}
+% \begin{macrocode}
+\RequirePackage{etoolbox}
% \end{macrocode}
%\texttt{fmtcount.sty} needs to be loaded here as it defines the
% command \cs{fmtord} which may be redefined later:
% \begin{macrocode}
\RequirePackage{fmtcount}
% \end{macrocode}
+% In case we're using an older version of \sty{fmtcount}:
+% \begin{macrocode}
+\@ifundefined{@FCmodulo}%
+{%
+ \let\@FCmodulo\@modulo
+}{}
+% \end{macrocode}
% Need ifthen package for conditional stuff.
% \begin{macrocode}
\RequirePackage{ifthen}
% \end{macrocode}
%\subsubsection{Date Commands}
+% Load defaults:
+% \begin{macrocode}
+\RequirePackage{datetime-defaults}
+% \end{macrocode}
%\begin{macro}{\if@dtl@nodate}
% Define a new conditional \cs{if@dt@nodate}. If it is true,
% \cs{today} will not be redefined, nor will
@@ -797,34 +917,40 @@
%\changes{2.55}{2007/08/20}{fixed bug preventing multilingual support}
% \begin{macrocode}
\newif\if@dt@multilingual
-\@ifpackageloaded{babel}{%
-\@dt@multilingualtrue}{%
-\@ifpackageloaded{ngerman}{%
-\@dt@multilingualtrue}{\@dt@multilingualfalse}}
+ \@ifpackageloaded{babel}%
+ {%
+ \@dt@multilingualtrue
+ }%
+ {%
+ \@ifpackageloaded{ngerman}%
+ {\@dt@multilingualtrue}%
+ {\@dt@multilingualfalse}%
+ }
% \end{macrocode}
%\end{macro}
% Define the \cs{ordinaldate}\meta{language} macros. These are
% needed because some
% languages only use an ordinal for the first day of
% the month (such as french).
-%\begin{macro}{\ordinaldateenglish}
-% English version:
-% \begin{macrocode}
-\newcommand*{\ordinaldateenglish}[1]{\ordinalnum{#1}}
-% \end{macrocode}
-%\end{macro}
-%\begin{macro}{\ordinaldate}
% If |\ordinaldate|\meta{language} is not defined, then just display
% the number.
%\changes{2.45}{2005/05/23}{new}
+%\changes{2.59}{2013/09/10}{made robust}
% \begin{macrocode}
-\newcommand*{\ordinaldate}[1]{%
-\if@dt@multilingual
-\@ifundefined{ordinaldate\languagename}{#1}{%
-\csname ordinaldate\languagename\endcsname{#1}}%
-\else
-\ordinalnum{#1}%
-\fi}
+\DeclareRobustCommand*{\ordinaldate}[1]{%
+ \if@dt@multilingual
+% \end{macrocode}
+% Make sure language file has been loaded.
+% \begin{macrocode}
+ \DTloadDefIfNotLoadedButExists{\languagename}%
+ \@ifundefined{ordinaldate\languagename}{#1}%
+ {%
+ \csname ordinaldate\languagename\endcsname{#1}%
+ }%
+ \else
+ \ordinalnum{#1}%
+ \fi
+}
% \end{macrocode}
%\end{macro}
%\begin{macro}{\ifshowdow}
@@ -855,20 +981,22 @@
% options, babel and datetime.cfg settings.)
% \begin{macrocode}
\DeclareRobustCommand*{\longdate}{%
-\renewcommand*{\formatdate}[3]{%
-\ifshowdow\dayofweekname{##1}{##2}{##3} \fi
-\@day=##1\relax\@month=##2\relax\@year=##3\relax
-\ordinaldate{\the\@day}\ \monthname[\@month], \the\@year}}
+ \renewcommand*{\formatdate}[3]{%
+ \ifshowdow\dayofweekname{##1}{##2}{##3} \fi
+ \@day=##1\relax\@month=##2\relax\@year=##3\relax
+ \ordinaldate{\the\@day}\ \monthname[\@month], \the\@year}%
+}
% \end{macrocode}
%\end{macro}
%\begin{macro}{\shortdate}
% Abbreviated version of above
% \begin{macrocode}
\DeclareRobustCommand*{\shortdate}{%
-\renewcommand*{\formatdate}[3]{%
-\ifshowdow\shortdayofweekname{##1}{##2}{##3} \fi
-\@day=##1\relax\@month=##2\relax\@year=##3\relax
-\ordinaldate{\the\@day}\ \shortmonthname[\@month], \the\@year}}
+ \renewcommand*{\formatdate}[3]{%
+ \ifshowdow\shortdayofweekname{##1}{##2}{##3} \fi
+ \@day=##1\relax\@month=##2\relax\@year=##3\relax
+ \ordinaldate{\the\@day}\ \shortmonthname[\@month], \the\@year}%
+}
% \end{macrocode}
%\end{macro}
%\begin{macro}{\twodigit}
@@ -918,7 +1046,7 @@
\DeclareRobustCommand*{\ddmmyydate}{\renewcommand*{\formatdate}[3]{%
\@day=##1\relax\@month=##2\relax\@year=##3\relax
\@dtctr=\@year%
-\@modulo{\@dtctr}{100}%
+\@FCmodulo{\@dtctr}{100}%
\twodigit\@day\dateseparator \twodigit\@month\dateseparator
\twodigit\@dtctr}}
% \end{macrocode}
@@ -930,7 +1058,7 @@
\DeclareRobustCommand*{\dmyydate}{\renewcommand*{\formatdate}[3]{%
\@day=##1\relax\@month=##2\relax\@year=##3\relax
\@dtctr=\@year%
-\@modulo{\@dtctr}{100}%
+\@FCmodulo{\@dtctr}{100}%
\the\@day\dateseparator \the\@month\dateseparator \twodigit\@dtctr}}
% \end{macrocode}
%\end{macro}
@@ -981,7 +1109,7 @@
\DeclareRobustCommand*{\mmddyydate}{\renewcommand*{\formatdate}[3]{%
\@day=##1\relax\@month=##2\relax\@year=##3\relax
\@dtctr=\@year%
-\@modulo{\@dtctr}{100}%
+\@FCmodulo{\@dtctr}{100}%
\twodigit\@month\dateseparator \twodigit\@day\dateseparator
\twodigit\@dtctr}}
% \end{macrocode}
@@ -993,7 +1121,7 @@
\DeclareRobustCommand*{\mdyydate}{\renewcommand*{\formatdate}[3]{%
\@day=##1\relax\@month=##2\relax\@year=##3\relax
\@dtctr=\@year%
-\@modulo{\@dtctr}{100}%
+\@FCmodulo{\@dtctr}{100}%
\the\@month\dateseparator \the\@day\dateseparator \twodigit\@dtctr}}
% \end{macrocode}
%\end{macro}
@@ -1183,7 +1311,7 @@ give your new date format a different name}}}
\currenthour=\time\relax
\divide\currenthour by 60\relax
\currentminute=\time\relax
- \@modulo{\currentminute}{60}%
+ \@FCmodulo{\currentminute}{60}%
\currentsecond=0\relax
}{%
\def\@dt@gettime#1#2#3#4#5#6#7\relax{%
@@ -1213,7 +1341,7 @@ give your new date format a different name}}}
\c@MINUTE=##2%
\c@TOHOUR=\c@HOURXII
\advance\c@TOHOUR by 1\relax
-\@modulo{\c@TOHOUR}{12}%
+\@FCmodulo{\c@TOHOUR}{12}%
\c@TOMINUTE=\c@MINUTE
\advance\c@TOMINUTE by -60\relax
\multiply\c@TOMINUTE by -1\relax
@@ -1394,6 +1522,9 @@ settings}}
\@ifundefined{extrasaustrian}{}{%
\addto\extrasaustrian{#1}%
}%
+ \@ifundefined{extrasaustralian}{}{%
+ \addto\extrasaustralian{#1}%
+ }%
\@ifundefined{extrasbahasa}{}{%
\addto\extrasbahasa{#1}%
}%
@@ -1406,6 +1537,9 @@ settings}}
\@ifundefined{extrasbulgarian}{}{%
\addto\extrasbulgarian{#1}%
}%
+ \@ifundefined{extrascanadian}{}{%
+ \addto\extrascanadian{#1}%
+ }%
\@ifundefined{extrascatalan}{}{%
\addto\extrascatalan{#1}%
}%
@@ -1466,6 +1600,9 @@ settings}}
\@ifundefined{extrasngerman}{}{%
\addto\extrasngerman{#1}%
}%
+ \@ifundefined{extrasnewzealand}{}{%
+ \addto\extrasnewzealand{#1}%
+ }%
\@ifundefined{extrasnorsk}{}{%
\addto\extrasnorsk{#1}%
}%
@@ -1571,7 +1708,11 @@ settings}}
% \end{macrocode}
% Check whether the file has already been loaded.
% \begin{macrocode}
- \@ifundefined{ver@dt-#1.def}%
+ \DTifDefLoaded{#1}%
+% \end{macrocode}
+% File already loaded, so do nothing.
+% \begin{macrocode}
+ {}%
{%
\InputIfFileExists{dt-#1.def}%
{}%
@@ -1580,13 +1721,35 @@ settings}}
definition file for `#1'}%
}%
}%
+}
% \end{macrocode}
-% File already loaded, so do nothing.
+%\end{macro}
+%
+%\begin{macro}{\DTifDefLoaded}
+%\changes{2.59}{2013/09/10}{new}
% \begin{macrocode}
- {}%
+\newcommand{\DTifDefLoaded}[3]{%
+ \@ifundefined{ver@dt-#1.def}{#3}{#2}%
}
% \end{macrocode}
%\end{macro}
+%
+%\begin{macro}{\DTloadDefIfNotLoadedButExists}
+%\changes{2.59}{2013/09/10}{new}
+% \begin{macrocode}
+\newcommand{\DTloadDefIfNotLoadedButExists}[1]{%
+ \DTifDefLoaded{#1}%
+ {}%
+ {%
+ \bgroup
+ \catcode `\@ 11\relax
+ \InputIfFileExists{dt-#1.def}{}{}%
+ \egroup
+ }%
+}%
+% \end{macrocode}
+%\end{macro}
+%
% Multilingual support. These package options shouldn't really be
% needed if babel has already been loaded.
% \begin{macrocode}
@@ -1645,14 +1808,14 @@ settings}}
% \begin{macrocode}
\if@dt@nodate
\PackageInfo{datetime}{option "nodate" used, so note defining
-\string\dateformat}
+ \string\dateformat}
\else
% \end{macrocode}
%\begin{macro}{\dateformat}
% Format the given date in the given format.
% \begin{macrocode}
-\providecommand*{\dateformat}[4]{%
-\@day=#2\relax\@month=#3\relax\@year=#4\relax#1}
+ \providecommand*{\dateformat}[4]{%
+ \@day=#2\relax\@month=#3\relax\@year=#4\relax#1}
% \end{macrocode}
%\end{macro}
% \begin{macrocode}
@@ -1666,47 +1829,31 @@ settings}}
% The |nodate| option was used, so just print informative message,
% and do nothing else.
% \begin{macrocode}
-\PackageInfo{datetime}{option "nodate" used, so not defining
-\string\monthname}
+ \PackageInfo{datetime}{option "nodate" used, so not defining
+ \string\monthname}
\else
% \end{macrocode}
-%\begin{macro}{\monthnameenglish}
-% \begin{macrocode}
-\providecommand*{\monthnameenglish}[1][\month]{%
-\@orgargctr=#1\relax
-\ifcase\@orgargctr
-\PackageError{datetime}{Invalid Month number \the\@orgargctr}{Month
-numbers should go from 1 (January) to 12 (December)}%
-\or January%
-\or February%
-\or March%
-\or April%
-\or May%
-\or June%
-\or July%
-\or August%
-\or September%
-\or October%
-\or November%
-\or December%
-\else \PackageError{datetime}{Invalid Month number \the\@orgargctr}{%
-Month numbers should go from 1 (January) to 12 (December)}%
-\fi}
-% \end{macrocode}
-%\end{macro}
%\begin{macro}{\monthname}
%Define \verb|\monthname| to be language dependent. If there
%is no \verb|\monthname|\meta{language}, defaults to English.
% \begin{macrocode}
\newcommand*{\monthname}[1][\month]{%
-\if@dt@multilingual
-\@ifundefined{monthname\languagename}{%
-\PackageWarning{datetime}{No month names provided for language
-'\languagename'}%
-\monthnameenglish[#1]}{\csname monthname\languagename\endcsname[#1]}%
-\else
-\monthnameenglish[#1]%
-\fi}
+ \if@dt@multilingual
+% \end{macrocode}
+% Make sure language file has been loaded.
+% \begin{macrocode}
+ \DTloadDefIfNotLoadedButExists{\languagename}%
+ \@ifundefined{monthname\languagename}%
+ {%
+ \PackageWarning{datetime}{No month names provided for language
+ '\languagename'}%
+ \monthnameenglish[#1]%
+ }%
+ {\csname monthname\languagename\endcsname[#1]}%
+ \else
+ \monthnameenglish[#1]%
+ \fi
+}
% \end{macrocode}
%\end{macro}
% End of |\if@dt@nodate| else part:
@@ -1721,51 +1868,33 @@ Month numbers should go from 1 (January) to 12 (December)}%
% The |nodate| option was used, so just print informative message,
% and do nothing else.
% \begin{macrocode}
-\PackageInfo{datetime}{option "nodate" used, so not defining
-\protect\shortmonthname}
+ \PackageInfo{datetime}{option "nodate" used, so not defining
+ \protect\shortmonthname}
\else
% \end{macrocode}
-%\begin{macro}{\shortmonthnameenglish}
-%\changes{2.1}{2003/12/17}{fixed bug producing an error message
-% in December}
-% \begin{macrocode}
-\providecommand*{\shortmonthnameenglish}[1][\month]{%
-\@orgargctr=#1\relax
-\ifcase\@orgargctr
-\PackageError{datetime}{Invalid Month number \the\@orgargctr}{Month
-numbers should go from 1 (jan) to 12 (dec)}%
-\or Jan%
-\or Feb%
-\or Mar%
-\or Apr%
-\or May%
-\or Jun%
-\or Jul%
-\or Aug%
-\or Sept%
-\or Oct%
-\or Nov%
-\or Dec%
-\else%
-\PackageError{datetime}{Invalid Month number \the\@orgargctr}{Month
-numbers should go from 1 (jan) to 12 (dec)}%
-\fi}
-% \end{macrocode}
-%\end{macro}
%\begin{macro}{\shortmonthname}
%Define \verb|\shortmonthname| to be language dependent. If there
%is no \verb|\shortmonthname|\meta{language}, defaults to English.
% \begin{macrocode}
\newcommand*{\shortmonthname}[1][\month]{%
-\if@dt@multilingual
-\@ifundefined{shortmonthname\languagename}{%
-\PackageWarning{datetime}{No abbreviated month name defined for
-language '\languagename', using full version instead}%
-\monthname[#1]}{%
-\csname shortmonthname\languagename\endcsname[#1]}%
-\else
-\shortmonthnameenglish[#1]%
-\fi}
+ \if@dt@multilingual
+% \end{macrocode}
+% Make sure language file has been loaded.
+% \begin{macrocode}
+ \DTloadDefIfNotLoadedButExists{\languagename}%
+ \@ifundefined{shortmonthname\languagename}%
+ {%
+ \PackageWarning{datetime}{No abbreviated month name defined for
+ language '\languagename', using full version instead}%
+ \monthname[#1]%
+ }%
+ {%
+ \csname shortmonthname\languagename\endcsname[#1]%
+ }%
+ \else
+ \shortmonthnameenglish[#1]%
+ \fi
+}
% \end{macrocode}
%\end{macro}
% End of |\if@dt@nodate| else part:
@@ -1774,11 +1903,23 @@ language '\languagename', using full version instead}%
% \end{macrocode}
% Define macros needed to compute the weekday
% (Again, only do this if @dt@nodate is false)
-%\begin{macro}{\ifleapyear}
-% Need to define |\ifleapyear| regardless of @dt@nodate otherwise \LaTeX\ won't
-% match |\ifleapyear| with |\fi|
+%\begin{macro}{\ifDTleapyear}
+% Need to define |\ifDTleapyear| regardless of @dt@nodate otherwise \LaTeX\ won't
+% match |\ifDTleapyear| with |\fi|
+%\changes{2.59}{2013/09/10}{renamed \cs{ifleapyear} to
+%\cs{ifDTLleapyear} to avoid clash with other packages}
+% \begin{macrocode}
+\newif\ifDTleapyear
+\@ifundefined{ifleapyear}
+{%
+% \end{macrocode}
+% Provide backward compatibility:
% \begin{macrocode}
-\newif\ifleapyear
+ \def\ifleapyear{\ifDTLleapyear}
+ \let\leapyeartrue\DTLleapyeartrue
+ \let\leapyearfalse\DTLleapyearfalse
+}%
+{}
% \end{macrocode}
%\end{macro}
% Define temporary counter for arithmetic.
@@ -1789,35 +1930,44 @@ language '\languagename', using full version instead}%
% is not defined.
% \begin{macrocode}
\if@dt@nodate
-\PackageInfo{datetime}{option "nodate" used, so not defining
-\string\dayofweek \space or \string\shortdayofweek}
+ \PackageInfo{datetime}{option "nodate" used, so not defining
+ \string\dayofweek \space or \string\shortdayofweek}
\else
% \end{macrocode}
% Using the algorithm documented at
% http://userpages.wittenberg.edu/bshelburne/Comp150/DayofWeek.htm
% Syntax: \verb|testifleapyear{|\meta{year}\verb|}| sets
-% conditional \verb|\ifleapyear|.
+% conditional \verb|\ifDTleapyear|.
% \begin{macrocode}
\providecommand*{\testifleapyear}[1]{%
-\leapyearfalse
-\@year=#1\relax
-\@dtctr=\@year
-\@modulo{\@dtctr}{400}%
-\ifnum\@dtctr=0\relax
-\leapyeartrue % year mod 400 = 0 => leap year
-\else
-\@dtctr=\@year
-\@modulo{\@dtctr}{100}%
-\ifnum\@dtctr=0\relax
-\leapyearfalse % year mod 100 = 0 && year mod 400 != 0 => not a leap year
-\else
-\@dtctr=\@year
-\@modulo{\@dtctr}{4}%
-\ifnum\@dtctr=0\relax
-\leapyeartrue % year mod 4 = 0 && year mod 100 != 0 => leap year
-\fi
-\fi
-\fi
+ \DTleapyearfalse
+ \@year=#1\relax
+ \@dtctr=\@year
+ \@FCmodulo{\@dtctr}{400}%
+ \ifnum\@dtctr=0\relax
+% \end{macrocode}
+% year mod 400 = 0 => leap year
+% \begin{macrocode}
+ \DTleapyeartrue
+ \else
+ \@dtctr=\@year
+ \@FCmodulo{\@dtctr}{100}%
+ \ifnum\@dtctr=0\relax
+% \begin{macrocode}
+% year mod 100 = 0 && year mod 400 != 0 => not a leap year
+% \end{macrocode}
+ \DTleapyearfalse
+ \else
+ \@dtctr=\@year
+ \@FCmodulo{\@dtctr}{4}%
+ \ifnum\@dtctr=0\relax
+% \begin{macrocode}
+% year mod 4 = 0 && year mod 100 != 0 => leap year
+% \end{macrocode}
+ \DTleapyeartrue
+ \fi
+ \fi
+ \fi
}
% \end{macrocode}
%\begin{macro}{\dayofyear}
@@ -1831,30 +1981,30 @@ language '\languagename', using full version instead}%
% Computes the day of year. Result will be stored in \verb|\dayofyear|
% \begin{macrocode}
\providecommand*{\computedayofyear}[3]{%
-\testifleapyear{#3}%
-\dayofyear=0\relax
-\@day=#1\relax \@month=#2\relax \@year=#3\relax
-\ifcase\@month
-\or
-\or \advance\dayofyear by 31\relax
-\or \advance\dayofyear by 59\relax
-\or \advance\dayofyear by 90\relax
-\or \advance\dayofyear by 120\relax
-\or \advance\dayofyear by 151\relax
-\or \advance\dayofyear by 181\relax
-\or \advance\dayofyear by 212\relax
-\or \advance\dayofyear by 243\relax
-\or \advance\dayofyear by 273\relax
-\or \advance\dayofyear by 304\relax
-\or \advance\dayofyear by 334\relax
-\else
-\PackageError{datetime}{Invalid month number}{The second argument to
-\string\computedayofyear \space should lie in the range 1-12}%
-\fi
-\ifnum\@month>2\relax
-\ifleapyear\advance\dayofyear by 1\relax\fi
-\fi
-\advance\dayofyear by \@day\relax
+ \testifleapyear{#3}%
+ \dayofyear=0\relax
+ \@day=#1\relax \@month=#2\relax \@year=#3\relax
+ \ifcase\@month
+ \or
+ \or \advance\dayofyear by 31\relax
+ \or \advance\dayofyear by 59\relax
+ \or \advance\dayofyear by 90\relax
+ \or \advance\dayofyear by 120\relax
+ \or \advance\dayofyear by 151\relax
+ \or \advance\dayofyear by 181\relax
+ \or \advance\dayofyear by 212\relax
+ \or \advance\dayofyear by 243\relax
+ \or \advance\dayofyear by 273\relax
+ \or \advance\dayofyear by 304\relax
+ \or \advance\dayofyear by 334\relax
+ \else
+ \PackageError{datetime}{Invalid month number}{The second argument to
+ \string\computedayofyear \space should lie in the range 1-12}%
+ \fi
+ \ifnum\@month>2\relax
+ \ifDTleapyear\advance\dayofyear by 1\relax\fi
+ \fi
+ \advance\dayofyear by \@day\relax
}
% \end{macrocode}
%\end{macro}
@@ -1870,34 +2020,20 @@ language '\languagename', using full version instead}%
% |\dayofweek|.
% \begin{macrocode}
\providecommand*{\computedayofweek}[3]{%
-\computedayofyear{#1}{#2}{#3}%
-\@dtctr=#3\relax
-\advance\@dtctr by -1901\relax
-\@modulo{\@dtctr}{28}%
-\dayofweek=\@dtctr
-\divide\dayofweek by 4\relax
-\advance\dayofweek by \@dtctr
-\advance\dayofweek by 2\relax
-\@modulo{\dayofweek}{7}%
-\advance\dayofweek by \dayofyear
-\advance\dayofweek by -1\relax
-\@modulo{\dayofweek}{7}%
-\advance\dayofweek by 1\relax}
-% \end{macrocode}
-%\end{macro}
-%\begin{macro}{\dayofweeknameidenglish}
-% Given the day of week index, print associated the English name.
-% \begin{macrocode}
-\providecommand*{\dayofweeknameidenglish}[1]{%
-\ifcase#1\relax
-\or Sunday%
-\or Monday%
-\or Tuesday%
-\or Wednesday%
-\or Thursday%
-\or Friday%
-\or Saturday%
-\fi}
+ \computedayofyear{#1}{#2}{#3}%
+ \@dtctr=#3\relax
+ \advance\@dtctr by -1901\relax
+ \@FCmodulo{\@dtctr}{28}%
+ \dayofweek=\@dtctr
+ \divide\dayofweek by 4\relax
+ \advance\dayofweek by \@dtctr
+ \advance\dayofweek by 2\relax
+ \@FCmodulo{\dayofweek}{7}%
+ \advance\dayofweek by \dayofyear
+ \advance\dayofweek by -1\relax
+ \@FCmodulo{\dayofweek}{7}%
+ \advance\dayofweek by 1\relax
+}
% \end{macrocode}
%\end{macro}
%\begin{macro}{\dayofweeknameid}
@@ -1906,16 +2042,27 @@ language '\languagename', using full version instead}%
% default to English.
% \begin{macrocode}
\providecommand*{\dayofweeknameid}[1]{%
-\if@dt@multilingual
-\@ifundefined{dayofweeknameid\languagename}{%
-\ifthenelse{\equal{\languagename}{nohyphenation}}{}{%
-\PackageWarning{datetime}{No week day names defined for language
-'\languagename', defaulting to English}}%
-\dayofweeknameidenglish{#1}}{%
-\csname dayofweeknameid\languagename\endcsname{#1}}%
-\else
-\dayofweeknameidenglish{#1}%
-\fi
+ \if@dt@multilingual
+% \end{macrocode}
+% Make sure language file has been loaded.
+% \begin{macrocode}
+ \DTloadDefIfNotLoadedButExists{\languagename}%
+ \ifcsundef{dayofweeknameid\languagename}%
+ {%
+ \ifthenelse{\equal{\languagename}{nohyphenation}}{}%
+ {%
+ \PackageWarning{datetime}%
+ {No week day names defined for language
+ '\languagename', defaulting to English}%
+ }%
+ \dayofweeknameidenglish{#1}%
+ }%
+ {%
+ \csname dayofweeknameid\languagename\endcsname{#1}%
+ }%
+ \else
+ \dayofweeknameidenglish{#1}%
+ \fi
}
% \end{macrocode}
%\end{macro}
@@ -1923,8 +2070,8 @@ language '\languagename', using full version instead}%
% Print the day of week name for the specified date.
% \begin{macrocode}
\providecommand*{\dayofweekname}[3]{%
-\computedayofweek{#1}{#2}{#3}%
-\dayofweeknameid{\dayofweek}%
+ \computedayofweek{#1}{#2}{#3}%
+ \dayofweeknameid{\dayofweek}%
}
% \end{macrocode}
%\end{macro}
@@ -1932,38 +2079,34 @@ language '\languagename', using full version instead}%
% Print today's day of week name.
% \begin{macrocode}
\providecommand*{\thisdayofweekname}{%
-\dayofweekname{\day}{\month}{\year}}
-% \end{macrocode}
-%\end{macro}
-%\begin{macro}{\shortdayofweeknameidenglish}
-% As before, but for abbreviated day of week name. English version:
-% \begin{macrocode}
-\providecommand*{\shortdayofweeknameidenglish}[1]{%
-\ifcase#1\relax
-\or Sun%
-\or Mon%
-\or Tue%
-\or Wed%
-\or Thu%
-\or Fri%
-\or Sat%
-\fi}
+ \dayofweekname{\day}{\month}{\year}}
% \end{macrocode}
%\end{macro}
%\begin{macro}{\shortdayofweekname}
% Language dependant version:
% \begin{macrocode}
\providecommand*{\shortdayofweekname}[3]{%
-\computedayofweek{#1}{#2}{#3}%
-\if@dt@multilingual
-\@ifundefined{shortdayofweeknameid\languagename}{%
-\ifthenelse{\equal{\languagename}{nohyphenation}}{}{%
-\PackageWarning{datetime}{No abbreviated week day names defined for
-language '\languagename', defaulting to long version}}%
-\dayofweeknameid{\dayofweek}}{%
-\csname shortdayofweeknameid\languagename\endcsname\dayofweek}%
-\else
-\shortdayofweeknameidenglish{\dayofweek}%
+ \computedayofweek{#1}{#2}{#3}%
+ \if@dt@multilingual
+% \end{macrocode}
+% Make sure language file has been loaded.
+% \begin{macrocode}
+ \DTloadDefIfNotLoadedButExists{\languagename}%
+ \@ifundefined{shortdayofweeknameid\languagename}%
+ {%
+ \ifthenelse{\equal{\languagename}{nohyphenation}}{}%
+ {%
+ \PackageWarning{datetime}%
+ {No abbreviated week day names defined for
+ language '\languagename', defaulting to long version}%
+ }%
+ \dayofweeknameid{\dayofweek}%
+ }%
+ {%
+ \csname shortdayofweeknameid\languagename\endcsname\dayofweek
+ }%
+ \else
+ \shortdayofweeknameidenglish{\dayofweek}%
\fi
}
% \end{macrocode}
@@ -1972,7 +2115,7 @@ language '\languagename', defaulting to long version}}%
% Today's week day name, abbreviated:
% \begin{macrocode}
\providecommand*{\thisshortdayofweekname}{%
-\dayofweekname{\day}{\month}{\year}}
+ \dayofweekname{\day}{\month}{\year}}
% \end{macrocode}
%\end{macro}
% End of |\if@dt@nodate| else part.
@@ -1987,7 +2130,7 @@ language '\languagename', defaulting to long version}}%
% \begin{macrocode}
\if@dt@nodate
\else
-\DeclareRobustCommand*{\today}{\formatdate{\day}{\month}{\year}}
+ \DeclareRobustCommand*{\today}{\formatdate{\day}{\month}{\year}}
\fi
% \end{macrocode}
%\end{macro}
@@ -2004,10 +2147,12 @@ language '\languagename', defaulting to long version}}%
\@ifundefined{datebritish}{}{\loadDTdef{british}}
\@ifundefined{dateamerican}{}{\loadDTdef{american}}
\@ifundefined{dateaustrian}{}{\loadDTdef{austrian}}
+\@ifundefined{dateaustralian}{}{\loadDTdef{australian}}
\@ifundefined{datebahasa}{}{\loadDTdef{bahasa}}
\@ifundefined{datebasque}{}{\loadDTdef{basque}}
\@ifundefined{datebreton}{}{\loadDTdef{breton}}
\@ifundefined{datebulgarian}{}{\loadDTdef{bulgarian}}
+\@ifundefined{datecanadian}{}{\loadDTdef{canadian}}
\@ifundefined{datecatalan}{}{\loadDTdef{catalan}}
\@ifundefined{datecroatian}{}{\loadDTdef{croatian}}
\@ifundefined{dateczech}{}{\loadDTdef{czech}}
@@ -2028,6 +2173,7 @@ language '\languagename', defaulting to long version}}%
\@ifundefined{datelsorbian}{}{\loadDTdef{lsorbian}}
\@ifundefined{datemagyar}{}{\loadDTdef{magyar}}
\@ifundefined{datenaustrian}{}{\loadDTdef{naustrian}}
+\@ifundefined{datenewzealand}{}{\loadDTdef{newzealand}}
\@ifundefined{datengerman}{}{\loadDTdef{ngerman}}
\@ifundefined{datenorsk}{}{\loadDTdef{norsk}}
\@ifundefined{datepolish}{}{\loadDTdef{polish}}
@@ -2095,7 +2241,7 @@ language '\languagename', defaulting to long version}}%
% Append the minute.
% \begin{macrocode}
\@dtctr=\time%
-\@modulo{\@dtctr}{60}%
+\@FCmodulo{\@dtctr}{60}%
\dt@b=\expandafter{\pdfdate}
\dt@a=\expandafter{\the\@dtctr}
\ifnum\@dtctr<10\relax
@@ -2125,36 +2271,37 @@ language '\languagename', defaulting to long version}}%
%\subsubsection{american}
% Identify file
% \begin{macrocode}
-\ProvidesFile{dt-american.def}[2010/09/21]
+\ProvidesFile{dt-american.def}[2013/09/10]%
% \end{macrocode}
%\begin{macro}{\dateamerican}
% \begin{macrocode}
-\let\dateamerican\usdate
+\global\let\dateamerican\usdate
% \end{macrocode}
%\end{macro}
%\begin{macro}{\monthnameamerican}
% \begin{macrocode}
-\let\monthnameamerican\monthnameenglish
+\global\let\monthnameamerican\monthnameenglish
% \end{macrocode}
%\end{macro}
%\begin{macro}{\shortmonthnameamerican}
% \begin{macrocode}
-\let\shortmonthnameamerican\shortmonthnameenglish
+\global\let\shortmonthnameamerican\shortmonthnameenglish
% \end{macrocode}
%\end{macro}
%\begin{macro}{\dayofweeknameidamerican}
% \begin{macrocode}
-\let\dayofweeknameidamerican\dayofweeknameidenglish
+\global\let\dayofweeknameidamerican\dayofweeknameidenglish
% \end{macrocode}
%\end{macro}
%\begin{macro}{\shortdayofweeknameamerican}
% \begin{macrocode}
-\let\shortdayofweeknameidamerican\shortdayofweeknameidenglish
+\global\let\shortdayofweeknameidamerican\shortdayofweeknameidenglish
% \end{macrocode}
%\end{macro}
%\begin{macro}{\ordinaldateamerican}
% \begin{macrocode}
-\providecommand*{\ordinaldateamerican}[1]{#1}
+\providecommand*{\ordinaldateamerican}[1]{#1}%
+\global\let\ordinaldateamerican\ordinaldateamerican
% \end{macrocode}
%\end{macro}
%\iffalse
@@ -2164,38 +2311,86 @@ language '\languagename', defaulting to long version}}%
%\fi
%\iffalse
% \begin{macrocode}
+%<*dt-australian.def>
+% \end{macrocode}
+%\fi
+%\subsection{Compatibility with Babel (Language definition files)}
+%\subsubsection{australian}
+% Identify file
+% \begin{macrocode}
+\ProvidesFile{dt-australian.def}[2013/09/10]%
+% \end{macrocode}
+%\begin{macro}{\dateaustralian}
+% \begin{macrocode}
+\global\let\dateaustralian\usdate
+% \end{macrocode}
+%\end{macro}
+%\begin{macro}{\monthnameaustralian}
+% \begin{macrocode}
+\global\let\monthnameaustralian\monthnameenglish
+% \end{macrocode}
+%\end{macro}
+%\begin{macro}{\shortmonthnameaustralian}
+% \begin{macrocode}
+\global\let\shortmonthnameaustralian\shortmonthnameenglish
+% \end{macrocode}
+%\end{macro}
+%\begin{macro}{\dayofweeknameidaustralian}
+% \begin{macrocode}
+\global\let\dayofweeknameidaustralian\dayofweeknameidenglish
+% \end{macrocode}
+%\end{macro}
+%\begin{macro}{\shortdayofweeknameaustralian}
+% \begin{macrocode}
+\global\let\shortdayofweeknameidaustralian\shortdayofweeknameidenglish
+% \end{macrocode}
+%\end{macro}
+%\begin{macro}{\ordinaldateaustralian}
+% \begin{macrocode}
+\providecommand*{\ordinaldateaustralian}[1]{#1}%
+\global\let\ordinaldateaustralian\ordinaldateaustralian
+% \end{macrocode}
+%\end{macro}
+%\iffalse
+% \begin{macrocode}
+%</dt-australian.def>
+% \end{macrocode}
+%\fi
+%\iffalse
+% \begin{macrocode}
%<*dt-austrian.def>
% \end{macrocode}
%\fi
%\subsubsection{Austrian}
% Identify file
% \begin{macrocode}
-\ProvidesFile{dt-austrian.def}[2004/10/31]
+\ProvidesFile{dt-austrian.def}[2013/09/10]%
% \end{macrocode}
% Define month names.
%\begin{macro}{\monthnameaustrian}
% \begin{macrocode}
\providecommand{\monthnameaustrian}[1][\month]{%
-\@orgargctr=#1\relax
-\ifcase\@orgargctr
-\PackageError{datetime}{Invalid Month number \the\@orgargctr}{%
-Month numbers should go from 1 to 12}%
-\or J\"anner%
-\or Februar%
-\or M\"arz%
-\or April%
-\or Mai%
-\or Juni%
-\or Juli%
-\or August%
-\or September%
-\or Oktober%
-\or November%
-\or Dezember%
+ \@orgargctr=#1\relax
+ \ifcase\@orgargctr
+ \PackageError{datetime}{Invalid Month number \the\@orgargctr}{%
+ Month numbers should go from 1 to 12}%
+ \or J\"anner%
+ \or Februar%
+ \or M\"arz%
+ \or April%
+ \or Mai%
+ \or Juni%
+ \or Juli%
+ \or August%
+ \or September%
+ \or Oktober%
+ \or November%
+ \or Dezember%
\else
-\PackageError{datetime}{Invalid Month number \the\@orgargctr}{%
-Month numbers should go from 1 (janvier) to 12 (decembre)}%
-\fi}
+ \PackageError{datetime}{Invalid Month number \the\@orgargctr}{%
+ Month numbers should go from 1 (janvier) to 12 (decembre)}%
+\fi}%
+\global\let\monthnameaustrian\monthnameaustrian
% \end{macrocode}
%\end{macro}
% (Re)Define declaration to switch to this format.
@@ -2204,7 +2399,8 @@ Month numbers should go from 1 (janvier) to 12 (decembre)}%
\DeclareRobustCommand*\dateaustrian{%
\renewcommand{\formatdate}[3]{%
\@day=##1\relax\@month=##2\relax\@year=##3\relax
-\number\@day.~\monthnameaustrian[\@month]\space\number\@year}}
+\number\@day.~\monthnameaustrian[\@month]\space\number\@year}}%
+\global\let\dateaustrian\dateaustrian
% \end{macrocode}
%\end{macro}
%\iffalse
@@ -2220,7 +2416,7 @@ Month numbers should go from 1 (janvier) to 12 (decembre)}%
%\subsubsection{Bahasa}
% Identify file
% \begin{macrocode}
-\ProvidesFile{dt-bahasa.def}[2004/10/31]
+\ProvidesFile{dt-bahasa.def}[2013/09/10]%
% \end{macrocode}
% Define month names.
% \begin{macrocode}
@@ -2244,7 +2440,8 @@ Month numbers should go from 1 (Januari) to 12 (Desember)}%
\else
\PackageError{datetime}{Invalid Month number \the\@orgargctr}{%
Month numbers should go from 1 (Januari) to 12 (Desember)}%
-\fi}
+\fi}%
+\global\let\monthnamebahasa\monthnamebahasa
% \end{macrocode}
% Define abbreviated month names. This currently does the full
% name, because I don't know the abbreviated versions.
@@ -2269,14 +2466,16 @@ Month numbers should go from 1 (Januari) to 12 (Desember)}%
\else
\PackageError{datetime}{Invalid Month number \the\@orgargctr}{%
Month numbers should go from 1 (Januari) to 12 (Desember)}%
-\fi}
+\fi}%
+\global\let\shortmonthnamebahasa\shortmonthnamebahasa
% \end{macrocode}
% (Re)Define declaration to switch to this format.
% \begin{macrocode}
\DeclareRobustCommand*\datebahasa{%
\renewcommand{\formatdate}[3]{%
\@day=##1\relax\@month=##2\relax\@year=##3\relax
-\number\@day}~\monthnamebahasa[\@month]\space \number\@year}}
+\number\@day}~\monthnamebahasa[\@month]\space \number\@year}}%
+\global\let\datebahasa\datebahasa
% \end{macrocode}
%\iffalse
% \begin{macrocode}
@@ -2291,7 +2490,7 @@ Month numbers should go from 1 (Januari) to 12 (Desember)}%
%\subsubsection{Basque}
% Identify file
% \begin{macrocode}
-\ProvidesFile{dt-basque.def}[2004/10/31]
+\ProvidesFile{dt-basque.def}[2013/09/10]%
% \end{macrocode}
% Define month names.
% \begin{macrocode}
@@ -2314,7 +2513,8 @@ Month numbers should go from 1 (urtarrilaren) to 12 (abenduaren)}%
\or abenduaren%
\else \PackageError{datetime}{Invalid Month number \the\@orgargctr}{%
Month numbers should go from 1 (urtarrilaren) to 12 (abenduaren)}%
-\fi}
+\fi}%
+\global\let\monthnamebasque\monthnamebasque
% \end{macrocode}
% Define abbreviated month names. This currently does the full
% name, because I don't know the abbreviated versions.
@@ -2339,14 +2539,16 @@ Month numbers should go from 1 (urtarrilaren) to 12 (abenduaren)}%
\else
\PackageError{datetime}{Invalid Month number \the\@orgargctr}{%
Month numbers should go from 1 (urtarrilaren) to 12 (abenduaren)}%
-\fi}
+\fi}%
+\global\let\shortmonthnamebasque\shortmonthnamebasque
% \end{macrocode}
% (Re)Define declaration to switch to this format.
% \begin{macrocode}
\DeclareRobustCommand*\datebasque{%
\renewcommand{\formatdate}[3]{%
\@day=##1\relax\@month=##2\relax\@year=##3\relax
-\number\@year.eko\space\monthnamebasque[\@month]~\number\@day}}
+\number\@year.eko\space\monthnamebasque[\@month]~\number\@day}}%
+\global\let\datebasque\datebasque
% \end{macrocode}
%\iffalse
% \begin{macrocode}
@@ -2361,13 +2563,14 @@ Month numbers should go from 1 (urtarrilaren) to 12 (abenduaren)}%
%\subsubsection{Breton}
% Identify file
% \begin{macrocode}
-\ProvidesFile{dt-breton.def}[2010/09/21]
+\ProvidesFile{dt-breton.def}[2013/09/10]%
% \end{macrocode}
%\begin{macro}{\ordinaldatebreton}
% Breton version:
% \begin{macrocode}
\providecommand*{\ordinaldatebreton}[1]{%
-#1\ifnum#1=1\/\textsuperscript{a\~n}\fi}
+#1\ifnum#1=1\/\textsuperscript{a\~n}\fi}%
+\global\let\ordinaldatebreton\ordinaldatebreton
% \end{macrocode}
%\end{macro}
% Define month names.
@@ -2392,7 +2595,8 @@ Month numbers should go from 1 (Genver) to 12 (Kerzu)}%
\else
\PackageError{datetime}{Invalid Month number \the\@orgargctr}{%
Month numbers should go from 1 (Genver) to 12 (Kerzu)}%
-\fi}
+\fi}%
+\global\let\monthnamebreton\monthnamebreton
% \end{macrocode}
% Define abbreviated month names. This currently does the full
% name, because I don't know the abbreviated versions.
@@ -2417,7 +2621,8 @@ Month numbers should go from 1 (Genver) to 12 (Kerzu)}%
\else
\PackageError{datetime}{Invalid Month number \the\@orgargctr}{%
Month numbers should go from 1 (Genver) to 12 (Kerzu)}%
-\fi}
+\fi}%
+\global\let\shortmonthnamebreton\shortmonthnamebreton
% \end{macrocode}
% (Re)Define declaration to switch to this format.
% \begin{macrocode}
@@ -2427,7 +2632,8 @@ Month numbers should go from 1 (Genver) to 12 (Kerzu)}%
\ifnum\@day=1\relax 1\/\textsuperscript{a\~n}\else\number\@day\fi
\space a\space viz\space\monthnamebreton[\@month]\space
\number\@year
-}}
+}}%
+\global\let\datebreton\datebreton
% \end{macrocode}
%\iffalse
% \begin{macrocode}
@@ -2442,36 +2648,36 @@ Month numbers should go from 1 (Genver) to 12 (Kerzu)}%
%\subsubsection{british}
% Identify file
% \begin{macrocode}
-\ProvidesFile{dt-british.def}[2007/06/15]
+\ProvidesFile{dt-british.def}[2013/09/10]%
% \end{macrocode}
%\begin{macro}{\datebritish}
% \begin{macrocode}
-\let\datebritish\longdate
+\global\let\datebritish\longdate
% \end{macrocode}
%\end{macro}
%\begin{macro}{\monthnamebritish}
% \begin{macrocode}
-\let\monthnamebritish\monthnameenglish
+\global\let\monthnamebritish\monthnameenglish
% \end{macrocode}
%\end{macro}
%\begin{macro}{\shortmonthnamebritish}
% \begin{macrocode}
-\let\shortmonthnamebritish\shortmonthnameenglish
+\global\let\shortmonthnamebritish\shortmonthnameenglish
% \end{macrocode}
%\end{macro}
%\begin{macro}{\dayofweeknameidbritish}
% \begin{macrocode}
-\let\dayofweeknameidbritish\dayofweeknameidenglish
+\global\let\dayofweeknameidbritish\dayofweeknameidenglish
% \end{macrocode}
%\end{macro}
%\begin{macro}{\shortdayofweekidbritish}
% \begin{macrocode}
-\let\shortdayofweeknameidbritish\shortdayofweeknameidenglish
+\global\let\shortdayofweeknameidbritish\shortdayofweeknameidenglish
% \end{macrocode}
%\end{macro}
%\begin{macro}{\ordinaldatebritish}
% \begin{macrocode}
-\let\ordinaldatebritish\ordinaldateenglish
+\global\let\ordinaldatebritish\ordinaldateenglish
% \end{macrocode}
%\end{macro}
%\iffalse
@@ -2487,7 +2693,7 @@ Month numbers should go from 1 (Genver) to 12 (Kerzu)}%
%\subsubsection{Bulgarian}
% Identify file
% \begin{macrocode}
-\ProvidesFile{dt-bulgarian.def}[2004/10/31]
+\ProvidesFile{dt-bulgarian.def}[2013/09/10]%
% \end{macrocode}
% Define month names.
% \begin{macrocode}
@@ -2511,7 +2717,8 @@ Month numbers should go from 1 to 12}%
\else
\PackageError{datetime}{Invalid Month number \the\@orgargctr}{%
Month numbers should go from 1 to 12}%
-\fi}
+\fi}%
+\global\let\monthnamebulgarian\monthnamebulgarian
% \end{macrocode}
% Define abbreviated month names. This currently does the full
% name, because I don't know the abbreviated versions.
@@ -2536,14 +2743,16 @@ Month numbers should go from 1 to 12}%
\else
\PackageError{datetime}{Invalid Month number \the\@orgargctr}{%
Month numbers should go from 1 to 12}%
-\fi}
+\fi}%
+\global\let\shortmonthnamebulgarian\shortmonthnamebulgarian
% \end{macrocode}
% (Re)Define declaration to switch to this format.
% \begin{macrocode}
\DeclareRobustCommand*\datebulgarian{%
\renewcommand{\formatdate}[3]{%
\@day=##1\relax\@month=##2\relax\@year=##3\relax
-\number\@day~\monthnamebulgarian[\@month]\ \number\@year~\cyrg.}}
+\number\@day~\monthnamebulgarian[\@month]\ \number\@year~\cyrg.}}%
+\global\let\datebulgarian\datebulgarian
% \end{macrocode}
%\iffalse
% \begin{macrocode}
@@ -2552,13 +2761,60 @@ Month numbers should go from 1 to 12}%
%\fi
%\iffalse
% \begin{macrocode}
+%<*dt-canadian.def>
+% \end{macrocode}
+%\fi
+%\subsection{Compatibility with Babel (Language definition files)}
+%\subsubsection{canadian}
+% Identify file
+% \begin{macrocode}
+\ProvidesFile{dt-canadian.def}[2013/09/10]%
+% \end{macrocode}
+%\begin{macro}{\datecanadian}
+% \begin{macrocode}
+\global\let\datecanadian\usdate
+% \end{macrocode}
+%\end{macro}
+%\begin{macro}{\monthnamecanadian}
+% \begin{macrocode}
+\global\let\monthnamecanadian\monthnameenglish
+% \end{macrocode}
+%\end{macro}
+%\begin{macro}{\shortmonthnamecanadian}
+% \begin{macrocode}
+\global\let\shortmonthnamecanadian\shortmonthnameenglish
+% \end{macrocode}
+%\end{macro}
+%\begin{macro}{\dayofweeknameidcanadian}
+% \begin{macrocode}
+\global\let\dayofweeknameidcanadian\dayofweeknameidenglish
+% \end{macrocode}
+%\end{macro}
+%\begin{macro}{\shortdayofweeknamecanadian}
+% \begin{macrocode}
+\global\let\shortdayofweeknameidcanadian\shortdayofweeknameidenglish
+% \end{macrocode}
+%\end{macro}
+%\begin{macro}{\ordinaldatecanadian}
+% \begin{macrocode}
+\providecommand*{\ordinaldatecanadian}[1]{#1}%
+\global\let\ordinaldatecanadian\ordinaldatecanadian
+% \end{macrocode}
+%\end{macro}
+%\iffalse
+% \begin{macrocode}
+%</dt-canadian.def>
+% \end{macrocode}
+%\fi
+%\iffalse
+% \begin{macrocode}
%<*dt-catalan.def>
% \end{macrocode}
%\fi
%\subsubsection{Catalan}
% Identify file
% \begin{macrocode}
-\ProvidesFile{dt-catalan.def}[2004/10/31]
+\ProvidesFile{dt-catalan.def}[2013/09/10]%
% \end{macrocode}
% Define month names.
% \begin{macrocode}
@@ -2582,7 +2838,8 @@ Month numbers should go from 1 (de gener) to 12 (de desembre)}%
\else
\PackageError{datetime}{Invalid Month number \the\@orgargctr}{%
Month numbers should go from 1 (de gener) to 12 (de desembre)}%
-\fi}
+\fi}%
+\global\let\monthnamecatalan\monthnamecatalan
% \end{macrocode}
% Define abbreviated month names. This currently does the full
% name, because I don't know the abbreviated versions.
@@ -2607,7 +2864,8 @@ Month numbers should go from 1 (de gener) to 12 (de desembre)}%
\else
\PackageError{datetime}{Invalid Month number \the\@orgargctr}{%
Month numbers should go from 1 (de gener) to 12 (de desembre)}%
-\fi}
+\fi}%
+\global\let\shortmonthnamecatalan\shortmonthnamecatalan
% \end{macrocode}
% (Re)Define declaration to switch to this format.
% \begin{macrocode}
@@ -2615,7 +2873,8 @@ Month numbers should go from 1 (de gener) to 12 (de desembre)}%
\renewcommand{\formatdate}[3]{%
\@day=##1\relax\@month=##2\relax\@year=##3\relax
\number\@day~\monthnamecatalan[\@month]\ de~\number\@year
-}}
+}}%
+\global\let\datecatalan\datecatalan
% \end{macrocode}
%\iffalse
% \begin{macrocode}
@@ -2630,7 +2889,7 @@ Month numbers should go from 1 (de gener) to 12 (de desembre)}%
%\subsubsection{Croatian}
% Identify file
% \begin{macrocode}
-\ProvidesFile{dt-croatian.def}[2004/10/31]
+\ProvidesFile{dt-croatian.def}[2013/09/10]%
% \end{macrocode}
% Define month names.
% \begin{macrocode}
@@ -2654,7 +2913,8 @@ Month numbers should go from 1 (sijecnja) to 12 (prosinca)}%
\else
\PackageError{datetime}{Invalid Month number \the\@orgargctr}{%
Month numbers should go from 1 (sijecnja) to 12 (prosinca)}%
-\fi}
+\fi}%
+\global\let\monthnamecroatian\monthnamecroatian
% \end{macrocode}
% Define abbreviated month names. This currently does the full
% name, because I don't know the abbreviated versions.
@@ -2679,14 +2939,41 @@ Month numbers should go from 1 (sijecnja) to 12 (prosinca)}%
\else
\PackageError{datetime}{Invalid Month number \the\@orgargctr}{%
Month numbers should go from 1 (sijecnja) to 12 (prosinca)}%
-\fi}
+\fi}%
+\global\let\shortmonthnamecroatian\shortmonthnamecroatian
+% \end{macrocode}
+% Translations provided by Ivan Kokan:
+% \begin{macrocode}
+\providecommand*{\dayofweeknameidcroatian}[1]{%
+\ifcase#1\relax
+\or nedjelja%
+\or ponedjeljak%
+\or utorak%
+\or srijeda%
+\or \v{c}etvrtak%
+\or petak%
+\or subota%
+\fi}%
+\global\let\dayofweeknameidcroatian\dayofweeknameidcroatian
+\providecommand*{\shortdayofweeknameidcroatian}[1]{%
+\ifcase#1\relax
+\or ned%
+\or pon%
+\or uto%
+\or sri%
+\or \v{c}et%
+\or pet%
+\or sub%
+\fi}%
+\global\let\shortdayofweeknameidcroatian\shortdayofweeknameidcroatian
% \end{macrocode}
% (Re)Define declaration to switch to this format.
% \begin{macrocode}
\DeclareRobustCommand*\datecroatian{%
\renewcommand{\formatdate}[3]{%
\@day=##1\relax\@month=##2\relax\@year=##3\relax
-\number\@day.~\monthnamecroatian[\@month]\space \number\@year.}}
+\number\@day.~\monthnamecroatian[\@month]\space \number\@year.}}%
+\global\let\datecroatian\datecroatian
% \end{macrocode}
%\iffalse
% \begin{macrocode}
@@ -2701,7 +2988,7 @@ Month numbers should go from 1 (sijecnja) to 12 (prosinca)}%
%\subsubsection{Czech}
% Identify file
% \begin{macrocode}
-\ProvidesFile{dt-czech.def}[2004/10/31]
+\ProvidesFile{dt-czech.def}[2013/09/10]%
% \end{macrocode}
% Define month names.
% \begin{macrocode}
@@ -2725,7 +3012,8 @@ Month numbers should go from 1 to 12}%
\else
\PackageError{datetime}{Invalid Month number \the\@orgargctr}{%
Month numbers should go from 1 to 12}%
-\fi}
+\fi}%
+\global\let\monthnameczech\monthnameczech
% \end{macrocode}
% Define abbreviated month names. This currently does the full
% name, because I don't know the abbreviated versions.
@@ -2750,14 +3038,16 @@ Month numbers should go from 1 to 12}%
\else
\PackageError{datetime}{Invalid Month number \the\@orgargctr}{%
Month numbers should go from 1 to 12}%
-\fi}
+\fi}%
+\global\let\shortmonthnameczech\shortmonthnameczech
% \end{macrocode}
% (Re)Define declaration to switch to this format.
% \begin{macrocode}
\DeclareRobustCommand*\dateczech{%
\renewcommand{\formatdate}[3]{%
\@day=##1\relax\@month=##2\relax\@year=##3\relax
-\number\@day.~\monthnameczech[\@month]\space \number\@year}}
+\number\@day.~\monthnameczech[\@month]\space \number\@year}}%
+\global\let\dateczech\dateczech
% \end{macrocode}
%\iffalse
% \begin{macrocode}
@@ -2772,7 +3062,7 @@ Month numbers should go from 1 to 12}%
%\subsubsection{Danish}
% Identify file
% \begin{macrocode}
-\ProvidesFile{dt-danish.def}[2004/10/31]
+\ProvidesFile{dt-danish.def}[2013/09/10]%
% \end{macrocode}
% Define month names.
% \begin{macrocode}
@@ -2796,14 +3086,16 @@ Month numbers should go from 1 to 12}%
\else
\PackageError{datetime}{Invalid Month number \the\@orgargctr}{%
Month numbers should go from 1 to 12}%
-\fi}
+\fi}%
+\global\let\monthnamedanish\monthnamedanish
% \end{macrocode}
% (Re)Define declaration to switch to this format.
% \begin{macrocode}
\DeclareRobustCommand*\datedanish{%
\renewcommand{\formatdate}[3]{%
\@day=##1\relax\@month=##2\relax\@year=##3\relax
-\number\@day.~\monthnamedanish[\@month]\space \number\@year}}
+\number\@day.~\monthnamedanish[\@month]\space \number\@year}}%
+\global\let\datedanish\datedanish
% \end{macrocode}
%\iffalse
% \begin{macrocode}
@@ -2818,7 +3110,7 @@ Month numbers should go from 1 to 12}%
%\subsubsection{Dutch}
% Identify file
% \begin{macrocode}
-\ProvidesFile{dt-dutch.def}[2004/10/31]
+\ProvidesFile{dt-dutch.def}[2013/09/10]%
% \end{macrocode}
% Define month names.
% \begin{macrocode}
@@ -2842,14 +3134,16 @@ Month numbers should go from 1 to 12}%
\else
\PackageError{datetime}{Invalid Month number \the\@orgargctr}{%
Month numbers should go from 1 to 12}%
-\fi}
+\fi}%
+\global\let\monthnamedutch\monthnamedutch
% \end{macrocode}
% (Re)Define declaration to switch to this format.
% \begin{macrocode}
\DeclareRobustCommand*\datedutch{%
\renewcommand{\formatdate}[3]{%
\@day=##1\relax\@month=##2\relax\@year=##3\relax
-\number\@day~\monthnamedutch[\@month]\space \number\@year}}
+\number\@day~\monthnamedutch[\@month]\space \number\@year}}%
+\global\let\datedutch\datedutch
% \end{macrocode}
%\iffalse
% \begin{macrocode}
@@ -2864,7 +3158,7 @@ Month numbers should go from 1 to 12}%
%\subsubsection{Esperanto}
% Identify file
% \begin{macrocode}
-\ProvidesFile{dt-esperanto.def}[2004/10/31]
+\ProvidesFile{dt-esperanto.def}[2013/09/10]%
% \end{macrocode}
% Define month names.
% \begin{macrocode}
@@ -2888,7 +3182,8 @@ Month numbers should go from 1 to 12}%
\else
\PackageError{datetime}{Invalid Month number \the\@orgargctr}{%
Month numbers should go from 1 to 12}%
-\fi}
+\fi}%
+\global\let\monthnameesperanto\monthnameesperanto
% \end{macrocode}
% (Re)Define declaration to switch to this format.
% \begin{macrocode}
@@ -2896,7 +3191,8 @@ Month numbers should go from 1 to 12}%
\renewcommand{\formatdate}[3]{%
\@day=##1\relax\@month=##2\relax\@year=##3\relax
\number\@day{--a}~de~\monthnameesperanto[\@month],\space
-\number\@year}}
+\number\@year}}%
+\global\let\dateesperanto\dateesperanto
% \end{macrocode}
%\iffalse
% \begin{macrocode}
@@ -2911,7 +3207,7 @@ Month numbers should go from 1 to 12}%
%\subsubsection{Estonian}
% Identify file
% \begin{macrocode}
-\ProvidesFile{dt-estonian.def}[2004/10/31]
+\ProvidesFile{dt-estonian.def}[2013/09/10]%
% \end{macrocode}
% Define month names.
% \begin{macrocode}
@@ -2935,7 +3231,8 @@ Month numbers should go from 1 to 12}%
\else
\PackageError{datetime}{Invalid Month number \the\@orgargctr}{%
Month numbers should go from 1 to 12}%
-\fi}
+\fi}%
+\global\let\monthnameestonian\monthnameestonian
% \end{macrocode}
% (Re)Define declaration to switch to this format.
% \begin{macrocode}
@@ -2943,7 +3240,8 @@ Month numbers should go from 1 to 12}%
\renewcommand{\formatdate}[3]{%
\@day=##1\relax\@month=##2\relax\@year=##3\relax
\number\@day.\space\monthnameestonian[\@month]\space
-\number\@year.\space a.}}
+\number\@year.\space a.}}%
+\global\let\dateestonian\dateestonian
% \end{macrocode}
%\iffalse
% \begin{macrocode}
@@ -2958,7 +3256,7 @@ Month numbers should go from 1 to 12}%
%\subsubsection{Finnish}
% Identify file
% \begin{macrocode}
-\ProvidesFile{dt-finnish.def}[2004/10/31]
+\ProvidesFile{dt-finnish.def}[2013/09/10]%
% \end{macrocode}
% Define month names.
% \begin{macrocode}
@@ -2982,14 +3280,16 @@ Month numbers should go from 1 to 12}%
\else
\PackageError{datetime}{Invalid Month number \the\@orgargctr}{%
Month numbers should go from 1 to 12}%
-\fi}
+\fi}%
+\global\let\monthnamefinnish\monthnamefinnish
% \end{macrocode}
% (Re)Define declaration to switch to this format.
% \begin{macrocode}
\DeclareRobustCommand*\datefinnish{%
\renewcommand{\formatdate}[3]{%
\@day=##1\relax\@month=##2\relax\@year=##3\relax
-\number\@day.~\monthnamefinnish[\@month]\space \number\@year}}
+\number\@day.~\monthnamefinnish[\@month]\space \number\@year}}%
+\global\let\datefinnish\datefinnish
% \end{macrocode}
%\iffalse
% \begin{macrocode}
@@ -3004,13 +3304,14 @@ Month numbers should go from 1 to 12}%
%\subsubsection{French}
% Identify file
% \begin{macrocode}
-\ProvidesFile{dt-french.def}[2010/09/21]
+\ProvidesFile{dt-french.def}[2013/09/10]%
% \end{macrocode}
%\begin{macro}{\ordinaldatefrench}
% French:
% \begin{macrocode}
\providecommand*{\ordinaldatefrench}[1]{%
-#1\ifnum#1=1\ier\fi}
+#1\ifnum#1=1\ier\fi}%
+\global\let\ordinaldatefrench\ordinaldatefrench
% \end{macrocode}
%\end{macro}
%\begin{macro}{\ier}
@@ -3018,7 +3319,8 @@ Month numbers should go from 1 to 12}%
%\changes{v2.47}{27 Oct 2005}{defined if it doesn't
% already exist}
% \begin{macrocode}
-\providecommand*{\ier}{\textsuperscript{er}}
+\providecommand*{\ier}{\textsuperscript{er}}%
+\global\let\ier\ier
% \end{macrocode}
%\end{macro}
% Define week day names.
@@ -3032,7 +3334,8 @@ Month numbers should go from 1 to 12}%
\or jeudi%
\or vendredi%
\or samedi%
-\fi}
+\fi}%
+\global\let\dayofweeknameidfrench\dayofweeknameidfrench
% \end{macrocode}
% Define abbreviated week day names (are these correct?)
% \begin{macrocode}
@@ -3045,7 +3348,8 @@ Month numbers should go from 1 to 12}%
\or jeu%
\or ven%
\or sam%
-\fi}
+\fi}%
+\global\let\shortdayofweeknameidfrench\shortdayofweeknameidfrench
% \end{macrocode}
% Define month names.
% \begin{macrocode}
@@ -3069,7 +3373,8 @@ Month numbers should go from 1 (janvier) to 12 (decembre)}%
\else
\PackageError{datetime}{Invalid Month number \the\@orgargctr}{%
Month numbers should go from 1 (janvier) to 12 (decembre)}%
-\fi}
+\fi}%
+\global\let\monthnamefrench\monthnamefrench
% \end{macrocode}
% (Re)Define declaration to switch to this format.
% \begin{macrocode}
@@ -3077,7 +3382,8 @@ Month numbers should go from 1 (janvier) to 12 (decembre)}%
\renewcommand{\formatdate}[3]{%
\@day=##1\relax\@month=##2\relax\@year=##3\relax
\number\@day\ifnum\@day=1{\ier}\fi\space
-\monthnamefrench[\@month]\space \number\@year}}
+\monthnamefrench[\@month]\space \number\@year}}%
+\global\let\datefrench\datefrench
% \end{macrocode}
%\iffalse
% \begin{macrocode}
@@ -3092,7 +3398,7 @@ Month numbers should go from 1 (janvier) to 12 (decembre)}%
%\subsubsection{Galician}
% Identify file
% \begin{macrocode}
-\ProvidesFile{dt-galician.def}[2004/10/31]
+\ProvidesFile{dt-galician.def}[2013/09/10]%
% \end{macrocode}
% Define month names.
% \begin{macrocode}
@@ -3116,7 +3422,8 @@ Month numbers should go from 1 to 12}%
\else
\PackageError{datetime}{Invalid Month number \the\@orgargctr}{%
Month numbers should go from 1 to 12}%
-\fi}
+\fi}%
+\global\let\monthnamegalician\monthnamegalician
% \end{macrocode}
% (Re)Define declaration to switch to this format.
% \begin{macrocode}
@@ -3124,7 +3431,8 @@ Month numbers should go from 1 to 12}%
\renewcommand{\formatdate}[3]{%
\@day=##1\relax\@month=##2\relax\@year=##3\relax
\number\@day~de\space\monthnamegalician[\@month]\space
-de~\number\@year}}
+de~\number\@year}}%
+\global\let\dategalician\dategalician
% \end{macrocode}
%\iffalse
% \begin{macrocode}
@@ -3139,7 +3447,7 @@ de~\number\@year}}
%\subsubsection{German}
% Identify file
% \begin{macrocode}
-\ProvidesFile{dt-german.def}[2004/10/31]
+\ProvidesFile{dt-german.def}[2010/09/10]%
% \end{macrocode}
% Define month names.
% \begin{macrocode}
@@ -3163,7 +3471,8 @@ Month numbers should go from 1 to 12}%
\else
\PackageError{datetime}{Invalid Month number \the\@orgargctr}{%
Month numbers should go from 1 (janvier) to 12 (decembre)}%
-\fi}
+\fi}%
+\global\let\monthnamegerman\monthnamegerman
% \end{macrocode}
% The following week day names were supplied by Uwe Bieling:
% \begin{macrocode}
@@ -3176,7 +3485,8 @@ Month numbers should go from 1 (janvier) to 12 (decembre)}%
\or Donnerstag%
\or Freitag%
\or Samstag%
-\fi}
+\fi}%
+\global\let\dayofweeknameidgerman\dayofweeknameidgerman
% \end{macrocode}
% \begin{macrocode}
\providecommand{\shortdayofweeknameidgerman}[1]{%
@@ -3188,14 +3498,16 @@ Month numbers should go from 1 (janvier) to 12 (decembre)}%
\or Do%
\or Fr%
\or Sa%
-\fi}
+\fi}%
+\global\let\shortdayofweeknameidgerman\shortdayofweeknameidgerman
% \end{macrocode}
% (Re)Define declaration to switch to this format.
% \begin{macrocode}
\DeclareRobustCommand*\dategerman{%
\renewcommand{\formatdate}[3]{%
\@day=##1\relax\@month=##2\relax\@year=##3\relax
-\number\@day.~\monthnamegerman[\@month]\space\number\@year}}
+\number\@day.~\monthnamegerman[\@month]\space\number\@year}}%
+\global\let\dategerman\dategerman
% \end{macrocode}
%\iffalse
% \begin{macrocode}
@@ -3210,7 +3522,7 @@ Month numbers should go from 1 (janvier) to 12 (decembre)}%
%\subsubsection{Greek}
% Identify file
% \begin{macrocode}
-\ProvidesFile{dt-greek.def}[2004/10/31]
+\ProvidesFile{dt-greek.def}[2013/09/10]%
% \end{macrocode}
% Define month names.
% \begin{macrocode}
@@ -3234,14 +3546,16 @@ Month numbers should go from 1 to 12}%
\else
\PackageError{datetime}{Invalid Month number \the\@orgargctr}{%
Month numbers should go from 1 to 12}%
-\fi}
+\fi}%
+\global\let\monthnamegreek\monthnamegreek
% \end{macrocode}
% (Re)Define declaration to switch to this format.
% \begin{macrocode}
\DeclareRobustCommand*\dategreek{%
\renewcommand{\formatdate}[3]{%
\@day=##1\relax\@month=##2\relax\@year=##3\relax
-\number\@day\space\monthnamegreek[\@month]\space\number\@year}}
+\number\@day\space\monthnamegreek[\@month]\space\number\@year}}%
+\global\let\dategreek\dategreek
% \end{macrocode}
%\iffalse
% \begin{macrocode}
@@ -3256,12 +3570,12 @@ Month numbers should go from 1 to 12}%
%\subsubsection{Hebrew}
% Identify file
% \begin{macrocode}
-\ProvidesFile{dt-hebrew.def}[2004/10/31]
+\ProvidesFile{dt-hebrew.def}[2013/09/10]%
% \end{macrocode}
% Babel already provides Hebrew month names, so just provide a
% synonym.
% \begin{macrocode}
-\let\monthnamehebrew=\hebmonth
+\global\let\monthnamehebrew\hebmonth
% \end{macrocode}
% Redefine declaration to switch to this format. (This uses
% |\hebdate| which is defined by babel.)
@@ -3269,7 +3583,8 @@ Month numbers should go from 1 to 12}%
\DeclareRobustCommand*\datehebrew{%
\renewcommand{\formatdate}[3]{%
\@day=##1\relax\@month=##2\relax\@year=##3\relax
-\hebdate\@day\@month\@year}}
+\hebdate\@day\@month\@year}}%
+\global\let\datehebrew\datehebrew
% \end{macrocode}
%\iffalse
% \begin{macrocode}
@@ -3284,7 +3599,7 @@ Month numbers should go from 1 to 12}%
%\subsubsection{Icelandic}
% Identify file
% \begin{macrocode}
-\ProvidesFile{dt-icelandic.def}[2004/10/31]
+\ProvidesFile{dt-icelandic.def}[2013/09/10]%
% \end{macrocode}
% Define month names.
% \begin{macrocode}
@@ -3293,29 +3608,31 @@ Month numbers should go from 1 to 12}%
\ifcase\@orgargctr
\PackageError{datetime}{Invalid Month number \the\@orgargctr}{%
Month numbers should go from 1 to 12}%
-\or janúar%
-\or febrúar%
+\or jan\'uar%
+\or febr\'uar%
\or mars%
-\or apríl%
-\or maí%
-\or júní%
-\or júlí%
-\or ágúst%
+\or apr\'il%
+\or ma\'i%
+\or j\'un\'i%
+\or j\'ul\'i%
+\or \'ag\'ust%
\or september%
-\or október%
-\or nóvember%
+\or okt\'ober%
+\or n\'ovember%
\or desembe%
\else
\PackageError{datetime}{Invalid Month number \the\@orgargctr}{%
Month numbers should go from 1 to 12}%
-\fi}
+\fi}%
+\global\let\monthnameicelandic\monthnameicelandic
% \end{macrocode}
% (Re)Define declaration to switch to this format.
% \begin{macrocode}
\DeclareRobustCommand*\dateicelandic{%
\renewcommand{\formatdate}[3]{%
\@day=##1\relax\@month=##2\relax\@year=##3\relax
-\number\@day.~\monthnameicelandic[\@month]\space\number\@year}}
+\number\@day.~\monthnameicelandic[\@month]\space\number\@year}}%
+\global\let\dateicelandic\dateicelandic
% \end{macrocode}
%\iffalse
% \begin{macrocode}
@@ -3330,7 +3647,7 @@ Month numbers should go from 1 to 12}%
%\subsubsection{Irish}
% Identify file
% \begin{macrocode}
-\ProvidesFile{dt-irish.def}[2004/10/31]
+\ProvidesFile{dt-irish.def}[2013/09/10]%
% \end{macrocode}
% Define month names.
% \begin{macrocode}
@@ -3354,14 +3671,16 @@ Month numbers should go from 1 to 12}%
\else
\PackageError{datetime}{Invalid Month number \the\@orgargctr}{%
Month numbers should go from 1 to 12}%
-\fi}
+\fi}%
+\global\let\monthnameirish\monthnameirish
% \end{macrocode}
% (Re)Define declaration to switch to this format.
% \begin{macrocode}
\DeclareRobustCommand*\dateirish{%
\renewcommand{\formatdate}[3]{%
\@day=##1\relax\@month=##2\relax\@year=##3\relax
-\number\@day\space\monthnameirish[\@month]\space\number\@year}}
+\number\@day\space\monthnameirish[\@month]\space\number\@year}}%
+\global\let\dateirish\dateirish
% \end{macrocode}
%\iffalse
% \begin{macrocode}
@@ -3375,7 +3694,7 @@ Month numbers should go from 1 to 12}%
%\fi
%\subsubsection{Italian}
% \begin{macrocode}
-\ProvidesFile{dt-italian.def}[2008/01/22]
+\ProvidesFile{dt-italian.def}[2013/09/10]%
% \end{macrocode}
% Translations provided by Giada Ermacora
% \begin{macrocode}
@@ -3388,7 +3707,8 @@ Month numbers should go from 1 to 12}%
\or gioved\`{\i}%
\or venerd\`{\i}%
\or sabato%
-\fi}
+\fi}%
+\global\let\dayofweeknameiditalian\dayofweeknameiditalian
% \end{macrocode}
% \begin{macrocode}
\providecommand{\shortdayofweeknameiditalian}[1]{%
@@ -3400,7 +3720,8 @@ Month numbers should go from 1 to 12}%
\or gio%
\or ven%
\or sab%
-\fi}
+\fi}%
+\global\let\shortdayofweeknameiditalian\shortdayofweeknameiditalian
% \end{macrocode}
% \begin{macrocode}
\providecommand{\monthnameitalian}[1][\month]{%
@@ -3420,7 +3741,8 @@ Month numbers should go from 1 to 12}%
\or novembre%
\or dicembre%
\else \PackageError{datetime}{Invalid Month number \the\@orgargctr}{Month numbers should go from 1 (gennaio) to 12 (dicembre)}%
-\fi}
+\fi}%
+\global\let\monthnameitalian\monthnameitalian
% \end{macrocode}
% \begin{macrocode}
\providecommand{\shortmonthnameitalian}[1][\month]{%
@@ -3441,13 +3763,15 @@ Month numbers should go from 1 to 12}%
\or dic%
\else%
\PackageError{datetime}{Invalid Month number \the\@orgargctr}{Month numbers should go from 1 (gen) to 12 (dic)}%
-\fi}
+\fi}%
+\global\let\shortmonthnameitalian\shortmonthnameitalian
% \end{macrocode}
% \begin{macrocode}
\DeclareRobustCommand*\dateitalian{%
\renewcommand{\formatdate}[3]{%
\@day=##1\relax\@month=##2\relax\@year=##3\relax
-\number\@day\space\monthnameitalian[\@month]\space\number\@year}}
+\number\@day\space\monthnameitalian[\@month]\space\number\@year}}%
+\global\let\dateitalian\dateitalian
% \end{macrocode}
%\iffalse
% \begin{macrocode}
@@ -3462,7 +3786,7 @@ Month numbers should go from 1 to 12}%
%\subsubsection{Latin}
% Identify file
% \begin{macrocode}
-\ProvidesFile{dt-latin.def}[2004/10/31]
+\ProvidesFile{dt-latin.def}[2013/09/10]%
% \end{macrocode}
% Define month names.
% \begin{macrocode}
@@ -3486,7 +3810,8 @@ Month numbers should go from 1 to 12}%
\else
\PackageError{datetime}{Invalid Month number \the\@orgargctr}{%
Month numbers should go from 1 to 12}%
-\fi}
+\fi}%
+\global\let\monthnamelatin\monthnamelatin
% \end{macrocode}
% (Re)Define declaration to switch to this format.
% \begin{macrocode}
@@ -3496,7 +3821,8 @@ Month numbers should go from 1 to 12}%
\check@mathfonts\fontsize\sf@size\z@\math@fontsfalse\selectfont
\uppercase\expandafter{\romannumeral\@day}%
~\monthnamelatin[\@month]\space
-{\uppercase\expandafter{\romannumeral\@year}}}}
+{\uppercase\expandafter{\romannumeral\@year}}}}%
+\global\let\datelatin\datelatin
% \end{macrocode}
%\iffalse
% \begin{macrocode}
@@ -3511,7 +3837,7 @@ Month numbers should go from 1 to 12}%
%\subsubsection{LSorbian}
% Identify file
% \begin{macrocode}
-\ProvidesFile{dt-lsorbian.def}[2004/10/31]
+\ProvidesFile{dt-lsorbian.def}[2013/09/10]%
% \end{macrocode}
% Define new month names.
% \begin{macrocode}
@@ -3535,7 +3861,8 @@ Month numbers should go from 1 to 12}%
\else
\PackageError{datetime}{Invalid Month number \the\@orgargctr}{%
Month numbers should go from 1 to 12}%
-\fi}
+\fi}%
+\global\let\monthnamenewlsorbian\monthnamenewlsorbian
% \end{macrocode}
% Define old month names.
% \begin{macrocode}
@@ -3559,29 +3886,32 @@ Month numbers should go from 1 to 12}%
\else
\PackageError{datetime}{Invalid Month number \the\@orgargctr}{%
Month numbers should go from 1 to 12}%
-\fi}
+\fi}%
+\global\let\monthnameoldlsorbian\monthnameoldlsorbian
% \end{macrocode}
% Set the default month names.
% \begin{macrocode}
-\let\monthnamelsorbian=\monthnamenewlsorbian
+\global\let\monthnamelsorbian\monthnamenewlsorbian
% \end{macrocode}
% (Re)Define declaration to switch to new format.
% \begin{macrocode}
\DeclareRobustCommand*\newdatelsorbian{%
\renewcommand{\formatdate}[3]{%
\@day=##1\relax\@month=##2\relax\@year=##3\relax
-\number\@day.~\monthnamenewlsorbian[\@month]\space\number\@year}}
+\number\@day.~\monthnamenewlsorbian[\@month]\space\number\@year}}%
+\global\let\newdatelsorbian\newdatelsorbian
% \end{macrocode}
% (Re)Define declaration to switch to old format.
% \begin{macrocode}
\DeclareRobustCommand*\olddatelsorbian{%
\renewcommand{\formatdate}[3]{%
\@day=##1\relax\@month=##2\relax\@year=##3\relax
-\number\@day.~\monthnameoldlsorbian[\@month]\space\number\@year}}
+\number\@day.~\monthnameoldlsorbian[\@month]\space\number\@year}}%
+\global\let\olddatelsorbian\olddatelsorbian
% \end{macrocode}
% Set the default date format.
% \begin{macrocode}
-\let\datelsorbian\newdatelsorbian
+\global\let\datelsorbian\newdatelsorbian
% \end{macrocode}
%\iffalse
% \begin{macrocode}
@@ -3596,7 +3926,7 @@ Month numbers should go from 1 to 12}%
%\subsubsection{Magyar}
% Identify file
% \begin{macrocode}
-\ProvidesFile{dt-magyar.def}[2004/10/31]
+\ProvidesFile{dt-magyar.def}[2013/09/10]%
% \end{macrocode}
% Define month names.
% \begin{macrocode}
@@ -3620,14 +3950,16 @@ Month numbers should go from 1 to 12}%
\else
\PackageError{datetime}{Invalid Month number \the\@orgargctr}{%
Month numbers should go from 1 to 12}%
-\fi}
+\fi}%
+\global\let\monthnamemagyar\monthnamemagyar
% \end{macrocode}
% (Re)Define declaration to switch to this format.
% \begin{macrocode}
\DeclareRobustCommand*\datemagyar{%
\renewcommand{\formatdate}[3]{%
\@day=##1\relax\@month=##2\relax\@year=##3\relax
-\number\@year.~\monthnamemagyar[\@month]\space\number\@day.}}
+\number\@year.~\monthnamemagyar[\@month]\space\number\@day.}}%
+\global\let\datemagyar\datemagyar
% \end{macrocode}
%\iffalse
% \begin{macrocode}
@@ -3642,7 +3974,7 @@ Month numbers should go from 1 to 12}%
%\subsubsection{NAustrian}
% Identify file
% \begin{macrocode}
-\ProvidesFile{dt-naustrian.def}[2004/10/31]
+\ProvidesFile{dt-naustrian.def}[2013/09/10]%
% \end{macrocode}
% Define month names.
% \begin{macrocode}
@@ -3666,14 +3998,16 @@ Month numbers should go from 1 to 12}%
\else
\PackageError{datetime}{Invalid Month number \the\@orgargctr}{%
Month numbers should go from 1 to 12}%
-\fi}
+\fi}%
+\global\let\monthnamenaustrian\monthnamenaustrian
% \end{macrocode}
% (Re)Define declaration to switch to this format.
% \begin{macrocode}
\DeclareRobustCommand*\datenaustrian{%
\renewcommand{\formatdate}[3]{%
\@day=##1\relax\@month=##2\relax\@year=##3\relax
-\number\@day.~\monthnamenaustrian[\@month]\space\number\@year}}
+\number\@day.~\monthnamenaustrian[\@month]\space\number\@year}}%
+\global\let\datenaustrian\datenaustrian
% \end{macrocode}
%\iffalse
% \begin{macrocode}
@@ -3682,13 +4016,60 @@ Month numbers should go from 1 to 12}%
%\fi
%\iffalse
% \begin{macrocode}
+%<*dt-newzealand.def>
+% \end{macrocode}
+%\fi
+%\subsection{Compatibility with Babel (Language definition files)}
+%\subsubsection{newzealand}
+% Identify file
+% \begin{macrocode}
+\ProvidesFile{dt-newzealand.def}[2013/09/10]%
+% \end{macrocode}
+%\begin{macro}{\datenewzealand}
+% \begin{macrocode}
+\global\let\datenewzealand\usdate
+% \end{macrocode}
+%\end{macro}
+%\begin{macro}{\monthnamenewzealand}
+% \begin{macrocode}
+\global\let\monthnamenewzealand\monthnameenglish
+% \end{macrocode}
+%\end{macro}
+%\begin{macro}{\shortmonthnamenewzealand}
+% \begin{macrocode}
+\global\let\shortmonthnamenewzealand\shortmonthnameenglish
+% \end{macrocode}
+%\end{macro}
+%\begin{macro}{\dayofweeknameidnewzealand}
+% \begin{macrocode}
+\global\let\dayofweeknameidnewzealand\dayofweeknameidenglish
+% \end{macrocode}
+%\end{macro}
+%\begin{macro}{\shortdayofweeknamenewzealand}
+% \begin{macrocode}
+\global\let\shortdayofweeknameidnewzealand\shortdayofweeknameidenglish
+% \end{macrocode}
+%\end{macro}
+%\begin{macro}{\ordinaldatenewzealand}
+% \begin{macrocode}
+\providecommand*{\ordinaldatenewzealand}[1]{#1}%
+\global\let\ordinaldatenewzealand\ordinaldatenewzealand
+% \end{macrocode}
+%\end{macro}
+%\iffalse
+% \begin{macrocode}
+%</dt-newzealand.def>
+% \end{macrocode}
+%\fi
+%\iffalse
+% \begin{macrocode}
%<*dt-ngerman.def>
% \end{macrocode}
%\fi
%\subsubsection{NGerman}
% Identify file
% \begin{macrocode}
-\ProvidesFile{dt-ngerman.def}[2004/10/31]
+\ProvidesFile{dt-ngerman.def}[2013/09/10]%
% \end{macrocode}
% Define month names.
% \begin{macrocode}
@@ -3712,7 +4093,8 @@ Month numbers should go from 1 to 12}%
\else
\PackageError{datetime}{Invalid Month number \the\@orgargctr}{%
Month numbers should go from 1 to 12}%
-\fi}
+\fi}%
+\global\let\monthnamengerman\monthnamengerman
% \end{macrocode}
% The following week day names were supplied by Uwe Bieling:
% \begin{macrocode}
@@ -3725,7 +4107,8 @@ Month numbers should go from 1 to 12}%
\or Donnerstag%
\or Freitag%
\or Samstag%
-\fi}
+\fi}%
+\global\let\dayofweeknameidngerman\dayofweeknameidngerman
% \end{macrocode}
% \begin{macrocode}
\providecommand{\shortdayofweeknameidngerman}[1]{%
@@ -3737,14 +4120,16 @@ Month numbers should go from 1 to 12}%
\or Do%
\or Fr%
\or Sa%
-\fi}
+\fi}%
+\global\let\shortdayofweeknameidngerman\shortdayofweeknameidngerman
% \end{macrocode}
% (Re)Define declaration to switch to this format.
% \begin{macrocode}
\DeclareRobustCommand*\datengerman{%
\renewcommand{\formatdate}[3]{%
\@day=##1\relax\@month=##2\relax\@year=##3\relax
-\number\@day.~\monthnamengerman[\@month]\space\number\@year}}
+\number\@day.~\monthnamengerman[\@month]\space\number\@year}}%
+\global\let\datengerman\datengerman
% \end{macrocode}
%\iffalse
% \begin{macrocode}
@@ -3759,7 +4144,7 @@ Month numbers should go from 1 to 12}%
%\subsubsection{Norsk}
% Identify file
% \begin{macrocode}
-\ProvidesFile{dt-norsk.def}[2004/10/31]
+\ProvidesFile{dt-norsk.def}[2013/09/10]%
% \end{macrocode}
% Define month names.
% \begin{macrocode}
@@ -3783,14 +4168,16 @@ Month numbers should go from 1 to 12}%
\else
\PackageError{datetime}{Invalid Month number \the\@orgargctr}{%
Month numbers should go from 1 to 12}%
-\fi}
+\fi}%
+\global\let\monthnamenorsk\monthnamenorsk
% \end{macrocode}
% (Re)Define declaration to switch to this format.
% \begin{macrocode}
\DeclareRobustCommand*\datenorsk{%
\renewcommand{\formatdate}[3]{%
\@day=##1\relax\@month=##2\relax\@year=##3\relax
-\number\@day.~\monthnamenorsk[\@month]\space\number\@year}}
+\number\@day.~\monthnamenorsk[\@month]\space\number\@year}}%
+\global\let\datenorsk\datenorsk
% \end{macrocode}
%\iffalse
% \begin{macrocode}
@@ -3805,7 +4192,7 @@ Month numbers should go from 1 to 12}%
%\subsubsection{Polish}
% Identify file
% \begin{macrocode}
-\ProvidesFile{dt-polish.def}[2004/10/31]
+\ProvidesFile{dt-polish.def}[2013/09/10]%
% \end{macrocode}
% Define month names.
%\begin{macro}{\monthnamepolish}
@@ -3831,6 +4218,7 @@ Month numbers should go from 1 to 12}%
\PackageError{datetime}{Invalid Month number \the\@orgargctr}{%
Month numbers should go from 1 to 12}%
\fi}
+\global\let\monthnamepolish\monthnamepolish
% \end{macrocode}
%\end{macro}
% (Re)Define declaration to switch to this format.
@@ -3838,7 +4226,8 @@ Month numbers should go from 1 to 12}%
\DeclareRobustCommand*\datepolish{%
\renewcommand{\formatdate}[3]{%
\@day=##1\relax\@month=##2\relax\@year=##3\relax
-\number\@day~\monthnamepolish[\@month]\space\number\@year}}
+\number\@day~\monthnamepolish[\@month]\space\number\@year}}%
+\global\let\datepolish\datepolish
% \end{macrocode}
% The week names were provided by Piotr Kempa
%\begin{macro}{\dayofweeknameidpolish}
@@ -3852,7 +4241,8 @@ Month numbers should go from 1 to 12}%
\or Czwartek%
\or Pi\k atek%
\or Sobota%
-\fi}
+\fi}%
+\global\let\dayofweeknameidpolish\dayofweeknameidpolish
% \end{macrocode}
%\end{macro}
%\begin{macro}{\shortdayofweeknameidpolish}
@@ -3866,7 +4256,8 @@ Month numbers should go from 1 to 12}%
\or Czw.%
\or Pt.%
\or Sob.%
-\fi}
+\fi}%
+\global\let\shortdayofweeknameidpolish\shortdayofweeknameidpolish
% \end{macrocode}
%\end{macro}
%\iffalse
@@ -3882,7 +4273,7 @@ Month numbers should go from 1 to 12}%
%\subsubsection{Portuges}
% Identify file
% \begin{macrocode}
-\ProvidesFile{dt-portuges.def}[2004/10/31]
+\ProvidesFile{dt-portuges.def}[2013/09/10]%
% \end{macrocode}
% Define week day names.
% \begin{macrocode}
@@ -3895,7 +4286,8 @@ Month numbers should go from 1 to 12}%
\or quinta-feira%
\or sexta-feira%
\or sabado%
-\fi}
+\fi}%
+\global\let\dayofweeknameidportuges\dayofweeknameidportuges
% \end{macrocode}
% Define month names.
% \begin{macrocode}
@@ -3919,7 +4311,8 @@ Month numbers should go from 1 to 12}%
\else
\PackageError{datetime}{Invalid Month number \the\@orgargctr}{%
Month numbers should go from 1 to 12}%
-\fi}
+\fi}%
+\global\let\monthnameportuges\monthnameportuges
% \end{macrocode}
% (Re)Define declaration to switch to this format.
% \begin{macrocode}
@@ -3927,7 +4320,8 @@ Month numbers should go from 1 to 12}%
\renewcommand{\formatdate}[3]{%
\@day=##1\relax\@month=##2\relax\@year=##3\relax
\number\@day\space de\space\monthnameportuges[\@month]\space
-de\space\number\@year}}
+de\space\number\@year}}%
+\global\let\dateportuges\dateportuges
% \end{macrocode}
%\iffalse
% \begin{macrocode}
@@ -3942,7 +4336,7 @@ de\space\number\@year}}
%\subsubsection{Romanian}
% Identify file
% \begin{macrocode}
-\ProvidesFile{dt-romanian.def}[2004/10/31]
+\ProvidesFile{dt-romanian.def}[2013/09/10]%
% \end{macrocode}
% Define month names.
% \begin{macrocode}
@@ -3966,14 +4360,16 @@ Month numbers should go from 1 to 12}%
\else
\PackageError{datetime}{Invalid Month number \the\@orgargctr}{%
Month numbers should go from 1 to 12}%
-\fi}
+\fi}%
+\global\let\monthnameromanian\monthnameromanian
% \end{macrocode}
% (Re)Define declaration to switch to this format.
% \begin{macrocode}
\DeclareRobustCommand*\dateromanian{%
\renewcommand{\formatdate}[3]{%
\@day=##1\relax\@month=##2\relax\@year=##3\relax
-\number\@day~\monthnameromanian[\@month]\space\number\@year}}
+\number\@day~\monthnameromanian[\@month]\space\number\@year}}%
+\global\let\dateromanian\dateromanian
% \end{macrocode}
% The following were provided by Daniel Dumitriu:
% \begin{macrocode}
@@ -3986,7 +4382,8 @@ Month numbers should go from 1 to 12}%
\or joi%
\or vineri%
\or s\^{a}mb\u{a}t\u{a}%
-\fi}
+\fi}%
+\global\let\dayofweeknameidromanian\dayofweeknameidromanian
% \end{macrocode}
%
% \begin{macrocode}
@@ -3999,7 +4396,8 @@ Month numbers should go from 1 to 12}%
\or J%
\or V%
\or S%
-\fi}
+\fi}%
+\global\let\shortdayofweeknameidromanian\shortdayofweeknameidromanian
% \end{macrocode}
%\iffalse
% \begin{macrocode}
@@ -4014,7 +4412,7 @@ Month numbers should go from 1 to 12}%
%\subsubsection{Russian}
% Identify file
% \begin{macrocode}
-\ProvidesFile{dt-russian.def}[2004/10/31]
+\ProvidesFile{dt-russian.def}[2013/09/10]%
% \end{macrocode}
% Define month names.
% \begin{macrocode}
@@ -4038,14 +4436,16 @@ Month numbers should go from 1 to 12}%
\else
\PackageError{datetime}{Invalid Month number \the\@orgargctr}{%
Month numbers should go from 1 to 12}%
-\fi}
+\fi}%
+\global\let\monthnamerussian\monthnamerussian
% \end{macrocode}
% (Re)Define declaration to switch to this format.
% \begin{macrocode}
\DeclareRobustCommand*\daterussian{%
\renewcommand{\formatdate}[3]{%
\@day=##1\relax\@month=##2\relax\@year=##3\relax
-\number\@day~\monthnamerussian[\@month]\ \number\@year~\cyrg.}}
+\number\@day~\monthnamerussian[\@month]\ \number\@year~\cyrg.}}%
+\global\let\daterussian\daterussian
% \end{macrocode}
%\iffalse
% \begin{macrocode}
@@ -4060,7 +4460,7 @@ Month numbers should go from 1 to 12}%
%\subsubsection{Samin}
% Identify file
% \begin{macrocode}
-\ProvidesFile{dt-samin.def}[2004/10/31]
+\ProvidesFile{dt-samin.def}[2013/09/10]%
% \end{macrocode}
% Define month names.
% \begin{macrocode}
@@ -4084,7 +4484,8 @@ Month numbers should go from 1 to 12}%
\else
\PackageError{datetime}{Invalid Month number \the\@orgargctr}{%
Month numbers should go from 1 to 12}%
-\fi}
+\fi}%
+\global\let\monthnamesamin\monthnamesamin
% \end{macrocode}
% (Re)Define declaration to switch to this format.
% \begin{macrocode}
@@ -4092,7 +4493,8 @@ Month numbers should go from 1 to 12}%
\renewcommand{\formatdate}[3]{%
\@day=##1\relax\@month=##2\relax\@year=##3\relax
\monthnamesamin[\@month]\space\number\@day.~b.\space
-\number\@year}}
+\number\@year}}%
+\global\let\datesamin\datesamin
% \end{macrocode}
%\iffalse
% \begin{macrocode}
@@ -4107,7 +4509,7 @@ Month numbers should go from 1 to 12}%
%\subsubsection{Scottish}
% Identify file
% \begin{macrocode}
-\ProvidesFile{dt-scottish.def}[2004/10/31]
+\ProvidesFile{dt-scottish.def}[2013/09/10]%
% \end{macrocode}
% Define month names.
% \begin{macrocode}
@@ -4131,14 +4533,16 @@ Month numbers should go from 1 to 12}%
\else
\PackageError{datetime}{Invalid Month number \the\@orgargctr}{%
Month numbers should go from 1 to 12}%
-\fi}
+\fi}%
+\global\let\monthnamescottish\monthnamescottish
% \end{macrocode}
% (Re)Define declaration to switch to this format.
% \begin{macrocode}
\DeclareRobustCommand*\datescottish{%
\renewcommand{\formatdate}[3]{%
\@day=##1\relax\@month=##2\relax\@year=##3\relax
-\number\@day\space\monthnamescottish[\@month]\space \number\@year}}
+\number\@day\space\monthnamescottish[\@month]\space \number\@year}}%
+\global\let\datescottish\datescottish
% \end{macrocode}
%\iffalse
% \begin{macrocode}
@@ -4153,7 +4557,7 @@ Month numbers should go from 1 to 12}%
%\subsubsection{Serbian}
% Identify file
% \begin{macrocode}
-\ProvidesFile{dt-serbian.def}[2004/10/31]
+\ProvidesFile{dt-serbian.def}[2013/09/10]%
% \end{macrocode}
% Define month names.
% \begin{macrocode}
@@ -4177,14 +4581,16 @@ Month numbers should go from 1 to 12}%
\else
\PackageError{datetime}{Invalid Month number \the\@orgargctr}{%
Month numbers should go from 1 to 12}%
-\fi}
+\fi}%
+\global\let\monthnameserbian\monthnameserbian
% \end{macrocode}
% (Re)Define declaration to switch to this format.
% \begin{macrocode}
\DeclareRobustCommand*\dateserbian{%
\renewcommand{\formatdate}[3]{%
\@day=##1\relax\@month=##2\relax\@year=##3\relax
-\number\@day.~\monthnameserbian[\@month]\space \number\@year}}
+\number\@day.~\monthnameserbian[\@month]\space \number\@year}}%
+\global\let\dateserbian\dateserbian
% \end{macrocode}
%\iffalse
% \begin{macrocode}
@@ -4199,7 +4605,7 @@ Month numbers should go from 1 to 12}%
%\subsubsection{Slovak}
% Identify file
% \begin{macrocode}
-\ProvidesFile{dt-slovak.def}[2004/10/31]
+\ProvidesFile{dt-slovak.def}[2013/09/10]%
% \end{macrocode}
% Define month names.
% \begin{macrocode}
@@ -4222,14 +4628,16 @@ numbers should go from 1 to 12}%
\or decembra%
\else \PackageError{datetime}{Invalid Month number \the\@orgargctr}{%
Month numbers should go from 1 to 12}%
-\fi}
+\fi}%
+\global\let\monthnameslovak\monthnameslovak
% \end{macrocode}
% (Re)Define declaration to switch to this format.
% \begin{macrocode}
\DeclareRobustCommand*\dateslovak{%
\renewcommand{\formatdate}[3]{%
\@day=##1\relax\@month=##2\relax\@year=##3\relax
-\number\@day.~\monthnameslovak[\@month]\space \number\@year}}
+\number\@day.~\monthnameslovak[\@month]\space \number\@year}}%
+\global\let\dateslovak\dateslovak
% \end{macrocode}
%\iffalse
% \begin{macrocode}
@@ -4244,7 +4652,7 @@ Month numbers should go from 1 to 12}%
%\subsubsection{Slovene}
% Identify file
% \begin{macrocode}
-\ProvidesFile{dt-slovene.def}[2004/10/31]
+\ProvidesFile{dt-slovene.def}[2013/09/10]%
% \end{macrocode}
% Define month names.
% \begin{macrocode}
@@ -4267,14 +4675,16 @@ Month numbers should go from 1 to 12}%
\or december%
\else \PackageError{datetime}{Invalid Month number \the\@orgargctr}{%
Month numbers should go from 1 to 12}%
-\fi}
+\fi}%
+\global\let\monthnameslovene\monthnameslovene
% \end{macrocode}
% (Re)Define declaration to switch to this format.
% \begin{macrocode}
\DeclareRobustCommand*\dateslovene{%
\renewcommand{\formatdate}[3]{%
\@day=##1\relax\@month=##2\relax\@year=##3\relax
-\number\@day.~\monthnameslovene[\@month]\space \number\@year}}
+\number\@day.~\monthnameslovene[\@month]\space \number\@year}}%
+\global\let\dateslovene\dateslovene
% \end{macrocode}
%\iffalse
% \begin{macrocode}
@@ -4289,7 +4699,7 @@ Month numbers should go from 1 to 12}%
%\subsubsection{Spanish}
% Identify file
% \begin{macrocode}
-\ProvidesFile{dt-spanish.def}[2004/10/31]
+\ProvidesFile{dt-spanish.def}[2013/09/10]%
% \end{macrocode}
% Define week day names.
% \begin{macrocode}
@@ -4302,7 +4712,8 @@ Month numbers should go from 1 to 12}%
\or jueves%
\or viernes%
\or s\'abado%
-\fi}
+\fi}%
+\global\let\dayofweeknameidspanish\dayofweeknameidspanish
% \end{macrocode}
% Define abbreviated week day names (is this correct?)
% \begin{macrocode}
@@ -4315,7 +4726,8 @@ Month numbers should go from 1 to 12}%
\or jue%
\or vie%
\or s\'ab%
-\fi}
+\fi}%
+\global\let\shortdayofweeknameidspanish\shortdayofweeknameidspanish
% \end{macrocode}
% Define month names.
% \begin{macrocode}
@@ -4338,14 +4750,16 @@ Month numbers should go from 1 to 12}%
\or diciembre%
\else \PackageError{datetime}{Invalid Month number \the\@orgargctr}{%
Month numbers should go from 1 to 12}%
-\fi}
+\fi}%
+\global\let\monthnamespanish\monthnamespanish
% \end{macrocode}
% (Re)Define declaration to switch to this format.
% \begin{macrocode}
\DeclareRobustCommand*\datespanish{%
\renewcommand{\formatdate}[3]{%
\@day=##1\relax\@month=##2\relax\@year=##3\relax
-\number\@day~de \monthnamespanish[\@month]\ de~\number\@year}}
+\number\@day~de \monthnamespanish[\@month]\ de~\number\@year}}%
+\global\let\datespanish\datespanish
% \end{macrocode}
%\iffalse
% \begin{macrocode}
@@ -4360,7 +4774,7 @@ Month numbers should go from 1 to 12}%
%\subsubsection{Swedish}
% Identify file
% \begin{macrocode}
-\ProvidesFile{dt-swedish.def}[2004/10/31]
+\ProvidesFile{dt-swedish.def}[2013/09/10]%
% \end{macrocode}
% Define month names.
% \begin{macrocode}
@@ -4383,7 +4797,8 @@ Month numbers should go from 1 to 12}%
\or december%
\else \PackageError{datetime}{Invalid Month number \the\@orgargctr}{%
Month numbers should go from 1 to 12}%
-\fi}
+\fi}%
+\global\let\monthnameswedish\monthnameswedish
% \end{macrocode}
% (Re)Define declaration to switch to this format
% (day monthname year).
@@ -4391,25 +4806,28 @@ Month numbers should go from 1 to 12}%
\DeclareRobustCommand*\dateswedish{%
\renewcommand{\formatdate}[3]{%
\@day=##1\relax\@month=##2\relax\@year=##3\relax
-\number\@day~\monthnameswedish[\@month]\space\number\@year}}
+\number\@day~\monthnameswedish[\@month]\space\number\@year}}%
+\global\let\dateswedish\dateswedish
% \end{macrocode}
% (Re)Define declaration to switch to this format
% (two-digit numerical).
% \begin{macrocode}
\DeclareRobustCommand*\datesymd{%
-\renewcommand{\formatdate}[3]{%
-\@day=##1\relax\@month=##2\relax\@year=##3\relax
-\number\@year-\two@digits\@month-\two@digits\@day}
-}
+ \renewcommand{\formatdate}[3]{%
+ \@day=##1\relax\@month=##2\relax\@year=##3\relax
+ \number\@year-\two@digits\@month-\two@digits\@day}%
+}%
+\global\let\datesymd\datesymd
% \end{macrocode}
% (Re)Define declaration to switch to this format
% (numerical).
% \begin{macrocode}
\DeclareRobustCommand*\datesdmy{%
-\renewcommand{\formatdate}[3]{%
-\@day=##1\relax\@month=##2\relax\@year=##3\relax
-\number\@day/\number\@month\space\number\@year}
-}
+ \renewcommand{\formatdate}[3]{%
+ \@day=##1\relax\@month=##2\relax\@year=##3\relax
+ \number\@day/\number\@month\space\number\@year}%
+}%
+\global\let\datesdmy\datesdmy
% \end{macrocode}
%\iffalse
% \begin{macrocode}
@@ -4424,7 +4842,7 @@ Month numbers should go from 1 to 12}%
%\subsubsection{Turkish}
% Identify file
% \begin{macrocode}
-\ProvidesFile{dt-turkish.def}[2004/10/31]
+\ProvidesFile{dt-turkish.def}[2013/09/10]%
% \end{macrocode}
% Define month names.
% \begin{macrocode}
@@ -4447,14 +4865,16 @@ Month numbers should go from 1 to 12}%
\or Aral\i{}k%
\else \PackageError{datetime}{Invalid Month number \the\@orgargctr}{%
Month numbers should go from 1 to 12}%
-\fi}
+\fi}%
+\global\let\monthnameturkish\monthnameturkish
% \end{macrocode}
% (Re)Define declaration to switch to this format.
% \begin{macrocode}
\DeclareRobustCommand*\dateturkish{%
\renewcommand{\formatdate}[3]{%
\@day=##1\relax\@month=##2\relax\@year=##3\relax
-\number\@day~\monthnameturkish[\@month]\space\number\@year}}
+\number\@day~\monthnameturkish[\@month]\space\number\@year}}%
+\global\let\dateturkish\dateturkish
% \end{macrocode}
%\iffalse
% \begin{macrocode}
@@ -4469,36 +4889,36 @@ Month numbers should go from 1 to 12}%
%\subsubsection{UKenglish}
% Identify file
% \begin{macrocode}
-\ProvidesFile{dt-UKenglish.def}[2010/07/07]
+\ProvidesFile{dt-UKenglish.def}[2013/09/10]%
% \end{macrocode}
%\begin{macro}{\dateUKenglish}
% \begin{macrocode}
-\let\dateUKenglish\longdate
+\global\let\dateUKenglish\longdate
% \end{macrocode}
%\end{macro}
%\begin{macro}{\monthnameUKenglish}
% \begin{macrocode}
-\let\monthnameUKenglish\monthnameenglish
+\global\let\monthnameUKenglish\monthnameenglish
% \end{macrocode}
%\end{macro}
%\begin{macro}{\shortmonthnameUKenglish}
% \begin{macrocode}
-\let\shortmonthnameUKenglish\shortmonthnameenglish
+\global\let\shortmonthnameUKenglish\shortmonthnameenglish
% \end{macrocode}
%\end{macro}
%\begin{macro}{\dayofweeknameidUKenglish}
% \begin{macrocode}
-\let\dayofweeknameidUKenglish\dayofweeknameidenglish
+\global\let\dayofweeknameidUKenglish\dayofweeknameidenglish
% \end{macrocode}
%\end{macro}
%\begin{macro}{\shortdayofweeknameidUKenglish}
% \begin{macrocode}
-\let\shortdayofweeknameidUKenglish\shortdayofweeknameidenglish
+\global\let\shortdayofweeknameidUKenglish\shortdayofweeknameidenglish
% \end{macrocode}
%\end{macro}
%\begin{macro}{\ordinaldateUKenglish}
% \begin{macrocode}
-\let\ordinaldateUKenglish\ordinaldateenglish
+\global\let\ordinaldateUKenglish\ordinaldateenglish
% \end{macrocode}
%\end{macro}
%\iffalse
@@ -4514,7 +4934,7 @@ Month numbers should go from 1 to 12}%
%\subsubsection{Ukraine}
% Identify file
% \begin{macrocode}
-\ProvidesFile{dt-ukraineb.def}[2004/10/31]
+\ProvidesFile{dt-ukraineb.def}[2013/09/10]%
% \end{macrocode}
% Define month names.
% \begin{macrocode}
@@ -4537,14 +4957,16 @@ Month numbers should go from 1 to 12}%
\cyrg\cyrr\cyru\cyrd\cyrn\cyrya%
\else \PackageError{datetime}{Invalid Month number \the\@orgargctr}{%
Month numbers should go from 1 to 12}%
-\fi}
+\fi}%
+\global\let\monthnameukraineb\monthnameukraineb
% \end{macrocode}
% (Re)Define declaration to switch to this format.
% \begin{macrocode}
\DeclareRobustCommand*\dateukraineb{%
\renewcommand{\formatdate}[3]{%
\@day=##1\relax\@month=##2\relax\@year=##3\relax
-\number\@day~\monthnameukraineb[\@month]\space\number\@year~\cyrr.}}
+\number\@day~\monthnameukraineb[\@month]\space\number\@year~\cyrr.}}%
+\global\let\dateukraineb\dateukraineb
% \end{macrocode}
%\iffalse
% \begin{macrocode}
@@ -4559,36 +4981,37 @@ Month numbers should go from 1 to 12}%
%\subsubsection{USenglish}
% Identify file
% \begin{macrocode}
-\ProvidesFile{dt-USenglish.def}[2010/07/07]
+\ProvidesFile{dt-USenglish.def}[2013/09/10]%
% \end{macrocode}
%\begin{macro}{\dateUSenglish}
% \begin{macrocode}
-\let\dateUSenglish\usdate
+\global\let\dateUSenglish\usdate
% \end{macrocode}
%\end{macro}
%\begin{macrocode}{\monthnameUSenglish}
% \begin{macrocode}
-\let\monthnameUSenglish\monthnameenglish
+\global\let\monthnameUSenglish\monthnameenglish
% \end{macrocode}
%\end{macro}
%\begin{macro}{\shortmonthnameUSenglish}
% \begin{macrocode}
-\let\shortmonthnameUSenglish\shortmonthnameenglish
+\global\let\shortmonthnameUSenglish\shortmonthnameenglish
% \end{macrocode}
%\end{macro}
%\begin{macro}{\dayofweeknameidUSenglish}
% \begin{macrocode}
-\let\dayofweeknameidUSenglish\dayofweeknameidenglish
+\global\let\dayofweeknameidUSenglish\dayofweeknameidenglish
% \end{macrocode}
%\end{macro}
%\begin{macrocode}{\shortdayofweeknameidUSenglish}
% \begin{macrocode}
-\let\shortdayofweeknameidUSenglish\shortdayofweeknameidenglish
+\global\let\shortdayofweeknameidUSenglish\shortdayofweeknameidenglish
% \end{macrocode}
%\end{macro}
%\begin{macro}{\ordinaldateUSenglish}
% \begin{macrocode}
-\newcommand*{\ordinaldateUSenglish}[1]{#1}
+\newcommand*{\ordinaldateUSenglish}[1]{#1}%
+\global\let\ordinaldateUSenglish\ordinaldateUSenglish
% \end{macrocode}
%\end{macro}
%\iffalse
@@ -4604,7 +5027,7 @@ Month numbers should go from 1 to 12}%
%\subsubsection{USorbian}
% Identify file
% \begin{macrocode}
-\ProvidesFile{dt-usorbian.def}[2004/10/31]
+\ProvidesFile{dt-usorbian.def}[2013/09/10]%
% \end{macrocode}
% Define (new) month names.
% \begin{macrocode}
@@ -4627,7 +5050,8 @@ Month numbers should go from 1 to 12}%
\or decembra%
\else \PackageError{datetime}{Invalid Month number \the\@orgargctr}{%
Month numbers should go from 1 to 12}%
-\fi}
+\fi}%
+\global\let\monthnamenewusorbian\monthnamenewusorbian
% \end{macrocode}
% Define (old) month names.
% \begin{macrocode}
@@ -4649,29 +5073,32 @@ Month numbers should go from 1 to 12}%
\or nazymnika%
\or hodownika%
\else \PackageError{datetime}{Invalid Month number \the\@orgargctr}{Month numbers should go from 1 to 12}%
-\fi}
+\fi}%
+\global\let\monthnameoldusorbian\monthnameoldusorbian
% \end{macrocode}
% Set up default
% \begin{macrocode}
-\let\monthnameusorbian=\monthnamenewusorbian
+\global\let\monthnameusorbian\monthnamenewusorbian
% \end{macrocode}
% (Re)Define declaration to switch to (new) format.
% \begin{macrocode}
\DeclareRobustCommand*\newdateusorbian{%
\renewcommand{\formatdate}[3]{%
\@day=##1\relax\@month=##2\relax\@year=##3\relax
-\number\@day.~\monthnamenewusorbian[\@month]\space\number\@year}}
+\number\@day.~\monthnamenewusorbian[\@month]\space\number\@year}}%
+\global\let\newdateusorbian\newdateusorbian
% \end{macrocode}
% (Re)Define declaration to switch to (old) format.
% \begin{macrocode}
\DeclareRobustCommand*\olddateusorbian{%
\renewcommand{\formatdate}[3]{%
\@day=##1\relax\@month=##2\relax\@year=##3\relax
-\number\@day.~\monthnameoldusorbian[\@month]\space\number\@year}}
+\number\@day.~\monthnameoldusorbian[\@month]\space\number\@year}}%
+\global\let\olddateusorbian\olddateusorbian
% \end{macrocode}
% Set up default
% \begin{macrocode}
-\let\dateusorbian\newdateusorbian
+\global\let\dateusorbian\newdateusorbian
% \end{macrocode}
%\iffalse
% \begin{macrocode}
@@ -4686,13 +5113,14 @@ Month numbers should go from 1 to 12}%
%\subsubsection{Welsh}
% Identify file
% \begin{macrocode}
-\ProvidesFile{dt-welsh.def}[2010/09/21]
+\ProvidesFile{dt-welsh.def}[2013/09/10]%
% \end{macrocode}
%\begin{macro}{\ordinaldatewelsh}
% Welsh version:
% \begin{macrocode}
\providecommand*{\ordinaldatewelsh}[1]{%
-#1\ifnum#1=1\/\textsuperscript{a\~n}\fi}
+#1\ifnum#1=1\/\textsuperscript{a\~n}\fi}%
+\global\let\ordinaldatewelsh\ordinaldatewelsh
% \end{macrocode}
%\end{macro}
% Define month names.
@@ -4716,7 +5144,8 @@ Month numbers should go from 1 to 12}%
\or Rhagfyr%
\else \PackageError{datetime}{Invalid Month number \the\@orgargctr}{%
Month numbers should go from 1 to 12}%
-\fi}
+\fi}%
+\global\let\monthnamewelsh\monthnamewelsh
% \end{macrocode}
% (Re)Define declaration to switch to this format.
% \begin{macrocode}
@@ -4725,7 +5154,8 @@ Month numbers should go from 1 to 12}%
\@day=##1\relax\@month=##2\relax\@year=##3\relax
\ifnum\@day=1\relax 1\/$^{\mathrm{a\tilde{n}}}$\else
\number\@day\fi \space a\space viz\space
-\monthnamewelsh[\@month]\space\number\@year}}
+\monthnamewelsh[\@month]\space\number\@year}}%
+\global\let\datewelsh\datewelsh
% \end{macrocode}
% \subsection{LaTeX2HTML Perl Script}
%\iffalse
@@ -6669,6 +7099,17 @@ sub set_timeformat_xxivtime{
$timeformat = "TWODIGIT{THEHOUR}\\timeseparator TWODIGIT{THEMINUTE}";
}
+sub format_xxivtime{
+ local($hour,$min)=@_;
+
+ sprintf "%02d\\timeseparator %02d", $hour, $min;
+}
+
+sub do_cmd_xxivtime{
+
+ join('', &format_xxivtime($global{HOUR},$global{MINUTE}), $_[0]);
+}
+
sub format_ampmtime{
local($hour,$min)=@_;
local($timestring);
@@ -6677,15 +7118,13 @@ sub format_ampmtime{
$timestring = sprintf "%d\\timeseparator %02d", $hourxii, $min;
$timestring .= ($hour < 12 ?
- "\\amname " : ($hour = 12 ? " \\noon" :"\\pmname "));
+ "\\amname " : (($hour eq 12 and $min eq 0) ? " \\noon" :"\\pmname "));
$timestring
}
sub do_cmd_ampmtime{
- local($_) = @_;
-
- join('', &format_ampm($global{HOUR},$global{MINUTE}), $_[0]);
+ join('', &format_ampmtime($global{HOUR},$global{MINUTE}), $_[0]);
}
sub do_cmd_timeformat_at_ampmtime{