summaryrefslogtreecommitdiff
path: root/macros/latex/contrib/uantwerpendocs/uantwerpendocs.dtx
diff options
context:
space:
mode:
Diffstat (limited to 'macros/latex/contrib/uantwerpendocs/uantwerpendocs.dtx')
-rw-r--r--macros/latex/contrib/uantwerpendocs/uantwerpendocs.dtx238
1 files changed, 168 insertions, 70 deletions
diff --git a/macros/latex/contrib/uantwerpendocs/uantwerpendocs.dtx b/macros/latex/contrib/uantwerpendocs/uantwerpendocs.dtx
index 0b0b87df96..8aa027e390 100644
--- a/macros/latex/contrib/uantwerpendocs/uantwerpendocs.dtx
+++ b/macros/latex/contrib/uantwerpendocs/uantwerpendocs.dtx
@@ -25,23 +25,21 @@
\ProvidesFile{uantwerpendocs.dtx}
%</driver>
%<@@=uantwerpendocs>
-%<ct|bmt|mt|pt|rp|le|ex|bmr>\NeedsTeXFormat{LaTeX2e}[1999/12/01]
+%<ct|bmt|pt|rp|le|ex|bmr>\NeedsTeXFormat{LaTeX2e}[1999/12/01]
%<clo>\ProvidesFile{uantwerpencommonoptions.clo}
%<cls>\ProvidesPackage{uantwerpencolorlogoscheme}
%<ct>\ProvidesClass{uantwerpencoursetext}
-%<mt>\ProvidesClass{uantwerpenmasterthesis}
%<bmt>\ProvidesClass{uantwerpenbamathesis}
%<pt>\ProvidesClass{uantwerpenphdthesis}
%<rp>\ProvidesClass{uantwerpenreport}
%<le>\ProvidesClass{uantwerpenletter}
%<ex>\ProvidesClass{uantwerpenexam}
%<bmr>\ProvidesPackage{beamerthemeuantwerpen}
-%<cls|ct|bmt|mt|pt|rp|le|ex|bmr> [2021/10/04 v4.2 .dtx skeleton file]
-%<mt>\errmessage{This class is obsolete, use the uantwerpenbamathesis class instead !}
+%<cls|ct|bmt|pt|rp|le|ex|bmr> [2021/11/11 v4.3 .dtx skeleton file]
%<*driver>
\documentclass[a4paper]{ltxdoc}
-\def\fileversion{4.2}%
-\def\filedate{2021/10/04}%
+\def\fileversion{4.3}%
+\def\filedate{2021/11/11}%
\usepackage{makeidx}
\usepackage{alltt}
\usepackage{longtable}
@@ -117,8 +115,11 @@
% to ease maintainability}
% \changes{v4.1}{2021/08/03}{\@ Adapted coursetext again to
% universitas agreement + added bleed version for phd texts + small bugfixes}
+% \changes{v4.2}{2021/10/04}{\@ Added in-style bamathesis class}
+% \changes{v4.3}{2021/11/11}{\@ Small bufixes and corrections to
+% optional fields of letter class}
%
-% \DoNotIndex{\newcommand,\newenvironment,\begin,\bfseries,\draw,\clip,\else,\fi,\if,\fill,\filldraw,\ifthenelse,\ifx,\textwidth,\node,\\,\@empty,\@emptymacro,\@tempdima,\@tempdimb,\@tempswatrue,\{,\},\ ,\bf,\BODY,\break,\Alph,\and,\define@key,\color,\dx,\dy,\g,\gdef,\hbox,\tiny,\scriptsize,\footnotesize,\small,\normalsize,\large,\Large,\LARGE,\huge,\Huge,\l,\LaTeX,\let,\p@,\relax,\renewcommand,\Requirepackage,\textbf,\textsf,\texttt,\textbackslash,}
+% \DoNotIndex{\newcommand,\newenvironment,\begin,\bfseries,\draw,\clip,\else,\fi,\if,\fill,\filldraw,\ifthenelse,\ifx,\textwidth,\node,\\,\@empty,\@tempdima,\@tempdimb,\@tempswatrue,\{,\},\ ,\bf,\BODY,\break,\Alph,\and,\define@key,\color,\dx,\dy,\g,\gdef,\hbox,\tiny,\scriptsize,\footnotesize,\small,\normalsize,\large,\Large,\LARGE,\huge,\Huge,\l,\LaTeX,\let,\p@,\relax,\renewcommand,\Requirepackage,\textbf,\textsf,\texttt,\textbackslash,\vspace,\hspace,\hfill,\hskip,\vskip,\hline,\vrule,\typeout,\usebox,\end,\paperheight,\paperwidth,\par,\NewDocumentCommand,\seq}
% \setlength{\parindent}{0em}
% \addtolength{\parskip}{0.5\baselineskip}
%
@@ -576,6 +577,9 @@
% issued. However, if you care about the typographic readability of
% your text, you shouldn't use this option.
%
+% \DescribeMacro{nofoldline} [letter]\\
+% This option suppresses the fold line on a letter.
+%
% Common sets of options depend on the purpose:
% \begin{itemize}
% \item to make a text ready for electronic distribution:
@@ -799,6 +803,8 @@
% \item first argument: user name
% \item second argument: domain name
% \end{itemize}
+% You can specify multiple email addresses by using the command
+% multiple times.
%
% \DescribeMacro{\enclosed} [letter] (optional)\\
% List of enclosed documents. Format at will.
@@ -806,6 +812,8 @@
% \DescribeMacro{\fax} [letter] (optional)\\
% Probably facsimile is not used anymore, but anyway: fax number of
% the sending person. See also |\email|.
+% You can specify multiple fax addresses by using the command
+% multiple times.
%
% \DescribeMacro{\logo} [letter] (optional)\\
% file name of an alternative logo to use. The file name must be the
@@ -816,12 +824,16 @@
%
% \DescribeMacro{\mobile} [letter] (optional)\\
% Mobile phone number of the sending person. See also |\email|.
+% You can specify multiple mobile phone numbers by using the command
+% multiple times.
%
% \DescribeMacro{\opening} [letter] (mandatory) \\
% Opening address of the letter. E.g. 'Dear X,'.
%
% \DescribeMacro{\phone} [letter] (optional)\\
% Phone number of the sending person. See also |\email|.
+% You can specify multiple phone numbers by using the command
+% multiple times.
%
% \DescribeMacro{\returnaddress} [letter] (mandatory)\\
% This is a short return address (listed in small font on top of the
@@ -852,7 +864,7 @@
% Name of the addressee. Newlines are allowed.
% Preferably name and role are split over two lines.
%
-% \DescribeMacro{\toaddress} [letter] (mandatory)\\
+% \DescribeMacro{\toaddress} [letter] (optional)\\
% Address of the addressee. Newlines are allowed. The address should
% fit on max. 3 lines.
%
@@ -1465,6 +1477,8 @@
%<*le-example>
\documentclass[ti,a4paper]{uantwerpenletter}
+%% You can suppress the foldline, using the nofoldline option.
+%%
%% As a good UAntwerpen citizen, you would use the calibri font.
%% As this only works for XeLaTeX or LuaLaTeX, we chose to include
%% cmbright in any other case.
@@ -1497,6 +1511,7 @@
Mumford, DX 94305-2004\\
USA}
+
\date{January 3, 2016}
\subject{Congratulations for online video lectures}
@@ -2126,6 +2141,10 @@ Welk van de onderstaande ingredi\"enten hoort niet thuis in
\newif\if@cameraready
\DeclareOption{cameraready}{\@camerareadytrue}
%</ct|pt>
+%<*le>
+\newif\if@nofoldline
+\DeclareOption{nofoldline}{\@nofoldlinetrue}
+%</le>
% \end{macrocode}
%
%
@@ -2202,8 +2221,8 @@ Welk van de onderstaande ingredi\"enten hoort niet thuis in
% Let's make things a bit easier for me.
% \begin{macrocode}
%<*ct|bmt|pt|rp|le|ex>
-%\RequirePackage{expl3}
-\RequirePackage[check-declarations]{expl3} % I use this during debug phase
+\RequirePackage{expl3}
+%\RequirePackage[check-declarations]{expl3} % I use this during debug phase
\RequirePackage{xparse}
%</ct|bmt|pt|rp|le|ex>
% \end{macrocode}
@@ -2243,7 +2262,6 @@ Welk van de onderstaande ingredi\"enten hoort niet thuis in
\RequirePackage{etoolbox}
\RequirePackage{ifthen}
\IfFileExists{shellesc.sty}{\RequirePackage{shellesc}}{}
-\newcommand{\@emptymacro}{}
%</ct|bmt|pt|rp|le|ex>
% \end{macrocode}
%
@@ -2469,6 +2487,7 @@ Welk van de onderstaande ingredi\"enten hoort niet thuis in
% \end{macrocode}
%
% The English data can be found below:
+% \begin{macrocode}
%<*endata>
org-be = Faculty of Business and Economics
org-fbd = Faculty of Pharmaceutical, Biomedical and Veterinary Sciences
@@ -2521,8 +2540,10 @@ pthesisnamei = Thesis submitted in fulfilment of the requirements for the d
pthesisnameii = at University of Antwerp
weightname = Weight
%</endata>
+% \end{macrocode}
%
% The Dutch data can be found below:
+% \begin{macrocode}
%<*nldata>
org-be = Faculteit Bedrijfswetenschappen en Economie
org-fbd = Faculteit Farmaceutische, Biomedische en Diergeneeskundige Wetenschappen
@@ -2533,7 +2554,7 @@ org-re = Faculteit Rechten
org-sw = Faculteit Sociale Wetenschappen
org-ti = Faculteit Toegepaste Ingenieurswetenschappen
org-we = Faculteit Wetenschappen
-org=iob = Instituut voor Ontwikkelingsbeleid- en beheer
+org-iob = Instituut voor Ontwikkelingsbeleid- en beheer
org-ua = Universiteit Antwerpen
arr = Alle rechten voorbehouden
of = van
@@ -2575,6 +2596,7 @@ pthesisnamei = Proefschrift voorgelegd tot het behalen van de graad van
pthesisnameii = aan de Universiteit Antwerpen te verdedigen door
weightname = Gewicht
%</nldata>
+% \end{macrocode}
%
%
% \subsection{Bachelor and Master document types}
@@ -2591,14 +2613,14 @@ en-pr = Project report
% \end{macrocode}
%
% \begin{macrocode}
-%<*bmt>
+%<*bmt|ct|pt|ex>
\ExplSyntaxOn
\cs_generate_variant:Nn \prop_item:Nn{ Nx }
\NewDocumentCommand{\uantwerpendocsdoctype}{m}{
\prop_item:Nx \g_@@_data_prop { #1 }
}
\ExplSyntaxOff
-%</bmt>
+%</bmt|ct|pt|ex>
% \end{macrocode}
%
% \subsection{Bachelor and Master disclaimers}
@@ -2706,14 +2728,13 @@ we-nl-ma-wiftw = Master of Science in wiskunde: financiële en toegepaste wiskun
% \end{macrocode}
%
% \begin{macrocode}
-%<*bmt>
+%<*bmt|ct|pt|ex>
\ExplSyntaxOn
\NewDocumentCommand{\uantwerpendocsdegree}{m}{
- \typeout{#1}
\prop_item:Nx \g_@@_data_prop { #1 }
}
\ExplSyntaxOff
-%</bmt>
+%</bmt|ct|pt|ex>
% \end{macrocode}
%
%
@@ -3365,49 +3386,121 @@ we-nl-ma-wiftw = Master of Science in wiskunde: financiële en toegepaste wiskun
% \end{macro}
%
% \begin{macro}{\email}
-% This macro sets the |\@emailuser| and |\@emaildomain| tags that
-% will be used in the letter's heading text. This split construction
-% was used to overcome problems with the |@| sign.
+% This macro allows for the registration of contact email addresses
+% for a letter. This can be done by invoking the macro as many times
+% as needed (as of v4.2)
+%
% \begin{macrocode}
%<*le>
-\newcommand*{\@emailuser}{}
-\newcommand*{\@emaildomain}{}
-\newcommand*{\email}[2]{\renewcommand*{\@emailuser}{#1}\renewcommand*{\@emaildomain}{#2}}
-%</le>
+\ExplSyntaxOn
+\seq_new:N \g_@@_emailaddresses
+\cs_new:Nn \@@_addemailaddress:nn {
+ \seq_gpush:Nn \g_@@_emailaddresses {#1\tat{}#2}
+}
+\NewDocumentCommand{\email}{mm}{
+ \@@_addemailaddress:nn { #1 } { #2 }
+}
+\NewDocumentCommand{\jointemails}{m}{
+ \seq_use:Nn \g_@@_emailaddresses { #1 }
+}
+\NewDocumentCommand{\ifemails}{m}{
+ \seq_if_empty:NTF \g_@@_emailaddresses {} {#1}
+}
+\AtBeginDocument{
+ \seq_greverse:N \g_@@_emailaddresses
+}
+\ExplSyntaxOff
+%</le>
% \end{macrocode}
% \end{macro}
%
+%
% \begin{macro}{\phone}
-% This macro sets the |\@phone| tag that will be used in the letter's
-% heading text.
+% This macro allows for the registration of contact phone numbers
+% for a letter. This can be done by invoking the macro as many times
+% as needed (as of v4.2)
+%
% \begin{macrocode}
%<*le>
-\newcommand*{\@phone}{}
-\newcommand*{\phone}[1]{\renewcommand*{\@phone}{#1}}
-%</le>
+\ExplSyntaxOn
+\seq_new:N \g_@@_phonenumbers
+\cs_new:Nn \@@_addphonenumber:n {
+ \seq_gpush:Nn \g_@@_phonenumbers {#1}
+}
+\NewDocumentCommand{\phone}{m}{
+ \@@_addphonenumber:n { #1 }
+}
+\NewDocumentCommand{\jointphones}{m}{
+ \seq_use:Nn \g_@@_phonenumbers { #1 }
+}
+\NewDocumentCommand{\ifphones}{m}{
+ \seq_if_empty:NTF \g_@@_phonenumbers {} {#1}
+}
+\AtBeginDocument{
+ \seq_greverse:N \g_@@_phonenumbers
+}
+\ExplSyntaxOff
+%</le>
% \end{macrocode}
% \end{macro}
%
+%
% \begin{macro}{\fax}
-% This macro sets the |\@fax| tag that will be used in the letter's
-% heading text.
+% This macro allows for the registration of contact fax numbers
+% for a letter. This can be done by invoking the macro as many times
+% as needed (as of v4.2)
+%
% \begin{macrocode}
%<*le>
-\newcommand*{\@fax}{}
-\newcommand*{\fax}[1]{\renewcommand*{\@fax}{#1}}
-%</le>
+\ExplSyntaxOn
+\seq_new:N \g_@@_faxnumbers
+\cs_new:Nn \@@_addfaxnumber:n {
+ \seq_gpush:Nn \g_@@_faxnumbers {#1}
+}
+\NewDocumentCommand{\fax}{m}{
+ \@@_addfaxnumber:n { #1 }
+}
+\NewDocumentCommand{\jointfaxes}{m}{
+ \seq_use:Nn \g_@@_faxnumbers { #1 }
+}
+\NewDocumentCommand{\iffaxes}{m}{
+ \seq_if_empty:NTF \g_@@_faxnumbers {} {#1}
+}
+\AtBeginDocument{
+ \seq_greverse:N \g_@@_faxnumbers
+}
+\ExplSyntaxOff
+%</le>
% \end{macrocode}
% \end{macro}
%
%
% \begin{macro}{\mobile}
-% This macro sets the |\@mobile| tag that will be used in the letter's
-% heading text.
+% This macro allows for the registration of contact mobile numbers
+% for a letter. This can be done by invoking the macro as many times
+% as needed (as of v4.2)
+%
% \begin{macrocode}
%<*le>
-\newcommand*{\@mobile}{}
-\newcommand*{\mobile}[1]{\renewcommand*{\@mobile}{#1}}
-%</le>
+\ExplSyntaxOn
+\seq_new:N \g_@@_mobilenumbers
+\cs_new:Nn \@@_addmobilenumber:n {
+ \seq_gpush:Nn \g_@@_mobilenumbers {#1}
+}
+\NewDocumentCommand{\mobile}{m}{
+ \@@_addmobilenumber:n { #1 }
+}
+\NewDocumentCommand{\jointmobiles}{m}{
+ \seq_use:Nn \g_@@_mobilenumbers { #1 }
+}
+\NewDocumentCommand{\ifmobiles}{m}{
+ \seq_if_empty:NTF \g_@@_mobilenumbers {} {#1}
+}
+\AtBeginDocument{
+ \seq_greverse:N \g_@@_mobilenumbers
+}
+\ExplSyntaxOff
+%</le>
% \end{macrocode}
% \end{macro}
%
@@ -3441,8 +3534,7 @@ we-nl-ma-wiftw = Master of Science in wiskunde: financiële en toegepaste wiskun
% the letter's heading text (in the area of the envelope's window).
% \begin{macrocode}
%<*le>
-\newcommand*{\@toorganization}{<Specify organization using
- \textbackslash{}toorganization\{\}>}
+\newcommand*{\@toorganization}{}
\newcommand*{\toorganization}[1]{\renewcommand*{\@toorganization}{#1}}
%</le>
% \end{macrocode}
@@ -3453,8 +3545,7 @@ we-nl-ma-wiftw = Master of Science in wiskunde: financiële en toegepaste wiskun
% the letter's heading text (in the area of the envelope's window).
% \begin{macrocode}
%<*le>
-\newcommand*{\@toaddress}{<Specify (multiline) destination
- address\\using \textbackslash{}toaddress\{\}>}
+\newcommand*{\@toaddress}{}
\newcommand*{\toaddress}[1]{\renewcommand*{\@toaddress}{#1}}
%</le>
% \end{macrocode}
@@ -4617,33 +4708,40 @@ we-nl-ma-wiftw = Master of Science in wiskunde: financiële en toegepaste wiskun
\newcommand\maketitle{%
\pagestyle{fancy}
\thispagestyle{empty}
- \begin{tikzpicture}[overlay,remember picture]
- \path (current page.north west) +(1.8cm,-1.2cm)
- node[anchor=north west] {
- \includegraphics[height=1.1cm]{\@logo}
- };
- \draw (current page.north west)
- +(1cm,-98mm) -- +(1.5cm,-98mm);
- % 90 x 45
- % pos: 20mm van kant, 15mm van onderkant
- \path (current page.north east) +(-100mm,-65mm)
- node[anchor=west,text width=80mm,align=left] {
- \scriptsize\textcolor{gray}{\uline{\@returnaddress}}\\*
- \normalsize\@to\\*
- \@toorganization\\*
- \@toaddress
- };
- \end{tikzpicture}
+ \AddToShipoutPicture*{%
+ \put(0,0){%
+ \begin{tikzpicture}[inner sep=0pt,outer sep=0pt]
+ \clip (0,0) rectangle(\paperwidth,\paperheight);
+ \path (current page.north west) +(1.8cm,-1.2cm)
+ node[anchor=north west] {
+ \includegraphics[height=1.1cm]{\@logo}
+ };
+ \if@nofoldline\else
+ \draw (current page.north west)
+ +(1cm,-98mm) -- +(1.5cm,-98mm);
+ \fi
+ % 90 x 45
+ % pos: 20mm van kant, 15mm van onderkant
+ \path (current page.north east) +(-100mm,-65mm)
+ node[anchor=west,text width=80mm,align=left] {
+ \scriptsize\textcolor{gray}{\uline{\@returnaddress}}\\*
+ \normalsize\@to\\*
+ \ifx\@toorganization\@empty\else\@toorganization\\*\fi%
+ \@toaddress
+ };
+ \end{tikzpicture}
+ }
+ }
~\\[3ex]
\textcolor{uauaside}{\textbf{\@sender}}
- \ifx\@senderrole\@emptymacro\\[1.75ex]\else \\*\@senderrole\\[1.75ex]\fi
+ \ifx\@senderrole\@empty\\[1.75ex]\else \\*\@senderrole\\[1.75ex]\fi
\@faculty
- \ifx\@unit\@emptymacro\else\\* \@unit\fi~\\[1.75ex]
+ \ifx\@unit\@empty\else\\* \@unit\fi~\\[1.75ex]
\@address\\[1.75ex]
- \ifx\@email\@emptymacro\else E \@emailuser\tat{}\@emaildomain\\\fi
- \ifx\@phone\@emptymacro\else T \@phone\\\fi
- \ifx\@fax\@emptymacro\else F \@fax\\\fi
- \ifx\@mobile\@emptymacro\else M \@mobile\\\fi
+ \ifemails{E~\jointemails{\\\phantom{E~}}\\}
+ \ifphones{T~\jointphones{\\\phantom{T~}}\\}
+ \iffaxes{F~\jointfaxes{\\\phantom{F~}}\\}
+ \ifmobiles{M~\jointmobiles{\\\phantom{M~}}\\}
~\\[4ex]
\begin{tikzpicture}[anchor=north west,align=left,outer sep=0,inner sep=0]
\path
@@ -4666,10 +4764,10 @@ we-nl-ma-wiftw = Master of Science in wiskunde: financiële en toegepaste wiskun
\AtEndDocument{
\@closing\\*[3ex]\@signature~\\[3ex]
\@sender
- \ifx\@senderrole\@emptymacro\\[8ex]\else\\*\@senderrole\\[8ex]\fi
+ \ifx\@senderrole\@empty\\[8ex]\else\\*\@senderrole\\[8ex]\fi
\setlength{\parskip}{0em}
- \ifx\@carboncopy\@emptymacro\else CC: \@carboncopy\\[4ex]\fi
- \ifx\@enclosed\@emptymacro\else ENCL: \@enclosed\fi
+ \ifx\@carboncopy\@empty\else CC: \@carboncopy\\[4ex]\fi
+ \ifx\@enclosed\@empty\else ENCL: \@enclosed\fi
\label{lastpage}
}
%</le>
@@ -4703,7 +4801,7 @@ we-nl-ma-wiftw = Master of Science in wiskunde: financiële en toegepaste wiskun
\fontfamily{phv}\fontsize{18}{22}\fontseries{b}%
\fontshape{n}\selectfont%
\@course{}
- \ifx\@exampart\@emptymacro
+ \ifx\@exampart\@empty
\else --- \@exampart\fi
};
\node