diff options
author | Karl Berry <karl@freefriends.org> | 2015-07-02 22:12:17 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2015-07-02 22:12:17 +0000 |
commit | 586aedcf63ecf6ea7da1c1529e5ea5ba8f5cb426 (patch) | |
tree | b679941add6df7f6b1ee8c135b24181f992dcb65 /Master/texmf-dist/tex/latex/tudscr/tudscrman.cls | |
parent | fecdcd43eaa7f73e830159293fe22a202803086b (diff) |
tudscr (2jul15)
git-svn-id: svn://tug.org/texlive/trunk@37736 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/tex/latex/tudscr/tudscrman.cls')
-rw-r--r-- | Master/texmf-dist/tex/latex/tudscr/tudscrman.cls | 260 |
1 files changed, 158 insertions, 102 deletions
diff --git a/Master/texmf-dist/tex/latex/tudscr/tudscrman.cls b/Master/texmf-dist/tex/latex/tudscr/tudscrman.cls index d1094d7e3d0..21698058b0c 100644 --- a/Master/texmf-dist/tex/latex/tudscr/tudscrman.cls +++ b/Master/texmf-dist/tex/latex/tudscr/tudscrman.cls @@ -4,13 +4,12 @@ %% %% The original source files were: %% -%% tudscr-version.dtx (with options: `class,inherit') -%% tudscr-manual.dtx (with options: `class,identify') +%% tudscr-version.dtx (with options: `class,manual') +%% tudscr-manual.dtx (with options: `class') %% tudscr-base.dtx (with options: `load') %% tudscr-manual.dtx (with options: `class,option') -%% tudscr-base.dtx (with options: `execute,inherit') +%% tudscr-misc.dtx (with options: `class,inherit,execute') %% tudscr-manual.dtx (with options: `class,body') -%% tudscr-misc.dtx (with options: `class,manual') %% %% ============================================================================ %% @@ -57,10 +56,31 @@ \fi% }% \fi% - \@TUDVersion{2015/06/11 v2.03a TUD-KOMA-Script}% + \@TUDVersion{2015/07/02 v2.04 TUD-KOMA-Script}% \endgroup% \providecommand*\tudscrmail{tudscr@gmail.com} -\newcommand*\tudinh@name{tudscrreprt} +\newcommand*\TUD@ProvidesWrapperClass[3]{% + \newcommand*\TUDClassName@Parent{#2}% + \newcommand*\TUDClassName{#1}% + \ProvidesClass{#1}[% + 2015/07/02 v2.04 TUD-KOMA-Script + ^^J#3 (#2)% + ]% + \TUD@ClassInfo% +} +\providecommand*\TUD@ClassInfo{% + \typeout{+---------------------------------------------------------------} + \typeout{| The Corporate Design of Technische Universitaet Dresden} + \typeout{| Class: \TUDClassName} + \typeout{| Version: \TUDVersion} + \typeout{| Author: Falk Hanisch (\tudscrmail)} + \typeout{| Forum: http://latex.wcms-file3.tu-dresden.de/phpBB3/index.php} + \typeout{+---------------------------------------------------------------} +} +\NeedsTeXFormat{LaTeX2e} +\TUD@ProvidesWrapperClass{tudscrman}{tudscrreprt}{% + internal manual class% +} \@ifundefined{TUDScript}{% \DeclareRobustCommand{\TUDScript}{% \ifdin{TUD-KOMA-SCRIPT}{% @@ -69,11 +89,6 @@ }% }{} %%% From File: tudscr-manual.dtx -\NeedsTeXFormat{LaTeX2e}[2011/06/27] -\ProvidesClass{tudscrman}[% - 2015/06/11 v2.03a TUD-KOMA-Script - class (internal manual)% -] %%% From File: tudscr-base.dtx \RequirePackage{tudscrbase}[\TUDVersion] %%% From File: tudscr-manual.dtx @@ -98,7 +113,7 @@ captions=tableheading,% numbers=noenddot,% cd=color,% -}{\tudinh@name} +}{\TUDClassName@Parent} \PassOptionsToPackage{automark}{scrlayer-scrpage} \DeclareOption{final}{\let\tudfinalflag\relax} \DeclareOption{print}{\let\tudprintflag\relax} @@ -109,21 +124,21 @@ \PassOptionsToPackage{hidelinks}{hyperref}% }{}% } -%%% From File: tudscr-base.dtx -\DeclareOption*{\PassOptionsToClass{\CurrentOption}{\tudinh@name}} +%%% From File: tudscr-misc.dtx +\DeclareOption*{\PassOptionsToClass{\CurrentOption}{\TUDClassName@Parent}} \TUDProcessOptions\relax -\LoadClass{\tudinh@name} +\LoadClass{\TUDClassName@Parent} %%% From File: tudscr-manual.dtx \RequirePackage{xparse}[2013/12/31] \RequirePackage{textcomp}[2005/09/27] -\RequirePackage{fixltx2e}[2014/06/10] \RequirePackage{setspace}[2011/12/19] \setstretch{1.1}\recalctypearea \RequirePackage{babel}[2014/03/24] \AfterPackage*{inputenc}{\RequirePackage{csquotes}[2011/10/22]} \AtBeginDocument{% \@ifpackageloaded{csquotes}{}{% - \ClassWarning{\tudcls@name}{Package `csquotes' not loaded}% + \ClassWarning% + {tudscrman}{Package `csquotes' not loaded}% \providecommand\enquote[1]{\glqg#1\grqq{}}% }% } @@ -218,52 +233,52 @@ )% } \write\tud@write@i{(markup-range :sep "--")} -\write\tud@write@i{(merge-rule "\[(.*)\]" "" :eregexp)} \write\tud@write@i{% - (define-attributes (("declare" "!" "important" "?" "deprecated" "default")))% +(merge-rule "\@backslashchar[(.*)\@backslashchar]" "" :eregexp)% +} +\write\tud@write@i{% +(define-attributes (("declare" "!" "important" "?" "deprecated" "default")))% } -\write\tud@write@i{(merge-to "important" "default")} -\write\tud@write@i{(merge-to "?" "default")} \write\tud@write@i{% (markup-locref^^J% +\space\space :attr "declare"^^J% \space\space :open "\string\textbf{\string\hyperpage{"^^J% \space\space :close "}}"^^J% -\space\space :attr "declare"^^J% )% } \write\tud@write@i{% (markup-locref^^J% +\space\space :attr "!"^^J% \space\space :open "\string\textbf{\string\hyperpage{"^^J% \space\space :close "}}"^^J% -\space\space :attr "!"^^J% )% } \write\tud@write@i{% (markup-locref^^J% +\space\space :attr "important"^^J% \space\space :open "\string\textsl{\string\hyperpage{"^^J% \space\space :close "}}"^^J% -\space\space :attr "important"^^J% )% } \write\tud@write@i{% (markup-locref^^J% +\space\space :attr "?"^^J% \space\space :open "\string\textsl{\string\hyperpage{"^^J% \space\space :close "}}"^^J% -\space\space :attr "?"^^J% )% } \write\tud@write@i{% (markup-locref^^J% +\space\space :attr "default"^^J% \space\space :open "\string\hyperpage{"^^J% \space\space :close "}"^^J% -\space\space :attr "default"^^J% )% } \write\tud@write@i{% (markup-locref^^J% +\space\space :attr "deprecated"^^J% \space\space :open "\string\deprecatedhyperpage{"^^J% \space\space :close "}"^^J% -\space\space :attr "deprecated"^^J% )% } \write\tud@write@i{% @@ -322,15 +337,16 @@ \hyperref{tutorials/#1.pdf}{\jobname}{tutorials:#1}{\textsbn{#1.pdf}#2}% } \NewDocumentCommand\Tutorial{smd||}{% - \ifnum\pdfshellescape=1\relax% + \ifnum\pdfshellescape=\@ne\relax% \filemodCmp{tutorials/#2.pdf}{tutorials/#2.tex}{}{% \immediate\openout\tud@write@i=tutorials.sh% \immediate\write\tud@write@i{% cd tutorials^^J% pdflatex -shell-escape #2^^J% + pdflatex #2^^J% biber #2^^J% + pdflatex -shell-escape #2^^J% makeglossaries #2^^J% - pdflatex #2^^J% pdflatex #2% }% \immediate\closeout\tud@write@i% @@ -356,10 +372,9 @@ } \newcommand*\IncludeExample[1]{% \lstinputlisting[style=tudscr]{examples/#1}% - \ifnum\pdfshellescape=1\relax% + \ifnum\pdfshellescape=\@ne\relax% \filemodCmp{examples/#1.pdf}{examples/#1.tex}{}{% \immediate\write18{% - pdflatex -shell-escape -output-directory examples examples/#1.tex pdflatex -output-directory examples examples/#1.tex pdflatex -output-directory examples examples/#1.tex }% @@ -401,7 +416,9 @@ }% \@tempswafalse \ifdefvoid{\tud@todo@type}{\@tempswatrue}{}% - \IfValueT{#2}{\ifstr{#2}{\tud@todo@type}{\@tempswatrue}{}}% + \IfValueT{#2}{% + \@for\@tempa:=#2\do{\ifstr{\@tempa}{\tud@todo@type}{\@tempswatrue}{}}% + }% \if@tempswa% \vskip.8ex% \IfValueT{#4}{% @@ -423,7 +440,8 @@ \reversemarginpar \newrobustcmd*\bsc{\@backslashchar} \newcommand*\tud@shellescape@wrn{% - \ClassWarning{\tudcls@name}{% + \ClassWarning% + {tudscrman}{% You have to recompile this document with\MessageBreak% activated shell escape option% }% @@ -641,7 +659,7 @@ \newcommand*\CheckIndexFormat[2]{% \IfBooleanT{#1}{% \IfValueT{#2}{% - \ClassWarning{\tudcls@name}{% + \ClassWarning{tudscrman}{% You've used the starred version so no entry for\MessageBreak% the index is created and the optional argument\MessageBreak% |#2| will be ignored% @@ -665,7 +683,7 @@ \if@declare% \if@openindex% \IfValueT{#3}{% - \ClassWarning{\tudcls@name}{% + \ClassWarning{tudscrman}{% It is not possible to use any cross-reference\MessageBreak% shorthand like '#3' within the arguments of\MessageBreak% the environment `Declaration'% @@ -677,32 +695,38 @@ \manualhyperdef{\@tempa}% }% \else% - \ifx\@IndexFormat\@empty\else% - \ClassWarning{\tudcls@name}{% - It is not possible to use any indexing format\MessageBreak% - like |\@IndexFormat| within the arguments of the\MessageBreak% - environment `Declaration'% - }% - \fi% - \if@stareddeclare% - \manualhyperdef'{\@tempa}% - \else% + \expandafter\IfBooleanTF\expandafter{\@IndexFormat}{% \manualhyperdef{\@tempa}% - \fi% - \@HyperIndex{#5}{#6}{#7}{#8}{#9}{(declare}% + }{% + \ifx\@IndexFormat\@empty\else% + \ClassWarning{tudscrman}{% + It is not possible to use any indexing format\MessageBreak% + like |\@IndexFormat| within the arguments of the\MessageBreak% + environment `Declaration'% + }% + \fi% + \if@stareddeclare% + \manualhyperdef'{\@tempa}% + \else% + \manualhyperdef{\@tempa}% + \fi% + \@HyperIndex{#5}{#6}{#7}{#8}{#9}{(declare}% + }% \fi% \if@stareddeclare\else% #1\IfValueT{#2}{#2}% \fi% \else% \if@deprecated\else% - \@HyperIndex{#5}{#6}{#7}{#8}{#9}{declare)}% + \expandafter\IfBooleanF\expandafter{\@IndexFormat}{% + \@HyperIndex{#5}{#6}{#7}{#8}{#9}{declare)}% + }% \fi% \fi% \else% \ifx\@IndexFormat\relax% - \ClassError{\tudcls@name}{\string\SetIndexFormat\space unused}{% - It seems you have forgotten to use \string\SetIndexFormat% + \ClassError{tudscrman}{\string\SetIndexFormat\space unused}{% + It seems you have forgotten to use \string\SetIndexFormat.% }% \else% \expandafter\IfBooleanF\expandafter{\@IndexFormat}{% @@ -715,7 +739,7 @@ \def\@tempc{\mbox{\hyperref{}{\jobname}{\@tempa}{#1}\IfValueT{#2}{#2}}}% \IfValueT{#3}{% \def\@tempb{% - \ClassWarning{\tudcls@name}{% + \ClassWarning{tudscrman}{% You've used the unknown cross-reference\MessageBreak% shorthand '#3'. Only 'auto', 'page'\MessageBreak% and 'full' as well as 'none' are valid% @@ -733,12 +757,14 @@ \@tempc\@tempb% }{% \IfValueT{#3}{% - \ClassWarning{\tudcls@name}{% + \ClassWarning{tudscrman}{% No cross-reference created, label \@tempa\space is missing% }% }% \IfValueTF{#4}{% - \href{http://www.ctan.org/pkg/#4}{\mbox{#1\IfValueT{#2}{#2}}}% + \ifstr{#4}{}{\mbox{#1\IfValueT{#2}{#2}}}{% + \href{http://www.ctan.org/pkg/#4}{\mbox{#1\IfValueT{#2}{#2}}}% + }% }{% \mbox{#1\IfValueT{#2}{#2}}% }% @@ -841,7 +867,7 @@ }% }{% \ifx\@declarationlist\relax\else% - \ClassError{\tudcls@name}{\string\printdeclarationlist\space is missing}{% + \ClassError{tudscrman}{\string\printdeclarationlist\space is missing}{% \string\@declarationlist\space is not empty. Did you forget\MessageBreak% to print this list with \string\printdeclarationlist?% }% @@ -864,7 +890,7 @@ }% \IfValueT{#2}{% \if@additionallist% - \ClassWarning{\tudcls@name}{% + \ClassWarning{tudscrman}{% It is not possible to use the optional argument\MessageBreak% of \string\printdeclarationlist due to the given\MessageBreak% additional information as argument of the\MessageBreak% @@ -897,7 +923,7 @@ \if@presetlist% \qquad% \texttt{% - \begin{tabular}{l}% + \begin{tabular}{l@{}}% \forlistloop\@tempa{\@presetlist}% \end{tabular}% }% @@ -930,7 +956,7 @@ \@stareddeclarefalse% }{% \ifx\@changedatdeclarelist\relax\else% - \ClassError{\tudcls@name}{\string\printchangedatlist\space is missing}{% + \ClassError{tudscrman}{\string\printchangedatlist\space is missing}{% \string\@changedatdeclarelist\space is not empty. Did you\MessageBreak% forget to print this list with \string\printchangedatlist?% }% @@ -960,13 +986,16 @@ topsep=.5\baselineskipglue,labelwidth=\columnwidth,labelsep=0pt,% font=\normalfont\ttfamily,before*=\before@values% } +\newcommand*\itemvalues{} \newcommand*\before@values{% - \let\item@values\item% - \let\item\tud@item% + \ifdefvoid{\itemvalues}{% + \let\itemvalues\item% + \let\item\tud@item% + \setlength\changedatskip{-\baselineskip}% + }{}% } \newcommand*\itemfalse{\def\tud@item@val{false/off/no}\item} \newcommand*\itemtrue{\def\tud@item@val{true/on/yes}\item} -\newcommand*\item@values{} \newcommand*\tud@item@val{} \newcommand*\tud@item@add{} \newcommand*\tud@item@format{} @@ -989,7 +1018,7 @@ {\edef\@tempa{\tud@item@val/#1}}% }% \def\tud@item@val{}% - \ifstr{\@tempa}{}{\item@values}{\tud@@@item}% + \ifstr{\@tempa}{}{\itemvalues}{\tud@@@item}% } \newcommand*\tud@@@item[1][]{% \ifblank{#1}{}{% @@ -999,7 +1028,7 @@ \appto\tud@item@add{~#1}% \fi% }% - \item@values[% + \itemvalues[% \tud@item@format{\@tempa:}% \ifx\tud@item@add\relax\else% {\normalfont\space\footnotesize\tud@item@add}% @@ -1030,9 +1059,10 @@ \ifdefvoid{\itempackages}{% \let\itempackages\item% \let\item\tud@item@pkg% + \setlength\changedatskip{-\baselineskip}% }{}% } -\NewDocumentCommand\tud@item@pkg{od()}{% +\NewDocumentCommand\tud@item@pkg{od()od''}{% \itempackages[{% \IfValueT{#1}{% \manualhyperdef{files:#1}% @@ -1042,6 +1072,30 @@ \def\@tempa{http://www.ctan.org/pkg/#1}% }% \href{\@tempa}{\Package{#1}'none'|!|}% + \IfValueT{#3}{% + \quad(% + \let\@tempb\relax% + \@for\@tempa:=#3\do{% + \@tempb% + \manualhyperdef{files:\@tempa}% + \expandafter\Package\expandafter{\@tempa}'none'|!|% + \def\@tempb{, }% + }% + )% + }% + \IfValueT{#4}{% + \quad(% + \let\@tempb\relax% + \@for\@tempa:=#4\do{% + \@tempb% + \manualhyperdef{files:\@tempa}% + \href{http://www.ctan.org/pkg/\@tempa}{% + \expandafter\Package\expandafter{\@tempa}'none'|!|% + }% + \def\@tempb{, }% + }% + )% + }% }% }]% } @@ -1085,7 +1139,8 @@ }% \fi% } -\NewDocumentCommand\ChangedAt{sO{\z@}mO{Allgemein}}{% +\newlength\changedatskip +\NewDocumentCommand\ChangedAt{sO{\changedatskip}mO{Allgemein}}{% \ChangedAt@Process[#1]{#2}[#4]{#3}% } \newcommand*\@changedatlist{} @@ -1203,7 +1258,7 @@ \if@listsorted% \expandafter\edef\expandafter\@tempb\expandafter{\@tempb,\@tempa}% \else% - \expandafter\ifnum\pdfstrcmp{#1}{\@tempa}<0\relax% + \expandafter\ifnum\pdfstrcmp{#1}{\@tempa}<\z@\relax% \ifx\@tempb\@empty% \expandafter\edef\expandafter\@tempb\expandafter{% #1,\@tempa% @@ -1250,7 +1305,9 @@ } \newcommand*\PrintIndexPrologue[1]{\long\gdef\@printindexprologue{#1}} \newcommand*\@printindexprologue{} -\newcommand*\@printindexskip{\ifnum\imki@columns>\@ne\vspace{-\multicolsep}\fi} +\newcommand*\@printindexskip{% + \ifnum\imki@columns>\@ne\relax\vspace{-\multicolsep}\fi% +} \newcommand*\@printindex[1][]{% \pagebreak[3]% \ifblank{#1}{% @@ -1302,7 +1359,6 @@ \renewrobustcmd*\seealso[2]{% \ifstr{#1}{*}{\emph{\alsoname}~#2}{\emph{\alsoname}~#1}% } -%%% From File: tudscr-misc.dtx \RequirePackage{xspace}[2009/10/20] \xspaceaddexceptions{"=} \newcommand*\vTUDScript{} @@ -1311,8 +1367,31 @@ \edef\@tempa{\TUDVersion}% \expandafter\@tempb\@tempa\relax? ? \relax\relax% } -\newcommand*\vKOMAScript{v3.12\xspace} +\newcommand*\vKOMAScript{v3.17\xspace} \RequirePackage{scrhack}[2014/02/27] +\newcommand*\CD{Corporate Design\xspace} +\newcommand*\CDs{Corporate Designs\xspace} +\newcommand*\TUD{Technische Universit\"at Dresden\xspace} +\newcommand*\TnUD{Technischen Universit\"at Dresden\xspace} +\newcommand*\DDC{% + \mbox{D\kern.05em R\kern.05em E\kern.05em S\kern.05em D\kern.05em E\kern.05em + N\kern.1em-\kern.1em concept}\xspace% +} +\AfterPackage*{babel}{% + \@expandtwoargs\in@{,english,}{,\bbl@loaded,}% + \ifin@% + \renewcommand*\CD{\foreignlanguage{english}{Corporate Design}\xspace} + \renewcommand*\CDs{\foreignlanguage{english}{Corporate Designs}\xspace} + \fi +} +\newcommand*\Univers{\textubn{Univers}\xspace} +\newcommand*\DIN{\textdbn{DIN~BOLD}\xspace} +\newcommand*\textsbn{} +\newcommand*\sbnfont{\sffamily\bfseries\upshape} +\DeclareTextFontCommand\textsbn{\sffamily\bfseries\upshape} +\newcommand*\textsbs{} +\newcommand*\sbsfont{\sffamily\bfseries\slshape} +\DeclareTextFontCommand\textsbs{\sffamily\bfseries\slshape} \newcommand*\Attention[1]{\marginnote{\fbox{Achtung!}}\emph{#1}} \NewDocumentCommand\Forum{s}{% \IfBooleanTF{#1}{% @@ -1322,18 +1401,6 @@ }% \xspace% } -\newcommand*\hrfn[2]{\href{#1}{#2}\footnote{\scriptsize\url{#1}}} -\NewDocumentCommand\scrguide{s}{% - \def\@tempc{% - http://mirrors.ctan.org/macros/latex/contrib/koma-script/doc/scrguide.pdf% - }% - \IfBooleanTF{#1}{% - \href{\@tempc}{\File{scrguide.pdf}}% - }{% - \hrfn{\@tempc}{\File{scrguide.pdf}}% - }% - \xspace% -} \NewDocumentCommand\GitHubRepo{s}{% \def\@tempc{% https://github.com/tud-cd/tudscr/releases% @@ -1349,29 +1416,18 @@ F\"ur die Klasse \Class{tudscrartcl} ist diese Einstellung nicht verf\"ugbar. } \newlength\tempdim -\newcommand*\CD{Corporate Design\xspace} -\newcommand*\CDs{Corporate Designs\xspace} -\newcommand*\TUD{Technische Universit\"at Dresden\xspace} -\newcommand*\TnUD{Technischen Universit\"at Dresden\xspace} -\newcommand*\DDC{% - \mbox{D\kern.05em R\kern.05em E\kern.05em S\kern.05em D\kern.05em E\kern.05em - N\kern.1em-\kern.1em concept}\xspace% -} -\AfterPackage*{babel}{% - \@expandtwoargs\in@{,english,}{,\bbl@loaded,}% - \ifin@% - \renewcommand*\CD{\foreignlanguage{english}{Corporate Design}\xspace} - \renewcommand*\CDs{\foreignlanguage{english}{Corporate Designs}\xspace} - \fi +\newcommand*\hrfn[2]{\href{#1}{#2}\footnote{\scalebox{0.97}{\url{#1}}}} +\NewDocumentCommand\scrguide{s}{% + \def\@tempc{% + http://mirrors.ctan.org/macros/latex/contrib/koma-script/doc/scrguide.pdf% + }% + \IfBooleanTF{#1}{% + \href{\@tempc}{\File{scrguide.pdf}}% + }{% + \hrfn{\@tempc}{\File{scrguide.pdf}}% + }% + \xspace% } -\newcommand*\Univers{\textubn{Univers}\xspace} -\newcommand*\DIN{\textdbn{DIN~BOLD}\xspace} -\newcommand*\sbnfont{\sffamily\bfseries\upshape} -\newcommand*\sbsfont{\sffamily\bfseries\slshape} -\newcommand*\textsbn{} -\newcommand*\textsbs{} -\DeclareTextFontCommand\textsbn{\sffamily\bfseries\upshape} -\DeclareTextFontCommand\textsbs{\sffamily\bfseries\slshape} \endinput %% %% End of file `tudscrman.cls'. |