%\iffalse %<*package> %% \CharacterTable %% {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z %% Lower-case \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z %% Digits \0\1\2\3\4\5\6\7\8\9 %% Exclamation \! Double quote \" Hash (number) \# %% Dollar \$ Percent \% Ampersand \& %% Acute accent \' Left paren \( Right paren \) %% Asterisk \* Plus \+ Comma \, %% Minus \- Point \. Solidus \/ %% Colon \: Semicolon \; Less than \< %% Equals \= Greater than \> Question mark \? %% Commercial at \@ Left bracket \[ Backslash \\ %% Right bracket \] Circumflex \^ Underscore \_ %% Grave accent \` Left brace \{ Vertical bar \| %% Right brace \} Tilde \~} % % % Doc-Source file to use with LaTeX2e % Copyright (C) 2015 Nicola Talbot, all rights reserved. % Copyright (C) 2017-19 Sebastian Friedl, all rights reserved. % \fi % % % % \subsection{Austrian German (de-AT): \texttt{datetime2-de-AT.ldf}} % \changes{2.0}{2017-10-03}{Added regional variant: Austrian German (de-AT)} % % Identify Module. % \begin{macrocode} \ProvidesDateTimeModule{de-AT}[2019/12/13 v3.0] % \end{macrocode} % Require the base German module. % \begin{macrocode} \RequireDateTimeModule{german-base} % \end{macrocode} % % % Allow the to configure the "de-AT" and "de-AT-numeric" styles. % The package wide separators such as \cs{dtm@datetimesep} are not used % in case other date formats are also required. % %\begin{macro}{\DTMdeATdowdaysep} % The separator between weekday and day % \begin{macrocode} \newcommand*{\DTMdeATdowdaysep}{,\space} % \end{macrocode} %\end{macro} % %\begin{macro}{\DTMdeATdaymonthsep} % The separator between the day and month for the text format. % \begin{macrocode} \newcommand*{\DTMdeATdaymonthsep}{.\DTMtexorpdfstring{\protect~}{\space}} % \end{macrocode} %\end{macro} % %\begin{macro}{\DTMdeATmonthyearsep} % The separator between the month and year for the text format. % \begin{macrocode} \newcommand*{\DTMdeATmonthyearsep}{\space} % \end{macrocode} %\end{macro} % %\begin{macro}{\DTMdeATdatetimesep} % The separator between the date and time blocks in the full format % (either text or numeric). % \begin{macrocode} \newcommand*{\DTMdeATdatetimesep}{,\space} % \end{macrocode} %\end{macro} % %\begin{macro}{\DTMdeATtimezonesep} % The separator between the time and zone blocks in the full format % (either text or numeric). % \begin{macrocode} \newcommand*{\DTMdeATtimezonesep}{\space} % \end{macrocode} %\end{macro} % %\begin{macro}{\DTMdeATdatesep} % The separator for the numeric date format. % \begin{macrocode} \newcommand*{\DTMdeATdatesep}{.} % \end{macrocode} %\end{macro} % %\begin{macro}{\DTMdeATtimesep} % The separator for the numeric time format. % \begin{macrocode} \newcommand*{\DTMdeATtimesep}{:} % \end{macrocode} %\end{macro} % % Provide keys that can be used in \cs{DTMlangsetup} to set these % separators. % \begin{macrocode} \DTMdefkey{de-AT}{dowdaysep}{\renewcommand*{\DTMdeATdowdaysep}{#1}} \DTMdefkey{de-AT}{daymonthsep}{\renewcommand*{\DTMdeATdaymonthsep}{#1}} \DTMdefkey{de-AT}{monthyearsep}{\renewcommand*{\DTMdeATmonthyearsep}{#1}} \DTMdefkey{de-AT}{datetimesep}{\renewcommand*{\DTMdeATdatetimesep}{#1}} \DTMdefkey{de-AT}{timezonesep}{\renewcommand*{\DTMdeATtimezonesep}{#1}} \DTMdefkey{de-AT}{datesep}{\renewcommand*{\DTMdeATdatesep}{#1}} \DTMdefkey{de-AT}{timesep}{\renewcommand*{\DTMdeATtimesep}{#1}} % \end{macrocode} % % % Define a boolean key that can switch between full and abbreviated formats for % the month and day of week names. % \begin{macrocode} \DTMdefboolkey{de-AT}{abbr}[true]{} % \end{macrocode} % % The default is to show the full names. % \begin{macrocode} \DTMsetbool{de-AT}{abbr}{false} % \end{macrocode} % % Define a boolean key that determines if the time zone mappings % should be used. % \begin{macrocode} \DTMdefboolkey{de-AT}{mapzone}[true]{} % \end{macrocode} % The default is to use mappings. % \begin{macrocode} \DTMsetbool{de-AT}{mapzone}{true} % \end{macrocode} % % Define a boolean key that determines if the day of month should be % displayed. % \begin{macrocode} \DTMdefboolkey{de-AT}{showdayofmonth}[true]{} % \end{macrocode} % The default is to show the day of month. % \begin{macrocode} \DTMsetbool{de-AT}{showdayofmonth}{true} % \end{macrocode} % % Define a boolean key that determines if the year should be % displayed. % \begin{macrocode} \DTMdefboolkey{de-AT}{showyear}[true]{} % \end{macrocode} % The default is to show the year. % \begin{macrocode} \DTMsetbool{de-AT}{showyear}{true} % \end{macrocode} % % % Define the "de-AT" style. % \begin{macrocode} \DTMnewstyle {de-AT}% label {% date style \renewcommand*\DTMdisplaydate[4]{% \ifDTMshowdow \ifnum##4>-1 \DTMifbool{de-AT}{abbr}% {\DTMgermanshortweekdayname{##4}}% {\DTMgermanweekdayname{##4}}% \DTMdeATdowdaysep \fi \fi % \DTMifbool{de-AT}{showdayofmonth}% {\DTMgermanordinal{##3}\DTMdeATdaymonthsep}% {}% % \DTMifbool{de-AT}{abbr}% {\DTMdeATshortmonthname{##2}}% {\DTMdeATmonthname{##2}}% % \DTMifbool{de-AT}{showyear}% {% \DTMdeATmonthyearsep% \number##1 % space intended }% {}% }% \renewcommand*\DTMDisplaydate[4]{% \ifDTMshowdow \ifnum##4>-1 \DTMifbool{de-AT}{abbr}% {\DTMgermanshortweekdayname{##4}}% {\DTMgermanweekdayname{##4}}% \DTMdeATdowdaysep \fi \fi % \DTMifbool{de-AT}{showdayofmonth}% {\DTMgermanordinal{##3}\DTMdeATdaymonthsep}% {}% % \DTMifbool{de-AT}{abbr}% {\DTMdeATshortmonthname{##2}}% {\DTMdeATmonthname{##2}}% % \DTMifbool{de-AT}{showyear}% {% \DTMdeATmonthyearsep% \number##1 % space intended }% {}% }% }% {% time style (use default) \renewcommand*\DTMdisplaytime[3]{% \DTMtwodigits{##1}% \DTMdeATtimesep\DTMtwodigits{##2}% \ifDTMshowseconds\DTMdeATtimesep\DTMtwodigits{##3}\fi }% }% {% zone style \DTMresetzones \DTMgermanzonemaps \renewcommand*{\DTMdisplayzone}[2]{% \DTMifbool{de-AT}{mapzone}% {\DTMusezonemapordefault{##1}{##2}}% {% \ifnum##1<0\else+\fi\DTMtwodigits{##1}% \ifDTMshowzoneminutes\DTMdeATtimesep\DTMtwodigits{##2}\fi }% }% }% {% full style \renewcommand*{\DTMdisplay}[9]{% \ifDTMshowdate \DTMdisplaydate{##1}{##2}{##3}{##4}% \DTMdeATdatetimesep \fi \DTMdisplaytime{##5}{##6}{##7}% \ifDTMshowzone \DTMdeATtimezonesep \DTMdisplayzone{##8}{##9}% \fi }% \renewcommand*{\DTMDisplay}[9]{% \ifDTMshowdate \DTMDisplaydate{##1}{##2}{##3}{##4}% \DTMdeATdatetimesep \fi \DTMdisplaytime{##5}{##6}{##7}% \ifDTMshowzone \DTMdeATtimezonesep \DTMdisplayzone{##8}{##9}% \fi }% }% % \end{macrocode} % % Define the corresponding numeric style. % \changes{3.0}{2019-12-13}{Change Austrian numeric style} % \begin{macrocode} \DTMnewstyle {de-AT-numeric}% label {% date style \renewcommand*\DTMdisplaydate[4]{% \ifDTMshowdow \ifnum##4>-1 \DTMifbool{de-AT}{abbr}% {\DTMgermanshortweekdayname{##4}}% {\DTMgermanweekdayname{##4}}% \DTMdeATdowdaysep \fi \fi % \DTMifbool{de-AT}{showdayofmonth}% {% \DTMtwodigits{##3}% \DTMdeATdatesep }% {}% \DTMtwodigits{##2}% \DTMdeATdatesep% \DTMifbool{de-AT}{showyear}% {% \DTMifbool{de-AT}{abbr}% {\DTMtwodigits{##1}}% {\number##1 }% space intended }% {}% }% \renewcommand*{\DTMDisplaydate}[4]{\DTMdisplaydate{##1}{##2}{##3}{##4}}% }% {% time style \renewcommand*\DTMdisplaytime[3]{% \DTMtwodigits{##1}% \DTMdeATtimesep\DTMtwodigits{##2}% \ifDTMshowseconds\DTMdeATtimesep\DTMtwodigits{##3}\fi }% }% {% zone style \DTMresetzones \DTMgermanzonemaps \renewcommand*{\DTMdisplayzone}[2]{% \DTMifbool{de-AT}{mapzone}% {\DTMusezonemapordefault{##1}{##2}}% {% \ifnum##1<0\else+\fi\DTMtwodigits{##1}% \ifDTMshowzoneminutes\DTMgermantimesep\DTMtwodigits{##2}\fi }% }% }% {% full style \renewcommand*{\DTMdisplay}[9]{% \ifDTMshowdate \DTMdisplaydate{##1}{##2}{##3}{##4}% \DTMdeATdatetimesep \fi \DTMdisplaytime{##5}{##6}{##7}% \ifDTMshowzone \DTMdeATtimezonesep \DTMdisplayzone{##8}{##9}% \fi }% \renewcommand*{\DTMDisplay}{\DTMdisplay}% } % \end{macrocode} % % Switch the style according to the \opt{useregional} setting. % \begin{macrocode} \DTMifcaseregional {}% do nothing {\DTMsetstyle{de-AT}}% {\DTMsetstyle{de-AT-numeric}}% % \end{macrocode} % % Redefine \cs{dategerman} (or \cs{date}\meta{dialect}) to prevent % \sty{babel} from resetting \cs{today}. (For this to work, % \sty{babel} must already have been loaded if it's required.) % \begin{macrocode} \ifcsundef{date\CurrentTrackedDialect} {% \ifundef\dategerman {}% do nothing {% \def\dategerman{% \DTMifcaseregional {}% do nothing {\DTMsetstyle{de-AT}}% {\DTMsetstyle{de-AT-numeric}}% }% }% }% {% \csdef{date\CurrentTrackedDialect}{% \DTMifcaseregional {}% do nothing {\DTMsetstyle{de-AT}}% {\DTMsetstyle{de-AT-numeric}}% }% }% % \end{macrocode} % \endinput