summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/source/latex/tudscr/tudscr-fields.dtx
diff options
context:
space:
mode:
Diffstat (limited to 'Master/texmf-dist/source/latex/tudscr/tudscr-fields.dtx')
-rw-r--r--Master/texmf-dist/source/latex/tudscr/tudscr-fields.dtx359
1 files changed, 208 insertions, 151 deletions
diff --git a/Master/texmf-dist/source/latex/tudscr/tudscr-fields.dtx b/Master/texmf-dist/source/latex/tudscr/tudscr-fields.dtx
index ea3da35692c..74d37b5b2d3 100644
--- a/Master/texmf-dist/source/latex/tudscr/tudscr-fields.dtx
+++ b/Master/texmf-dist/source/latex/tudscr/tudscr-fields.dtx
@@ -1,10 +1,10 @@
-% \CheckSum{838}
+% \CheckSum{875}
% \iffalse meta-comment
%
% TUD-Script -- Corporate Design of Technische Universität Dresden
% ----------------------------------------------------------------------------
%
-% Copyright (C) Falk Hanisch <hanisch.latex@outlook.com>, 2012-2017
+% Copyright (C) Falk Hanisch <hanisch.latex@outlook.com>, 2012-2019
%
% ----------------------------------------------------------------------------
%
@@ -48,17 +48,24 @@
%
% \iffalse
%%% From File: tudscr-fields.dtx
-%<*driver>
-\ifx\ProvidesFile\@undefined\def\ProvidesFile#1[#2]{}\fi
-\ProvidesFile{tudscr-fields.dtx}[%
- 2017/03/29 v2.05l TUD-Script (input fields)%
+%<*dtx>
+% \fi
+%
+\ifx\ProvidesFile\undefined\def\ProvidesFile#1[#2]{}\fi
+\ProvidesFile{tudscr-fields.dtx}[2019/06/28 v2.06 TUD-Script\space%
+ (input fields)%
]
-\RequirePackage[ngerman=ngerman-x-latest]{hyphsubst}
+%
+% \iffalse
\documentclass[english,ngerman,xindy]{tudscrdoc}
-\usepackage[T1]{fontenc}
-\usepackage{selinput}\SelectInputMappings{adieresis={ä},germandbls={ß}}
+\ifpdftex{
+ \usepackage[T1]{fontenc}
+ \usepackage[ngerman=ngerman-x-latest]{hyphsubst}
+}{
+ \usepackage{fontspec}
+}
\usepackage{babel}
-\usepackage{tudscrfonts} % only load this package, if the fonts are installed
+\usepackage{tudscrfonts}
\KOMAoptions{parskip=half-}
\usepackage{bookmark}
\usepackage[babel]{microtype}
@@ -75,7 +82,7 @@
\tableofcontents
\DocInput{\filename}
\end{document}
-%</driver>
+%</dtx>
% \fi
%
% \selectlanguage{ngerman}
@@ -101,6 +108,36 @@
%<*class&!manual>
% \fi
%
+% \begin{macro}{\getfield}
+% \changes{v2.06}{2018/08/20}{neu}^^A
+% Hiermit wird der Inhalt des im zweiten (obligatorischen) Argument namentlich
+% genannten Feldes in die im ersten (optionalen) Argument gegebene Anweisung
+% expandiert.
+% \begin{macrocode}
+\newcommand*\getfield[2][\@firstofone]{%
+ \begingroup%
+ \def\tud@res@b{#1}%
+ \ifcsdef{@@#2}{%
+ \letcs\tud@res@a{@@#2}%
+ }{%
+ \ifcsdef{@#2}{%
+ \letcs\tud@res@a{@#2}%
+ }{%
+ \let\tud@res@a\@empty%
+ \ClassWarning{\TUD@Class@Name}{%
+ The internal field `@#2' does not exist%
+ }%
+ }%
+ }%
+ \edef\tud@res@a{%
+ \endgroup%
+ \expandonce\tud@res@b{\expandonce\tud@res@a}%
+ }%
+ \tud@res@a%
+}
+% \end{macrocode}
+% \end{macro}^^A \getfield
+%
% \subsection{Textfelder für die \TUDScript-Klassen}
%
% Von den Klassen benötigte Formularfelder werden definiert. Für das Setzen von
@@ -108,31 +145,32 @@
% bei einem übergebenen Argument führende und angehängte Leerzeichen beseitigt.
% \begin{macro}{\faculty}
% \begin{field}{\@faculty}
-% \begin{field}{\@@faculty}
+% \begin{field}{\@facultyfoot}
% \changes{v2.05}{2015/07/06}{neu}^^A
% \begin{macro}{\department}
% \begin{field}{\@department}
-% \begin{field}{\@@department}
+% \begin{field}{\@departmentfoot}
% \changes{v2.05}{2015/07/06}{neu}^^A
% \begin{macro}{\institute}
% \begin{field}{\@institute}
-% \begin{field}{\@@institute}
+% \begin{field}{\@institutefoot}
% \changes{v2.05}{2015/07/06}{neu}^^A
% \begin{macro}{\chair}
% \begin{field}{\@chair}
-% \begin{field}{\@@chair}
+% \begin{field}{\@chairfoot}
% \changes{v2.05}{2015/07/06}{neu}^^A
% Für die für die TUD-Kopfzeile kann mit \cs{faculty}\marg{Fakultät} die
% Fakultät angegeben werden, welche im Makro \cs{@faculty} gespeichert wird.
% Das gilt ebenso für die Angabe von Einrichtung, Institut und Lehrstuhls bzw.
% Professur. Dies erfolgt mit den Makros \cs{department}\marg{Fachrichtung},
-% \cs{institute}\marg{Institut} sowie \cs{chair}\marg{Lehrstuhl}, welche in den
-% Feldern \cs{@department}, \cs{@institute} und \cs{@chair} gespeichert werden.
+% \cs{institute}\marg{Institut} sowie \cs{chair}\marg{Lehrstuhl}, welche in
+% \cs{@department}, \cs{@institute} und \cs{@chair} gespeichert werden.
%
% Das optionale Argument wird zur Kompatibilität zur Klasse \cls{tudscrposter}
% vorgehalten. Wird das Paket geladen, kann mit dem optionalen Argument die
% Angabe der Struktureinheiten im Fußbereich variiert werden. Dafür werden die
-% Felder \cs{@@faculty}, \cs{@@department}, \cs{@@institute} sowie \cs{@@chair}
+% Felder \cs{@facultyfoot}, \cs{@departmentfoot}, \cs{@institutefoot} sowie
+% \cs{@chairfoot}
% definiert.
% \begin{macrocode}
\newcommand*\@faculty{}
@@ -146,26 +184,26 @@
\newcommand*\chair[2][]{\tud@head@text@field{chair}{#2}}
%</book|report|article>
%<*poster>
-\newcommand*\@@faculty{}
-\newcommand*\@@department{}
-\newcommand*\@@institute{}
-\newcommand*\@@chair{}
+\newcommand*\@facultyfoot{}
+\newcommand*\@departmentfoot{}
+\newcommand*\@institutefoot{}
+\newcommand*\@chairfoot{}
\newcommand*\faculty[2][\@empty]{\tud@foot@line@add{faculty}{#2}{#1}}
\newcommand*\department[2][\@empty]{\tud@foot@line@add{department}{#2}{#1}}
\newcommand*\institute[2][\@empty]{\tud@foot@line@add{institute}{#2}{#1}}
\newcommand*\chair[2][\@empty]{\tud@foot@line@add{chair}{#2}{#1}}
%</poster>
% \end{macrocode}
-% \end{field}^^A \@@chair
+% \end{field}^^A \@chairfoot
% \end{field}^^A \@chair
% \end{macro}^^A \chair
-% \end{field}^^A \@@institute
+% \end{field}^^A \@institutefoot
% \end{field}^^A \@institute
% \end{macro}^^A \institute
-% \end{field}^^A \@@department
+% \end{field}^^A \@departmentfoot
% \end{field}^^A \@department
% \end{macro}^^A \department
-% \end{field}^^A \@@faculty
+% \end{field}^^A \@facultyfoot
% \end{field}^^A \@faculty
% \end{macro}^^A \faculty
% \begin{macro}{\extraheadline}
@@ -195,7 +233,7 @@
% Mit \cs{tud@foot@line@add} wird der Inhalt eines Feldes in \cs{@\meta{Feld}}
% gespeichert. Der Befehl erwartet als erstes obligatorisches Argument den
% Feldnamen und als zweites den Inhalt. Entspricht das dritte obligatorische
-% Argument \cs{@empty}, so wird in \cs{@@\meta{Feld}} ebenfalls das zweite
+% Argument \cs{@empty}, so wird in \cs{@\meta{Feld}foot} ebenfalls das zweite
% Argument abgelegt, andernfalls das dritte.
%
% Damit wird es für Poster möglich, die Befehle \cs{faculty}, \cs{department},
@@ -210,14 +248,14 @@
\newcommand*\tud@foot@line@add[3]{%
\tud@head@text@field{#1}{#2}%
\ifx\@empty#3\relax%
- \global\csletcs{@@#1}{@#1}%
+ \global\csletcs{@#1foot}{@#1}%
\else%
- \csgdef{@@#1}{\trim@spaces{#3}}%
+ \csgdef{@#1foot}{\trim@spaces{#3}}%
\fi%
}
\newcommand*\tud@foot@line@write[1]{%
- \protected@edef\@tempa{\csuse{@@#1}}%
- \ifx\@tempa\@empty\else\newline\mbox{\csuse{@@#1}}\fi%
+ \protected@edef\@tempa{\csuse{@#1foot}}%
+ \ifx\@tempa\@empty\else\newline\mbox{\csuse{@#1foot}}\fi%
}
%</poster>
% \end{macrocode}
@@ -311,6 +349,37 @@
% \end{field}^^A \@@author
% \end{field}^^A \@author
% \end{macro}^^A \author
+% \begin{macro}{\emailaddress}
+% \changes{v2.02}{2014/05/16}{neu, Umbenennung des Makros \cs{email}}^^A
+% \begin{field}{\@emailaddress}
+% \changes{v2.02}{2014/05/16}{neu, Umbenennung des Makros \cs{@email}}^^A
+% \begin{macro}{\tud@emailaddress@simple}
+% \changes{v2.05}{2016/07/09}{neu}^^A
+% \begin{macro}{\tud@emailaddress@hyper}
+% \changes{v2.05}{2016/07/09}{neu}^^A
+% \begin{macrocode}
+\newcommand*\@emailaddress{}
+\newrobustcmd*\emailaddress{%
+ \kernel@ifstar{\tud@emailaddress@simple}{\tud@emailaddress@hyper}%
+}
+\newrobustcmd*\tud@emailaddress@simple[1]{\gdef\@emailaddress{#1}}
+\newrobustcmd*\tud@emailaddress@hyper[2][]{\gdef\@emailaddress{#2}}
+\AfterPackage*{hyperref}{%
+ \renewrobustcmd*\tud@emailaddress@hyper[2][hidelinks]{%
+ \gdef\@emailaddress{%
+ \begingroup%
+ \urlstyle{same}%
+ \hypersetup{#1}%
+ \href{mailto:#2}{\nolinkurl{#2}}%
+ \endgroup%
+ }%
+ }%
+}
+% \end{macrocode}
+% \end{macro}^^A \tud@emailaddress@hyper
+% \end{macro}^^A \tud@emailaddress@simple
+% \end{field}^^A \@emailaddress
+% \end{macro}^^A \emailaddress
% \begin{macro}{\course}
% \begin{field}{\@course}
% Studiengang für den Titel sowie den Kopf der Aufgabenstellung, wird im Makro
@@ -333,17 +402,42 @@
% \end{macrocode}
% \end{field}^^A \@discipline
% \end{macro}^^A \discipline
-% \begin{macro}{\publisher}
-% Kleine Korrektur für \KOMAScript, der Befehl sollte im Singular stehen.
-% \begin{macrocode}
-\providecommand*\publisher[1]{\publishers{#1}}
-% \end{macrocode}
-% \end{macro}^^A \publisher
%
% \iffalse
%<*book|report|article>
% \fi
%
+% \begin{macro}{\matriculationnumber}
+% \begin{field}{\@matriculationnumber}
+% Die Matrikelnummer für Titelseite und Aufgabenstellung, wird in
+% \cs{@matriculationid} gespeichert.
+% \begin{macrocode}
+\newcommand*\@matriculationnumber{}
+\newrobustcmd*\matriculationnumber[1]{%
+ \gdef\@matriculationnumber{#1}\ignorespaces%
+}
+% \end{macrocode}
+% \end{field}^^A \@matriculationnumber
+% \end{macro}^^A \matriculationnumber
+% \begin{macro}{\matriculationyear}
+% \begin{field}{\@matriculationyear}
+% Das Immatrikulationsjahr für den Titel wird in \cs{@matriculationyear}
+% gespeichert.
+% \begin{macrocode}
+\newcommand*\@matriculationyear{}
+\newrobustcmd*\matriculationyear[1]{\gdef\@matriculationyear{#1}\ignorespaces}
+% \end{macrocode}
+% \end{field}^^A \@matriculationyear
+% \end{macro}^^A \matriculationyear
+% \begin{macro}{\placeofbirth}
+% \begin{field}{\@placeofbirth}
+% Der Geburtsort für den Titel wird in \cs{@placeofbirth} gespeichert.
+% \begin{macrocode}
+\newcommand*\@placeofbirth{}
+\newrobustcmd*\placeofbirth[1]{\gdef\@placeofbirth{#1}\ignorespaces}
+% \end{macrocode}
+% \end{field}^^A \@placeofbirth
+% \end{macro}^^A \placeofbirth
% \begin{macro}{\thesis}
% \begin{field}{\@thesis}
% \changes{v2.02}{2014/11/06}{\cs{protected@xdef} genutzt}^^A
@@ -384,8 +478,11 @@
\let\footnote\@gobble%
\tud@lowerstring{\@tempa}{#2}%
\ifstr{#1}{thesis}{\protected@xdef\@@thesis{#2}}{}%
- \global\let\@tempa\@tempa%
- \endgroup%
+ \protected@edef\@tempa{%
+ \endgroup%
+ \def\noexpand\@tempa{\@tempa}%
+ }%
+ \@tempa%
\ifstr{\@tempa}{diss}{\tud@thesis@@do{#1}{\dissertationname}}{%
\ifstr{\@tempa}{doctoral}{\tud@thesis@@do{#1}{\dissertationname}}{%
\ifstr{\@tempa}{phd}{\tud@thesis@@do{#1}{\dissertationname}}{%
@@ -411,9 +508,9 @@
Field `thesis' is overwritten by `subject'%
}%
\fi%
- \TUD@std@ifkey@lock{subjectthesis}{@tud@subjectthesis}{true}%
+ \TUD@key@preset{subjectthesis}{true}%
}{%
- \TUD@std@ifkey@lock{subjectthesis}{@tud@subjectthesis}{false}%
+ \TUD@key@preset{subjectthesis}{false}%
}%
\ifx\tud@thanks\relax%
\gdef\@thesis{#2}%
@@ -435,22 +532,23 @@
% \changes{v2.02}{2014/05/16}{neu, von \cs{degree} umbenannt}^^A
% \begin{field}{\@graduation}
% \changes{v2.02}{2014/05/16}{neu, von \cs{@degree} umbenannt}^^A
-% \begin{field}{\@@graduation}
+% \begin{field}{\@graduationabbreviation}
% \changes{v2.02}{2014/05/16}{neu, \cs{@degreeabbr} umbenannt}^^A
% Der angestrebte Abschluss bzw. der zu erwerbende akademische Grad, welcher
% auf der Titelseite ausgegeben werden soll, wird im Makro \cs{@graduation}
% gespeichert. Zusätzlich kann als optionales Argument die Kurzform des
-% akademischen Grades angegeben werden, wird in \cs{@@graduation}
+% akademischen Grades angegeben werden, wird in \cs{@graduationabbr}
% gespeichert.
% \begin{macrocode}
\newcommand*\@graduation{}
-\newcommand*\@@graduation{}
+\newcommand*\@graduationabbreviation{}
\newcommand*\graduation[2][]{%
- \ifxblank{#1}{\gdef\@@graduation{}}{\gdef\@@graduation{(#1)}}%
+ \gdef\@graduationabbreviation{}%
+ \ifxblank{#1}{}{\gdef\@graduationabbreviation{(#1)}}%
\gdef\@graduation{#2}%
}
% \end{macrocode}
-% \end{field}^^A \@@graduation
+% \end{field}^^A \@graduationabbreviation
% \end{field}^^A \@graduation
% \end{macro}^^A \graduation
%
@@ -460,7 +558,7 @@
%
% \begin{macro}{\professor}
% \begin{field}{\@professor}
-% \begin{field}{\@@professor}
+% \begin{field}{\@professorfoot}
% \changes{v2.05}{2015/07/06}{neu}^^A
% Angabe des verantwortlichen Hochschullehrers für Titel und Aufgabenstellung,
% wird im Makro \cs{@professor} gespeichert.
@@ -470,11 +568,11 @@
\newcommand*\professor[1]{\gdef\@professor{#1}}
%</book|report|article>
%<*poster>
-\newcommand*\@@professor{}
-\newcommand*\professor[1]{\gdef\@@professor{#1}}
+\newcommand*\@professorfoot{}
+\newcommand*\professor[1]{\gdef\@professorfoot{#1}}
%</poster>
% \end{macrocode}
-% \end{field}^^A \@@professor
+% \end{field}^^A \@professorfoot
% \end{field}^^A \@professor
% \end{macro}^^A \professor
% \begin{macro}{\supervisor}
@@ -542,37 +640,6 @@
% \end{macrocode}
% \end{field}^^A \@advisor
% \end{macro}^^A \advisor
-% \begin{macro}{\matriculationnumber}
-% \begin{field}{\@matriculationnumber}
-% Angabe der Matrikelnummer für Titelseite und Aufgabenstellung, wird in dem
-% Makro \cs{@matriculationid} gespeichert.
-% \begin{macrocode}
-\newcommand*\@matriculationnumber{}
-\newrobustcmd*\matriculationnumber[1]{%
- \gdef\@matriculationnumber{#1}\ignorespaces%
-}
-% \end{macrocode}
-% \end{field}^^A \@matriculationnumber
-% \end{macro}^^A \matriculationnumber
-% \begin{macro}{\matriculationyear}
-% \begin{field}{\@matriculationyear}
-% Das Immatrikulationsjahr für den Titel wird in \cs{@matriculationyear}
-% gespeichert.
-% \begin{macrocode}
-\newcommand*\@matriculationyear{}
-\newrobustcmd*\matriculationyear[1]{\gdef\@matriculationyear{#1}\ignorespaces}
-% \end{macrocode}
-% \end{field}^^A \@matriculationyear
-% \end{macro}^^A \matriculationyear
-% \begin{macro}{\placeofbirth}
-% \begin{field}{\@placeofbirth}
-% Der Geburtsort für den Titel wird in \cs{@placeofbirth} gespeichert.
-% \begin{macrocode}
-\newcommand*\@placeofbirth{}
-\newrobustcmd*\placeofbirth[1]{\gdef\@placeofbirth{#1}\ignorespaces}
-% \end{macrocode}
-% \end{field}^^A \@placeofbirth
-% \end{macro}^^A \placeofbirth
% \begin{length}{\tud@len@signatureskip}
% \changes{v2.04}{2015/05/06}{neu}^^A
% Für alle Formatvorlagen, welche eine Unterschriftenzeile bereitstellen, wird
@@ -616,6 +683,16 @@
%
% \iffalse
%</book|report|article>
+% \fi
+%
+% \begin{macro}{\publisher}
+% Kleine Korrektur für \KOMAScript, der Befehl sollte im Singular stehen.
+% \begin{macrocode}
+\providecommand*\publisher[1]{\publishers{#1}}
+% \end{macrocode}
+% \end{macro}^^A \publisher
+%
+% \iffalse
%<*poster>
% \fi
%
@@ -660,24 +737,31 @@
%
% \begin{macro}{\printdate}
% Im Folgenden werden mehrere Datumsfelder definiert. Damit diese optional
-% durch das \pkg{isodate}-Paket formatiert werden können, wird der zu
-% diesem Paket gehörende Befehl \cs{printdate} in die Definition der
-% eigentlichen Datumsfelder integriert. Sollte das Paket nicht geladen werden,
-% so muss dieser Befehl trotzdem definiert sein.
-% \ToDo{Unterstützung für \pkg{datetime2}}[v2.06]
+% durch eines der Pakete \pkg{isodate} oder \pkg{datetime2} formatiert werden
+% können, wird der zu \pkg{isodate} gehörende Befehl \cs{printdate} in die
+% Definition der eigentlichen Datumsfelder integriert. Sollte das Paket nicht
+% geladen sein, so verwendet der Befehl die Schnittstelle von \pkg{datetime2},
+% welches nur ein spezielles Datenformat als Eingabe akzeptiert. Wird keines
+% der beiden Pakete verwendet, wird das Argument direkt durchgereicht.
% \begin{macrocode}
-\TUD@UnwindPackage{isodate}{\providecommand*\printdate[1]{#1}}
+\TUD@UnwindPackage{isodate}{%
+ \@ifpackageloaded{datetime2}{%
+ \providecommand*\printdate[1]{\DTMDate{#1}}%
+ }{%
+ \providecommand*\printdate[1]{#1}%
+ }%
+}
% \end{macrocode}
% \end{macro}^^A \printdate
-% \begin{macro}{\tud@x@isodate@printdate}
-% Damit die Datumsfelder definiert werden können und das \pkg{isodate}-Paket
+% \begin{macro}{\tud@printdate}
+% Damit die Datumsfelder definiert werden können und eines der Datumspakete
% unterstützen, muss beim Festlegen der Datumsfelder einiges beachtet werden.
% So müssen beispielsweise leere Argumente und Sonderfälle separat betrachtet
% werden. Damit dies einheitlich für alle Felder geschehen kann, wird dieser
% Befehl genutzt. Dabei wird als erstes Argument der Befehlsname für das
% Datumsfeld übergeben, als zweites Argument der gewünschte Inhalt.
% \begin{macrocode}
-\newcommand*\tud@x@isodate@printdate[2]{%
+\newcommand*\tud@printdate[2]{%
\ifx\today#2\relax%
\gdef#1{#2}%
\else%
@@ -687,12 +771,12 @@
\fi%
}
% \end{macrocode}
-% \end{macro}^^A \tud@x@isodate@printdate
+% \end{macro}^^A \tud@printdate
% \begin{macro}{\tud@date@check}
% \changes{v2.04}{2015/05/06}{neu}^^A
-% Das Makro wird vor der Nutzung des Datumfeldes genutzt um zu prüfen, ob ein
-% selbiges explizit angegeben wurde. Falls dies nicht der Fall ist, wird eine
-% Warnung ausgegeben.
+% Das Makro prüft vor der Nutzung des Datumfeldes \cs{@date}, ob selbiges
+% explizit angegeben wurde. Falls dies nicht der Fall ist, wird eine Warnung
+% ausgegeben.
% \begin{macrocode}
\newcommand*\tud@date@check{%
\ifdefvoid{\@duedate}{%
@@ -730,16 +814,17 @@
% \changes{v2.05}{2016/05/27}{neu}^^A
% \begin{macro}{\tud@date@set}
% \changes{v2.05}{2016/05/27}{neu}^^A
+% \changes{v2.06}{2018/08/08}{optionales Argument nutzt \cs{tud@toks@}}^^A
% \begin{field}{\@date}
-% \begin{field}{\tud@date@pre}
+% \begin{field}{\@beforedate}
% \changes{v2.05}{2016/05/27}{neu}^^A
-% \begin{field}{\tud@date@app}
+% \begin{field}{\@afterdate}
% \changes{v2.05}{2016/05/27}{neu}^^A
% Das Abgabedatum der Arbeit für den Titel, wird im originalen Makro \cs{@date}
% gespeichert. Zusätzlich kann über die Parameter im optionalen Argument eine
% Ergänzung davorgesetzt angehängt werden~-- beispielsweise als Erklärung für
% eine verspätete Abgabe aufgrund einer Verlängerung der Bearbeitungszeit~--
-% welche in den Feldern \cs{tud@date@pre} und \cs{tud@date@app} gespeichert
+% welche in den Feldern \cs{@beforedate} und \cs{@afterdate} gespeichert
% wird. Hierfür wird der originale Befehl für das Datum \cs{date} erweitert,
% wobei die Sternversion \cs{date*} den angegebenen Ort als Präfix verwendet.
% \begin{macrocode}
@@ -750,25 +835,26 @@
}{\tud@date@set}%
}
\newcommand*\tud@date@set[2][]{%
- \TUD@parameter@set{date}{#1}%
- \tud@x@isodate@printdate{\@date}{#2}%
+ \tud@toks@{#1}%
+ \TUD@parameter@set{date}{\the\tud@toks@}%
+ \tud@printdate{\@date}{#2}%
\global\let\tud@date@check\relax%
}
-\newcommand*\tud@date@pre{}
-\newcommand*\tud@date@app{}
+\newcommand*\@beforedate{}
+\newcommand*\@afterdate{}
\TUD@parameter@family{date}{%
- \TUD@parameter@def{before}{\def\tud@date@pre{#1}}%
+ \TUD@parameter@def{before}{\def\@beforedate{#1}}%
\TUD@parameter@let{pre}{before}%
\TUD@parameter@let{prefix}{before}%
- \TUD@parameter@def{after}{\def\tud@date@app{#1}}%
+ \TUD@parameter@def{after}{\def\@afterdate{#1}}%
\TUD@parameter@let{app}{after}%
\TUD@parameter@let{suffix}{after}%
- \TUD@parameter@def{place}{\def\@place{#1}\def\tud@date@pre{#1,}}%
+ \TUD@parameter@def{place}{\def\@place{#1}\def\@beforedate{#1,}}%
\TUD@parameter@handler@value{after}%
}
% \end{macrocode}
-% \end{field}^^A \tud@date@app
-% \end{field}^^A \tud@date@pre
+% \end{field}^^A \@afterdate
+% \end{field}^^A \@beforedate
% \end{field}^^A \@date
% \end{macro}^^A \tud@date@set
% \end{parameter}^^A place
@@ -786,12 +872,12 @@
% \begin{macrocode}
\newcommand*\tud@date@print{%
\ifx\@date\@empty\else%
- \ifx\tud@date@pre\@empty\else%
- \expandafter\trim@spaces@noexp\expandafter{\tud@date@pre}\nobreakspace%
+ \ifx\@beforedate\@empty\else%
+ \expandafter\trim@spaces@noexp\expandafter{\@beforedate}\nobreakspace%
\fi%
\@date%
- \ifx\tud@date@app\@empty\else%
- \nobreakspace\expandafter\trim@spaces@noexp\expandafter{\tud@date@app}%
+ \ifx\@afterdate\@empty\else%
+ \nobreakspace\expandafter\trim@spaces@noexp\expandafter{\@afterdate}%
\fi%
\fi%
}
@@ -808,7 +894,7 @@
% gespeichert.
% \begin{macrocode}
\newcommand*\@defensedate{}
-\newcommand*\defensedate[1]{\tud@x@isodate@printdate{\@defensedate}{#1}}
+\newcommand*\defensedate[1]{\tud@printdate{\@defensedate}{#1}}
% \end{macrocode}
% \end{field}^^A \@defensedate
% \end{macro}^^A \defensedate
@@ -819,7 +905,7 @@
% \begin{macrocode}
\newcommand*\@dateofbirth{}
\newrobustcmd*\dateofbirth[1]{%
- \tud@x@isodate@printdate{\@dateofbirth}{#1}\ignorespaces%
+ \tud@printdate{\@dateofbirth}{#1}\ignorespaces%
}
% \end{macrocode}
% \end{field}^^A \@dateofbirth
@@ -868,7 +954,7 @@
% \cs{@issuedate} gespeichert.
% \begin{macrocode}
\newcommand*\@issuedate{}
-\newcommand*\issuedate[1]{\tud@x@isodate@printdate{\@issuedate}{#1}}
+\newcommand*\issuedate[1]{\tud@printdate{\@issuedate}{#1}}
% \end{macrocode}
% \end{field}^^A \@issuedate
% \end{macro}^^A \issuedate
@@ -878,7 +964,7 @@
% \cs{@duedate} gespeichert.
% \begin{macrocode}
\newcommand*\@duedate{}
-\newcommand*\duedate[1]{\tud@x@isodate@printdate{\@duedate}{#1}}
+\newcommand*\duedate[1]{\tud@printdate{\@duedate}{#1}}
% \end{macrocode}
% \end{field}^^A \@duedate
% \end{macro}^^A \duedate
@@ -910,14 +996,6 @@
% \changes{v2.05}{2016/04/05}{neu}^^A
% \begin{field}{\@telefax}
% \changes{v2.05}{2016/04/05}{neu}^^A
-% \begin{macro}{\emailaddress}
-% \changes{v2.02}{2014/05/16}{neu, Umbenennung des Makros \cs{email}}^^A
-% \begin{field}{\@emailaddress}
-% \changes{v2.02}{2014/05/16}{neu, Umbenennung des Makros \cs{@email}}^^A
-% \begin{macro}{\tud@emailaddress@simple}
-% \changes{v2.05}{2016/07/09}{neu}^^A
-% \begin{macro}{\tud@emailaddress@hyper}
-% \changes{v2.05}{2016/07/09}{neu}^^A
% Für einen Aushang bzw. ein Poster kann eine oder mehrere Kontaktpersonen
% angegeben werden. Zusätzlich lassen sich für jede einzelne Person ein Raum,
% eine Telefonnummer und die E"~Mail-Adresse hinzugefügen.
@@ -933,28 +1011,7 @@
\newrobustcmd*\telephone[1]{\gdef\@telephone{#1}}
\newcommand*\@telefax{}
\newrobustcmd*\telefax[1]{\gdef\@telefax{#1}}
-\newcommand*\@emailaddress{}
-\newrobustcmd*\emailaddress{%
- \kernel@ifstar{\tud@emailaddress@simple}{\tud@emailaddress@hyper}%
-}
-\newrobustcmd*\tud@emailaddress@simple[1]{\gdef\@emailaddress{#1}}
-\newrobustcmd*\tud@emailaddress@hyper[2][]{\gdef\@emailaddress{#2}}
-\AfterPackage*{hyperref}{%
- \renewrobustcmd*\tud@emailaddress@hyper[2][hidelinks]{%
- \gdef\@emailaddress{%
- \begingroup%
- \urlstyle{same}%
- \hypersetup{#1}%
- \href{mailto:#2}{\nolinkurl{#2}}%
- \endgroup%
- }%
- }%
-}
% \end{macrocode}
-% \end{macro}^^A \tud@emailaddress@hyper
-% \end{macro}^^A \tud@emailaddress@simple
-% \end{field}^^A \@emailaddress
-% \end{macro}^^A \emailaddress
% \end{field}^^A \@telefax
% \end{macro}^^A \telefax
% \end{field}^^A \@telephone
@@ -1017,8 +1074,8 @@
}%
\begingroup%
\let\and\relax%
- \def\newline{}%
- \def\\{}%
+ \let\newline\@empty%
+ \let\\\@empty%
% \end{macrocode}
% Das Feld wird mit \cs{and} terminiert, um der Definition von
% \cs{tud@multiple@@split} in jedem Fall zu entsprechen.
@@ -1063,7 +1120,7 @@
% zu erzeugen.
% \begin{macrocode}
\newcommand*\tud@multiple@fields@store[2]{%
- \def\@tempa##1{\ifcsdef{@##1}{\tud@cmd@store{@##1}}{}}%
+ \def\@tempa##1{\ifcsdef{@##1}{\tud@cs@store{@##1}}{}}%
\letcs\@tempb{tud@split#1@list}%
\let\and\relax%
\expandafter\forcsvlist\expandafter\@tempa\expandafter{\@tempb}%
@@ -1080,7 +1137,7 @@
\newcommand*\tud@multiple@fields@restore[1]{%
\def\@tempa##1{%
\ifcsdef{@##1}{%
- \tud@cmd@restore{@##1}%
+ \tud@cs@restore{@##1}%
\global\csletcs{@##1}{@##1}%
}{}%
}%
@@ -1094,7 +1151,7 @@
% \begin{macro}{\tud@multiple@fields@preset}
% \changes{v2.04}{2015/05/12}{neu}^^A
% Mit diesem Makro wird es möglich, die Inhalte bestimmter Felder aus einer
-% definerten Liste \cs{tud@split\meta{Feld}@list} auf Standardwerte zu setzen.
+% definierten Liste \cs{tud@split\meta{Feld}@list} auf Standardwerte zu setzen.
% \begin{macrocode}
\newcommand*\tud@multiple@fields@preset[3]{%
\def\@tempa##1{%
@@ -1154,7 +1211,7 @@
\newcommand*\tud@split@author@do[2]{}
%<*book|report|article>
\newcommand*\tud@split@author@list{%
- authormore,course,discipline,%
+ authormore,course,discipline,emailaddress,%
matriculationyear,enrolmentyear,%
matriculationnumber,studentid,matriculationid,%
placeofbirth,birthplace,dateofbirth,birthday,%
@@ -1165,13 +1222,13 @@
% \begin{macrocode}
%<*poster>
\newcommand*\tud@split@author@list{%
- authormore,course,discipline,office,telephone,telefax,emailaddress%
+ authormore,course,discipline,emailaddress,office,telephone,telefax%
}
%</poster>
%</class>
%<*class&poster|package&supervisor>
\newcommand*\tud@split@contactperson@do[2]{}
-\newcommand*\tud@split@contactperson@list{office,telephone,telefax,emailaddress}
+\newcommand*\tud@split@contactperson@list{emailaddress,office,telephone,telefax}
%</class&poster|package&supervisor>
% \end{macrocode}
% Damit ist der Teil für das Paket \pkg{tudscrsupervisor} abgeschlossen, wo