diff options
Diffstat (limited to 'Master/texmf-dist/tex/latex/tudscr/tudscrmanual.sty')
-rw-r--r-- | Master/texmf-dist/tex/latex/tudscr/tudscrmanual.sty | 1689 |
1 files changed, 1689 insertions, 0 deletions
diff --git a/Master/texmf-dist/tex/latex/tudscr/tudscrmanual.sty b/Master/texmf-dist/tex/latex/tudscr/tudscrmanual.sty new file mode 100644 index 00000000000..8fe34bda39e --- /dev/null +++ b/Master/texmf-dist/tex/latex/tudscr/tudscrmanual.sty @@ -0,0 +1,1689 @@ +%% +%% This is file `tudscrmanual.sty', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% tudscr-version.dtx (with options: `package,manual,identify') +%% tudscr-manual.dtx (with options: `package,manual,identify') +%% tudscr-base.dtx (with options: `package,manual,load') +%% tudscr-misc.dtx (with options: `package,manual,option') +%% tudscr-manual.dtx (with options: `package,manual,option') +%% tudscr-misc.dtx (with options: `package,manual,execute') +%% tudscr-misc.dtx (with options: `package,manual,body') +%% tudscr-manual.dtx (with options: `package,manual,body') +%% tudscr-texindy.dtx (with options: `package,manual') +%% +%% TUD-Script -- Corporate Design of Technische Universitaet Dresden +%% 2022/08/09 v2.06o TUD-Script +%% +%% Copyright (C) Falk Hanisch <hanisch.latex@outlook.com>, 2012-2022 +%% https://github.com/tud-cd/tudscr +%% https://latex.wcms-file3.tu-dresden.de/phpBB3/ +%% +%% This file was generated from file(s) of the TUD-Script bundle. +%% ---------------------------------------------------------------------------- +%% +%% This work may be distributed and/or modified under the conditions of the +%% LaTeX Project Public License, either version 1.3c of this license or +%% any later version. The latest version of this license is in +%% http://www.latex-project.org/lppl.txt +%% and version 1.3c or later is part of all distributions of +%% LaTeX version 2008-05-04 or later. +%% +%% This work has the LPPL maintenance status "maintained". +%% +%% The current maintainer and author of this work is Falk Hanisch. +%% +%%%% From File: tudscr-version.dtx (no git version info was found) +\NeedsTeXFormat{LaTeX2e}[2022-06-01] +\begingroup + \catcode`\@11\relax% + \ifx\TUD@Version\@undefined% + \newcommand*\TUD@@Version[2]{% + \gdef\TUD@Version{#1}% + \gdef\TUD@KOMAVersion{#2}% + }% + \else% + \newcommand*\TUD@@Version[2]{% + \def\@tempa{#1}% + \ifx\TUD@Version\@tempa\else% + \@latex@warning@no@line{% + \noexpand\TUD@Version\space is `\TUD@Version',\MessageBreak% + but `#1' was expected!\MessageBreak% + You should not use classes, packages or files from\MessageBreak% + different TUD-Script bundle versions% + }% + \fi% + }% + \fi% + \TUD@@Version{2022/08/09 v2.06o TUD-Script}{2022/05/01 v3.36 KOMA-Script}% + \ifx\TUDScriptVersion\@undefined% + \xdef\TUDScriptVersion{\TUD@Version}% + \def\@tempa#1 v#2 #3\relax#4\relax#5{\gdef#5{#2}}% + \expandafter\@tempa\TUD@Version ? ?\relax\relax{\TUDScriptVersionNumber}% + \expandafter\@tempa\TUD@KOMAVersion ? ?\relax\relax{\TUD@KOMAVersionNumber}% + \fi% +\endgroup +\@ifundefined{TUDScript}{% + \DeclareRobustCommand\TUDScript{% + \mbox{% + \textsf{% + T\kern.05em U\kern.05em D\kern.1em-\kern.1em Script% + }% + }\ifcsname xspace\endcsname\xspace\fi% + }% +}{} +\providecommand*\TUDScriptContact{hanisch.latex@outlook.com} +\providecommand*\TUDScriptRepository{https://github.com/tud-cd/tudscr} +\providecommand*\TUDScriptForum{https://latex.wcms-file3.tu-dresden.de/phpBB3/} +\providecommand*\TUD@Class@Check[1]{% + \ifx\TUD@Class@Name\@undefined% + \PackageError{#1}{TUD-Script class not loaded}{% + This package requires a class of the TUD-Script bundle\MessageBreak% + (tudscrbook, tudscrreprt, tudscrartcl, tudscrposter).% + }% + \DeclareOption*{}% + \ProcessOptions\relax% + \expandafter\endinput% + \fi% +}% +%%%% From File: tudscr-manual.dtx (no git version info was found) +\ProvidesPackage{tudscrmanual}[% + 2022/08/09 v2.06o TUD-Script + package (tudscr tutorials)% +] +\TUD@Class@Check{tudscrtutorial} +%%%% From File: tudscr-base.dtx (no git version info was found) +\RequirePackage{tudscrbase}[% + 2022/08/09 v2.06o TUD-Script +] +%%%% From File: tudscr-misc.dtx (no git version info was found) +\RequirePackage{scrhack}[% + 2022/05/01 v3.36 KOMA-Script +] +\RequirePackage{xspace} +\xspaceaddexceptions{"=} +\PassOptionsToPackage{quiet}{marginnote} +\RequirePackage{marginnote} +\reversemarginpar +\RequirePackage{shellesc} +\RequirePackage{pdftexcmds} +\PassOptionsToPackage{hyperindex=false}{hyperref} +\AfterPackage*{bookmark}{\bookmarksetup{open,openlevel=1}} +\AfterAtEndOfPackage*{hyperref}{% + \@ifpackageloaded{bookmark}{}{\RequirePackage{bookmark}}% + \hypersetup{colorlinks,linkcolor=blue}% +} +\newcommand*\hrfn[2]{% + \href{#1}{\trim@spaces{#2}}% + \footnote{\strut\url{#1}}% +} +\newrobustcmd*\mailto[1]{\mbox{\href{mailto:#1}{\nolinkurl{#1}}}} +\TUD@UnwindPackage{hyperref}{% + \RequirePackage{url} + \providerobustcmd*\url[1]{\texttt{\detokenize{#1}}}% + \providerobustcmd*\nolinkurl[1]{\url{#1}}% + \providerobustcmd*\href[3][]{#3}% + \providecommand*\hypersetup[1]{}% + \providecommand*\phantomsection{}% + \providecommand*\pdfbookmark[3][]{}% + \providecommand*\currentpdfbookmark[2]{}% + \providecommand*\subpdfbookmark[2]{}% + \providecommand*\belowpdfbookmark[2]{}% +} +\AfterPackage*{babel}{\RequirePackage{csquotes}} +\TUD@UnwindPackage{babel}{% + \ClassWarningNoLine{\TUD@Class@Name}{Package `babel' not loaded}% + \providecommand*\selectlanguage[1]{}% + \providecommand*\glqq{\quotedblbase}% + \providecommand*\grqq{\textquotedblleft}% + \providecommand*\seename{see}% + \providecommand*\alsoname{see\nobreakspace also}% +} +\TUD@UnwindPackage{csquotes}{% + \ClassWarningNoLine{\TUD@Class@Name}{Package `csquotes' not loaded}% + \providecommand\enquote[1]{\emph{#1}}% +} +\newcommand*\tud@replace@in[3]{% + \begingroup% + \edef\tud@res@a{\expandonce{#1}}% + \let\tud@res@c\@empty% + \def\tud@res@b##1#2##2\@nil{% + \IfArgIsEmpty{##2}{% + \appto\tud@res@c{##1}% + }{% + \appto\tud@res@c{##1#3}% + \tud@res@b##2\@nil% + }% + }% + \expandafter\tud@res@b\tud@res@a#2\@nil% + \edef\tud@res@a{% + \endgroup% + \unexpanded{\def#1}{\expandonce\tud@res@c}% + }% + \tud@res@a% +} +\newcommand*\tud@replace@@in[3]{% + \begingroup% + \protected@edef\tud@res@a{#1}% + \edef\tud@res@a{\detokenize\expandafter{\tud@res@a}}% + \edef\tud@res@b{% + \unexpanded{\tud@replace@in\tud@res@a}{\detokenize{#2}}{\detokenize{#3}}% + }% + \tud@res@b% + \edef\tud@res@a{% + \endgroup% + \unexpanded{\def#1}{\tud@res@a}% + }% + \tud@res@a% +} +%%%% From File: tudscr-manual.dtx (no git version info was found) +\TUD@key{final}[true]{% + \TUD@set@ifkey{final}{@tempswa}{#1}% + \ifx\FamilyKeyState\FamilyKeyStateProcessed% + \if@tempswa% + \let\tudfinalflag\relax% + \fi% + \fi% +} +\TUD@key{print}[true]{% + \TUD@set@ifkey{print}{@tempswa}{#1}% + \ifx\FamilyKeyState\FamilyKeyStateProcessed% + \if@tempswa% + \let\tudprintflag\relax% + \fi% + \fi% +} +\AtEndPreamble{% + \ifdef{\tudfinalflag}{% + \TUDoptions{ToDo=false}% + \TUD@key{ToDo}{\FamilyKeyStateProcessed}% + }{% + \KOMAoptions{overfullrule}% + }% + \ifdef{\tudprintflag}{% + \ifnum\tud@cd@num>\z@\relax% + \TUDoptions{cd=true}% + \fi% + \TUD@key{cd}{\FamilyKeyStateProcessed}% + \ifundef{\hypersetup}{}{\hypersetup{hidelinks}}% + }{}% +} +\tud@newif\if@tud@todo +\newcommand*\tud@todo@type@pos{} +\let\tud@todo@type@pos\relax +\newcommand*\tud@todo@type@neg{} +\let\tud@todo@type@neg\relax +\TUD@key{ToDo}[true]{% + \TUD@set@ifkey{ToDo}{@tud@todo}{#1}% + \ifx\FamilyKeyState\FamilyKeyStateProcessed% + \let\tud@todo@type@pos\relax% + \let\tud@todo@type@neg\relax% + \else% + \def\@tempa not##1##2##3##4\@nil{% + \tud@if@strequal{##1##2##3}{not}{% + \IfArgIsEmpty{##4}{}{% + \listeadd\tud@todo@type@neg{##4}% + \@tud@todotrue% + \FamilyKeyStateProcessed% + }% + }{% + \IfArgIsEmpty{##1}{}{% + \listeadd\tud@todo@type@pos{##1##2##3##4}% + \@tud@todotrue% + \FamilyKeyStateProcessed% + }% + }% + }% + \edef\@tempb{not\trim@spaces{#1}}% + \expandafter\@tempa\@tempb\@empty\@empty\@empty\@nil% + \fi% +} +%%%% From File: tudscr-misc.dtx (no git version info was found) +\KOMAoptions{headings=small} +\TUDoptions{cdfoot=true} +\TUDExecuteOptions{% +} +\TUDProcessOptions\relax +%%%% From File: tudscr-misc.dtx (no git version info was found) +\renewcommand*\@pnumwidth{2.1em} +\renewcommand*\@tocrmarg{3.1em} +\newcommand*\textsbn{} +\newrobustcmd*\sbnfont{\sffamily\bfseries\upshape} +\DeclareTextFontCommand\textsbn{\sbnfont} +\newcommand*\textsbi{} +\newrobustcmd*\sbifont{\sffamily\bfseries\itshape} +\DeclareTextFontCommand\textsbi{\sbifont} +\newcommand*\textttit{} +\newrobustcmd*\ttitfont{\ttfamily\itshape} +\DeclareTextFontCommand\textttit{\ttitfont} +\newcommand*\tud@english[1]{% + \iflanguageloaded{english}{\foreignlanguage{english}{#1}}{#1}% +} +\AfterPackage*{babel}{% + \renewcommand*\tud@english[1]{\foreignlanguage{english}{#1}}% +} +\kernel@make@fragile\KOMAScript +\edef\KOMAScript{\noexpand\mbox{\expandonce\KOMAScript}\noexpand\xspace} +\robustify\KOMAScript +\robustify\TUDScript +\AfterPackage*{hyperref}{% + \pdfstringdefDisableCommands{% + \def\KOMAScript{KOMA-Script{}}% + \def\TUDScript{TUD-Script{}}% + }% +} +\newcommand*\vTUDScript{v\TUDScriptVersionNumber} +\newcommand*\vKOMAScript{v\TUD@KOMAVersionNumber} +\newrobustcmd*\CD{\tud@english{Corporate Design}\xspace} +\newrobustcmd*\CDs{\tud@english{Corporate Designs}\xspace} +\newrobustcmd*\TUD{Technische Universit\"at Dresden\xspace} +\newrobustcmd*\TnUD{Technischen Universit\"at Dresden\xspace} +\newcommand*\TUDCD{\CD der \TnUD} +\newcommand*\TUDCDs{\CDs der \TnUD} +\newrobustcmd*\TUDForum{\mbox{T\kern.05em U\kern.05em D-\LaTeX-Forum}\xspace} +\newrobustcmd*\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*{hyperref}{% + \pdfstringdefDisableCommands{% + \def\CD{Corporate Design{}}% + \def\CDs{Corporate Designs{}}% + \def\TUD{Technische Universit\"at Dresden{}}% + \def\TnUD{Technischen Universit\"at Dresden{}}% + \def\TUDForum{TUD-LaTeX-Forum{}}% + \def\DDC{DRESDEN-concept{}}% + }% +} +\newrobustcmd*\OpenSans{\textcdbn{Open\nobreakspace Sans}\xspace} +\newrobustcmd*\Univers{\textcdbi{Univers}\xspace} +\newrobustcmd*\DIN{\textcdbi{DIN\nobreakspace Bold}\xspace} +\AfterPackage*{hyperref}{% + \pdfstringdefDisableCommands{% + \def\OpenSans{Open Sans{}}% + \def\Univers{Univers{}}% + \def\DIN{DIN Bold{}}% + }% +} +\newcommand*\GitHubBase[1]{} +\NewDocumentCommand\GitHubRepo{!s !t' !O{releases} !D(){tud-cd/tudscr} !d<>}{% + \IfBooleanTF{#1}{\toks@{\href}}{\toks@{\hrfn}}% + \IfBooleanT{#2}{\toks@{\url}}% + \def\@tempa{https://github.com/#4/}% + \edef\@tempa{{\@tempa\IfValueTF{#5}{issues/#5}{#3}}}% + \addto@hook@expandafter\toks@{\@tempa}% + \IfBooleanF{#2}{% + \addto@hook\toks@{{\tud@english{GitHub-Repository~\textsbn{#4}}}}% + }% + \the\toks@\xspace% +} +\newcommand*\Download[1]{% + https://github.com/tud-cd/tudscr/releases/download/#1% +} +\NewDocumentCommand\CTAN{!s !o !g}{% + \IfBooleanTF{#1}{\toks@{\href}}{\toks@{\hrfn}}% + \addto@hook\toks@{{http://www.ctan.org/\IfValueT{#2}{#2}}}% + \addto@hook\toks@{% + {\tud@english{Comprehensive TeX Archive Network (CTAN\IfValueT{#3}{~#3})}}% + }% + \the\toks@\xspace% +} +\NewDocumentCommand\Forum{!s !t' !O{\TUDForum} !d<>}{% + \IfBooleanTF{#1}{\toks@{\href}}{\toks@{\hrfn}}% + \IfBooleanT{#2}{\toks@{\url}}% + \def\@tempa{http://latex.wcms-file3.tu-dresden.de/phpBB3/}% + \edef\@tempa{{\@tempa\IfValueT{#4}{viewtopic.php?t=#4}}}% + \addto@hook@expandafter\toks@{\@tempa}% + \IfBooleanF{#2}{\addto@hook\toks@{{#3}}}% + \the\toks@\xspace% +} +\newcommand*\Attention[2][\z@]{% + \marginnote{% + \tud@setdim\fboxsep{0.25em}% + \fbox{Achtung!}% + }[{#1}]% + \emph{\trim@spaces{#2}}% +} +\newrobustcmd*\TUDScriptContactTitle{% + \ifundef{\emailaddress}{% + \qquad\expandafter\mailto\expandafter{\TUDScriptContact}% + }{% + \expandafter\emailaddress\expandafter{\TUDScriptContact}% + }% +} +\AfterPackage*{hyperref}{% + \pdfstringdefDisableCommands{\let\TUDScriptContactTitle\relax}% +} +%%%% From File: tudscr-manual.dtx (no git version info was found) +\RequirePackage{scrwfile} +\AfterPackage*{hyperref}{% + \renewcaptionname{ngerman}{\sectionautorefname}{Unterkapitel}% + \renewcaptionname{ngerman}{\subsectionautorefname}{Abschnitt}% + \renewcaptionname{ngerman}{\subsubsectionautorefname}{Unterabschnitt}% + \newcommand*\tud@manualname{tudscr}% + \newcommand*\tudhyperref[2]{% + \hyperref{../\tud@manualname.pdf}{\tud@manualname}{#1}{#2}% + }% + \newcommand*\autorefname[1][current]{% + \tud@if@strequal{#1}{current}{% + \expandafter\HyPsd@@autorefname\@currentHref\@nil% + }{% + \auto@refname\HyPsd@@autorefname{#1}% + }% + \unskip\xspace% + }% + \newcommand*\auto@refname[2]{% + \expandafter\ifx\csname r@#2\endcsname\relax% + ??% + \else% + \expandafter\expandafter\expandafter\auto@@refname% + \csname r@#2\endcsname{}{}{}{}\@nil#1\@nil% + \fi% + }% + \newcommand*\auto@@refname{}% + \def\auto@@refname#1#2#3#4#5\@nil#6\@nil{#6#4.\@nil}% +} +\TUD@UnwindPackage{hyperref}{% + \PackageWarningNoLine{tudscrmanual}% + {% + It is strongly recommended to load package `hyperref'. \MessageBreak% + Nevertheless, essential commands are rudimentarily\MessageBreak% + defined. At least the package `url' is loaded% + }% + \providecommand*\hyperpage[1]{#1}% + \providecommand*\autoref{??\xspace\kernel@ifstar{\ref}{\ref}}% + \providecommand*\hyperdef[3]{\label{#1.#2}#3}% + \providerobustcmd*\hyperref{% + \kernel@ifnextchar[{\tud@hyperref@a}{\tud@hyperref@b}% + } + \newcommand*\tud@hyperref@a[2][]{#2} + \newcommand*\tud@hyperref@b[4]{#4} + \tud@localization@german{\partautorefname}{Teil}% + \tud@localization@german{\chapterautorefname}{Kapitel}% + \tud@localization@german{\sectionautorefname}{Unterkapitel}% + \tud@localization@german{\subsectionautorefname}{Abschnitt}% + \tud@localization@german{\subsubsectionautorefname}{Unterabschnitt}% + \tud@localization@english{\partautorefname}{Part}% + \tud@localization@english{\chapterautorefname}{chapter}% + \tud@localization@english{\sectionautorefname}{section}% + \tud@localization@english{\subsectionautorefname}{subsection}% + \tud@localization@english{\subsubsectionautorefname}{subsubsection}% + \providecommand*\tudhyperref[2]{#2}% + \providecommand*\autorefname[1][]{??\xspace}% +} +\RequirePackage{varioref} +\renewcommand*\fullref[1]{\hyperref[{#1}]{\autoref*{#1} \vpageref{#1}}} +\newrobustcmd*\bsc{\@backslashchar} +\newrobustcmd*\txb{{\raise.05em\hbox{\kern.05em\textbar\kern.05em}}} +\newrobustcmd*\suffix[1]{\begingroup~\scriptsize(#1)\endgroup} +\providecommand*\NewExpandableDocumentCommand[3]{% + \NewDocumentCommand#1{#2}{}% + \DeclareExpandableDocumentCommand#1{#2}{#3}% +} +\newcommand*\ProcessorKeyVal[1]{% + \begingroup% + \in@{=}{#1}% + \ifin@% + \def\@tempa##1=##2\@nil{\toks@{{##1}=##2=}}% + \else% + \def\@tempa##1\@nil{\toks@{{##1}}}% + \fi% + \@tempa#1\@nil% + \edef\tud@reserved{% + \noexpand\endgroup% + \def\noexpand\ProcessedArgument{\the\toks@}% + }% + \tud@reserved% +} +\newcommand*\tud@keyval@error{% + \PackageError{tudscrmanual}% + {Wrong usage of optional argument for value}% + {There are two optional arguments for a value given!}% +} +\newenvironment{Bundle}[1]{% + \tud@if@bdl{% + \PackageError{tudscrmanual}% + {Nested environment `Bundle'}{% + It is not possible to nest this environment, when\MessageBreak% + a cross-label was given before.% + }% + }{% + \gdef\tud@bdl@curr{#1}% + }% + \ignorespaces% +}{% + \global\let\tud@bdl@curr\tud@bdl@dflt% + \aftergroup\ignorespaces% +} +\newcommand*\tud@bdl@curr{} +\newcommand*\tud@bdl@dflt{tudscr} +\let\tud@bdl@curr\tud@bdl@dflt +\newcommand*\tud@if@bdl[2]{% + \tud@if@strequal{\tud@bdl@curr}{\tud@bdl@dflt}{#2}{#1}% +} +\NewExpandableDocumentCommand\@Application{sm}{#2} +\NewDocumentCommand\Application{s m !d() !d<> !d||}{% + \Markup@SetFormat{\sbifont}% + \IfValueTF{#4}{% + \Process@Markup{\Application{#2}}(#3)<#4>% + }{% + \Process@Markup{\Application{#2}}(#3)% + }% + \Process@Index{#1}{\Application{#2}}[Anwendungssoftware](#3)|#5|% +} +\NewExpandableDocumentCommand\@Distribution{sm}{#2} +\NewDocumentCommand\Distribution{s m !o !d() !d||}{% + \Markup@SetFormat{\sbnfont}% + \IfValueTF{#3}{% + \Process@Markup{\Distribution{#2}}[~#3](#4)% + }{% + \Process@Markup{\Distribution{#2}}(#4)% + }% + \Process@Index{#1}{\Distribution{#2}}[Distribution](#4)|#5|% +} +\NewExpandableDocumentCommand\@Engine{sm}{#2} +\NewDocumentCommand\Engine{s m !d() !d||}{% + \Markup@SetFormat{\sbnfont}% + \Process@Markup{\Engine{\hologo{#2}}}(#3)% + \Process@Index{#1}{\Engine{#2}}[Textsatzsystem](#3)|#4|% +} +\newrobustcmd*\Path[1]{\mbox{\texttt{#1}}} +\NewExpandableDocumentCommand\@File{sm}{#2} +\NewDocumentCommand\File{s m !d() !d||}{% + \Markup@SetFormat{\sbnfont}% + \Process@Markup{\File{#2}}(#3)% + \Process@Index{#1}{\File{#2}}[Datei](#3)|#4|% +} +\NewExpandableDocumentCommand\@Class{sm}{#2} +\NewDocumentCommand\Class{s m !d() !d'' !d||}{% + \Markup@SetFormat{\sbnfont}% + \Process@Markup{\Class{#2}}(#3)'#4'% + \Process@Index{#1}{\Class{#2}}[Klasse](#3)|#5|% +} +\NewExpandableDocumentCommand\@Package{sm}{#2} +\NewDocumentCommand\Package{s m !d() !d<> !d'' !d||}{% + \Markup@SetFormat{\sbnfont}% + \IfValueTF{#4}{% + \Process@Markup{\Package{#2}}(#3)<#4>'#5'% + }{% + \Process@Markup{\Package{#2}}(#3)<#2>'#5'% + }% + \Process@Index{#1}{\Package{#2}}[Paket](#3)|#6|% +} +\NewExpandableDocumentCommand\@Option{sm}{#2} +\NewDocumentCommand\Option{s >{\ProcessorKeyVal}m !d== !d() !d'' !d||}{% + \Option@Value{#1}#2=#3=(#4)'#5'|#6|% +} +\NewDocumentCommand\Option@Value{mmd==d==d()d''d||}{% + \IfValueT{#4}{\tud@keyval@error}% + \Markup@SetFormat{\ttfamily}% + \Process@Markup{\Option{#2}}=#3=(#5)'#6'% + \Process@Index{#1}{\Option{#2}}=#3=(#5)|#7|% +} +\NewExpandableDocumentCommand\@Environment{sm}{#2} +\NewDocumentCommand\Environment{s m !o !d() !d'' !d||}{% + \Markup@SetFormat{\ttfamily}(% + \ttfamily\bsc{}begin\textbraceleft#2\textbraceright\IfValueT{#3}{#3}% + \tabularnewline\ttfamily\dots% + \tabularnewline\ttfamily\bsc{}end\textbraceleft#2\textbraceright% + )% + \Process@Markup{\Environment{#2}}[#3](#4)'#5'% + \Process@Index{#1}{\Environment{#2}}[Umgebung](#4)|#6|% +} +\NewExpandableDocumentCommand\@Macro{sm}{#2} +\NewDocumentCommand\Macro{s m !o !d() !d'' !d||}{% + \Markup@SetFormat[\bsc]{\ttfamily}% + \Process@Markup{\Macro{#2}}[#3](#4)'#5'% + \Process@Index{#1}{\Macro{#2}}(#4)|#6|% +} +\NewExpandableDocumentCommand\@Length{sm}{#2} +\NewDocumentCommand\Length{s m !d() !d'' !d||}{% + \Markup@SetFormat[\bsc]{\ttfamily}[L\"ange]% + \Process@Markup{\Length{#2}}(#3)'#4'% + \Process@Index{#1}{\Length{#2}}[L\"ange](#3)|#5|% +} +\NewExpandableDocumentCommand\@Counter{sm}{#2} +\NewDocumentCommand\Counter{s m !d() !d'' !d||}{% + \Markup@SetFormat{\ttfamily}[Z\"ahler]% + \Process@Markup{\Counter{#2}}(#3)'#4'% + \Process@Index{#1}{\Counter{#2}}[Z\"ahler](#3)|#5|% +} +\NewDocumentCommand\tud@attr@get{smm}{% + \begingroup% + \def\@tempa##1##2##3{% + \def##1####1{% + \edef\@tempb{\IfBooleanTF{#1}{##2}{##3}}% + }% + }% + \@tempa\Application{\jobname}{app}% + \@tempa\Distribution{\jobname}{dst}% + \@tempa\Engine{\jobname}{eng}% + \@tempa\File{files}{fle}% + \@tempa\Class{files}{cls}% + \@tempa\Package{files}{pkg}% + \@tempa\Option{options}{opt}% + \@tempa\Environment{macros}{env}% + \@tempa\Macro{macros}{cmd}% + \@tempa\Length{misc}{len}% + \@tempa\Counter{misc}{cnt}% + #3% + \edef\tud@reserved{% + \noexpand\endgroup% + \def\noexpand#2{\@tempb}% + }% + \tud@reserved% +} +\newrobustcmd*\PValue[1]{\mbox{\texttt{#1}}} +\newrobustcmd*\PName[1]{\PValue{\textsl{<#1>}}} +\newrobustcmd*\PValueName[1]{\PName{#1}} +\newrobustcmd*\PSet{\PName{Einstellung}} +\newrobustcmd*\PBoolean{\PName{Ein-Aus-Wert}} +\newrobustcmd*\PBName[1]{\PBoolean\textOR\PName{#1}} +\newrobustcmd*\Parameter[1]{% + \mbox{\texttt{\textbraceleft}\PName{#1}\texttt{\textbraceright}}% +} +\newrobustcmd*\OParameter[1]{\mbox{\texttt{[}\PName{#1}\texttt{]}}} +\newrobustcmd*\LParameter{\mbox{\texttt{[}\PName{Parameterliste}\texttt{]}}} +\newrobustcmd*\OLParameter[1]{% + \mbox{\texttt{[}\PName{#1}\textOR\PName{Parameterliste}\texttt{]}}% +} +\newrobustcmd*\PParameter[1]{\mbox{\texttt{\textbraceleft#1\textbraceright}}} +\newrobustcmd*\POParameter[1]{\mbox{\texttt{[#1]}}} +\newrobustcmd*\textOR{\PValue{\,\textbardbl\,}} +\newcommand*\tud@doifPValue[3][]{% + \IfValueT{#2}{% + \begingroup% + \let\PValue\@firstofone% + \let\PName\@gobble% + \let\PValueName\@firstofone% + \let\PSet\@empty% + \let\PBoolean\@empty% + \let\PBName\@gobble% + \let\Parameter\@gobble% + \let\OParameter\@gobble% + \let\LParameter\@empty% + \let\OLParameter\@gobble% + \let\PParameter\@gobble% + \let\POParameter\@gobble% + \let\textOR\relax% + \let\emph\@firstofone% + #1% + \tud@if@strblank{#2}{% + \let\tud@reserved\endgroup% + }{% + \protected@edef\tud@reserved{\noexpand\endgroup#3}% + }% + \tud@reserved% + }% +} +\NewDocumentCommand\Markup@Gobble{s}{% + \let\Application\@Application% + \let\Distribution\@Distribution% + \let\Engine\@Engine% + \let\File\@File% + \let\Class\@Class% + \let\Package\@Package% + \let\Option\@Option% + \let\Environment\@Environment% + \let\Macro\@Macro% + \let\Length\@Length% + \let\Counter\@Counter% + \IfBooleanF{#1}{% + \let\PValue\@firstofone% + \let\PName\@firstofone% + \let\PValueName\@firstofone% + \let\PSet\relax% + \let\PBoolean\relax% + \let\PBName\@firstofone% + \let\Parameter\@firstofone% + \let\OParameter\@firstofone% + \let\LParameter\relax% + \let\OLParameter\@firstofone% + \let\PParameter\@firstofone% + \let\POParameter\@firstofone% + \let\textOR\relax% + \let\hologoRobust\@firstofone% + \def\_{-}% + \protected\def~{~}% + }% +} +\AfterPackage*{hyperref}{% + \expandafter\pdfstringdefDisableCommands\expandafter{\Markup@Gobble}% +} +\newcommand*\tud@lbl@tmp{} +\newcommand*\tud@lbl@fmt{% + \def~{-}% + \let\IeC\@firstofone% + \def\"##1{##1e}% + \def\ss{ss}% + \def\dots{...}% + \let\NoCaseChange\@firstofone% +} +\NewDocumentCommand\tud@lbl@get@curr{% + sm>{\tud@lbl@create}>{\SplitArgument{2}{:}}md==% +}{% + \tud@lbl@get@@curr#2{#3}=#4=% +} +\NewDocumentCommand\tud@lbl@get@@curr{mmd==}{% + \def#1{#2}% + \tud@doifPValue[\tud@lbl@fmt]{#3}{\noexpand\appto\noexpand#1{=#3}}% +} +\NewDocumentCommand\tud@lbl@get@dflt{m>{\SplitArgument{2}{:}}mr==}{% + \tud@lbl@get@@dflt{#1}#2=#3=% +} +\NewDocumentCommand\tud@lbl@get@@dflt{mmmmr==}{% + \tud@if@strequal{#2}{\tud@bdl@dflt}{}{% + \tud@lbl@get@curr#1{\tud@bdl@dflt:#3:#4}=#5=% + }% +} +\NewDocumentCommand\tud@lbl@create{m}{\tud@lbl@@create#1} +\NewDocumentCommand\tud@lbl@@create{mmm}{% + \begingroup% + \Markup@Gobble% + \tud@lbl@fmt% + \IfValueTF{#3}{% + \edef\@tempa{#1:#2:#3}% + }{% + \IfValueTF{#2}{% + \tud@attr@get\@tempb{#2}% + \IfValueTF{#1}{% + \tud@if@strblank{#1}{% + \edef\@tempa{\tud@bdl@dflt:\@tempb:#2}% + }{% + \edef\@tempa{#1:\@tempb:#2}% + }% + }{% + \edef\@tempa{\tud@bdl@curr:\@tempb:#2}% + }% + }{% + \edef\@tempa{#1}% + }% + }% + \edef\@tempc{% + \noexpand\endgroup% + \def\noexpand\ProcessedArgument{% + \expandafter\detokenize\expandafter{\@tempa}% + }% + }% + \@tempc% +} +\tud@newif\if@tud@disposition +\newcommand*\ifdisposition{% + \if@tud@disposition% + \expandafter\@firstoftwo% + \else% + \expandafter\@secondoftwo% + \fi% +} +\pretocmd\tud@sec@format{% + \@tud@dispositiontrue% +}{}{\tud@patch@wrn{tud@sec@format}} +\newcommand*\Markup@Suppress{\let\Process@Markup\Markup@@Suppress} +\NewDocumentCommand\Markup@@Suppress{md==od()d<>d''}{} +\NewDocumentCommand\Process@Markup{md==od()d<>d''}{% + \tud@toks@{\Process@@MarkupInline}% + \tud@lbl@get@curr\tud@lbl@tmp{#4:#1}=#2=% + \addto@hook@expandafter\tud@toks@{\expandafter{\tud@lbl@tmp}}% + \begingroup% + \Markup@Gobble*% + \protected@edef\tud@reserved{% + \noexpand\endgroup% + \def\noexpand\tud@reserved{#1}% + }% + \tud@reserved% + \addto@hook@expandafter\tud@toks@{\expandafter{\tud@reserved}}% + \IfValueT{#2}{\addto@hook\tud@toks@{=#2=}}% + \IfValueT{#3}{\addto@hook\tud@toks@{[#3]}}% + \if@tud@index\else% + \IfValueT{#5}{% + \tud@if@strblank{#5}% + {}% + {\addto@hook\tud@toks@{<http://www.ctan.org/pkg/#5>}}% + }% + \IfValueT{#6}{\addto@hook\tud@toks@{'#6'}}% + \fi% + \the\tud@toks@% +} +\NewDocumentCommand\Process@@MarkupInline{mmd==od<>d''}{% + \Markup@CheckFormat% + \begingroup% + \def\@tempc{\Markup@Output{#2}=#3=[#4]}% + \let\@tempa\@tempc% + \IfValueT{#5}{\def\@tempa{\href{#5}{\@tempc}}}% + \let\@tempb\relax% + \IfValueT{#6}{% + \tud@if@strequal{#6}{none}{\let\@tempa\@tempc}{% + \tud@if@strequal{#6}{manual}{\def\@tempa{\tudhyperref{#1}{\@tempc}}}{% + \def\@tempb{% + \PackageWarning{tudscrmanual}% + {% + You've used the unknown cross-reference\MessageBreak% + shorthand '#6'. Only 'none' and 'manual'\MessageBreak% + are valid% + }% + }% + }% + }% + }% + \ifdisposition{\@tempc}{\@tempa\@tempb}% + \endgroup% + \Markup@ClearFormat% +} +\NewDocumentCommand\Markup@Output{>{\SplitArgument{1}{!}}mr==r[]}{% + \Markup@@Output#1=#2=[#3]% +} +\NewDocumentCommand\Markup@@Output{mmr==r[]}{% + \tud@toks@{\Markup@Inline}% + \IfValueTF{#2}{% + \def\@tempa{#2}% + }{% + \def\@tempa{#1}% + }% + \IfValueT{#3}{\appto\@tempa{=#3}}% + \IfValueT{#4}{\appto\@tempa{#4}}% + \addto@hook@expandafter\tud@toks@{\expandafter{\@tempa}}% + \the\tud@toks@% +} +\newcommand*\Markup@Inline[1]{\mbox{\Markup@Format{#1}}} +\newcommand*\Markup@Format{} +\undef\Markup@Format +\newcommand*\Markup@Suffix{} +\NewDocumentCommand\Markup@SetFormat{omod()}{% + \def\Markup@Format##1{\begingroup#2{\IfValueT{#1}{#1}##1}\endgroup}% + \IfValueT{#3}{\def\Markup@Suffix{\suffix{#3}}}% +} +\newcommand*\Markup@ClearFormat{% + \undef\Markup@Format% + \let\Markup@Declare\Markup@@Declare% + \let\Markup@Suffix\relax% +} +\Markup@ClearFormat +\newcommand*\Markup@CheckFormat{% + \ifundef\Markup@Format{% + \PackageError{tudscrmanual}% + {\string\Markup@SetFormat\space unused}% + {It seems you have forgotten to use \string\Markup@SetFormat.}% + }{}% +} +\PassOptionsToPackage{xindy,splitindex}{imakeidx} +\RequirePackage{imakeidx} +\indexsetup{% + level=\subsection*,% + noclearpage,firstpagestyle=headings,headers={\indexname}{\indexname},% + othercode={\renewcommand*\subitem{\@idxitem\hspace*{15\p@}}}% +} +\ifimki@original\else% + \CheckCommand\theindex{% + \imki@maybeaddtotoc + \imki@indexlevel{\indexname}\imki@indexheaders + \thispagestyle{\imki@firstpagestyle}% + \ifnum\imki@columns>\@ne + \columnsep \imki@columnsep + \ifx\imki@idxprologue\relax + \begin{multicols}{\imki@columns} + \else + \begin{multicols}{\imki@columns}[\imki@idxprologue] + \fi + \else + \imki@idxprologue + \fi + \global\let\imki@idxprologue\relax + \parindent\z@ + \parskip\z@ \@plus .3\p@\relax + \columnseprule \ifKV@imki@columnseprule.4\p@\else\z@\fi + \raggedright + \let\item\@idxitem + \imki@othercode% + }% + \patchcmd\theindex{% + \imki@indexlevel{\indexname}\imki@indexheaders% + }{% + \imki@indexheaders% + }{}{\tud@patch@wrn{theindex}}% + \patchcmd\theindex{% + \ifnum\imki@columns>\@ne + \columnsep \imki@columnsep + \ifx\imki@idxprologue\relax + \begin{multicols}{\imki@columns} + \else + \begin{multicols}{\imki@columns}[\imki@idxprologue] + \fi + \else + \imki@idxprologue + \fi + }{% + \ifnum\imki@columns>\@ne\relax% + \columnsep \imki@columnsep% + \ifx\imki@idxprologue\relax% + \begin{multicols}{\imki@columns}[\imki@indexlevel{\indexname}]% + \else% + \begin{multicols}{\imki@columns}[% + \imki@indexlevel{\indexname}% + \imki@idxprologue% + ]% + \fi% + \else% + \imki@indexlevel{\indexname}\imki@idxprologue% + \fi% + }{}{\tud@patch@wrn{theindex}}% +\fi% +\newcommand*\tud@xdy@settings{} +\edef\tud@xdy@settings{-M \@currname-ind.xdy -L german-din} +\NewDocumentCommand\makexdyindex{s o m !o}{% + \let\@tempb\@empty% + \ifundef{\inputencodingname}{}{% + \eappto\tud@xdy@settings{\space-C\space\inputencodingname}% + }% + \protected@edef\@tempa{% + title={#3},% + columnsep=\noexpand\f@size\noexpand\p@,% + \IfValueTF{#4}{% + name={#4},% + options={\tud@xdy@settings\space-t \jobname-#4.xlg \@tempb},% + }{% + options={\tud@xdy@settings\space-t \jobname.xlg},% + }% + \IfValueT{#2}{#2}% + }% + \expandafter\makeindex\expandafter[\@tempa]% +} +\makexdyindex{Allgemeiner Index} +\makexdyindex*{Klassen- und Paketoptionen}[options] +\makexdyindex*{Befehle und Umgebungen mit zugeh\"origen Parametern}[macros] +\makexdyindex{L\"angen und Z\"ahler}[misc] +\makexdyindex*{Klassen, Pakete und Dateien}[files] +\undef\makexdyindex +\tud@newif\if@tud@index +\addtoeachtocfile{\protect\@tud@indextrue} +\newcommand*\tud@idx@key{} +\newcommand*\tud@idx@fmt{} +\newcommand*\tud@idx@val{} +\newcommand*\tud@idx@bdl{} +\NewDocumentCommand\tud@idx@get{smmmmr==r[]r()d||}{% + \begingroup% + \begingroup% + \Markup@Gobble% + \edef\tud@reserved{% + \noexpand\endgroup% + \def\noexpand#2{#5}% + }% + \tud@reserved% + \def#3{#5}% + \tud@replace@@in#2{@}{"@}% + \tud@replace@@in#3{@}{"@}% + \let\tud@idx@bdl\tud@bdl@dflt% + \IfValueTF{#8}{% + \def\tud@idx@bdl{#8}% + }{% + }% + \let\@tempa\@empty% + \let\@tempb\@empty% + \let\@tempc\@empty% + \@tempswatrue% + \ifx\tud@idx@bdl\tud@bdl@dflt% + \@tempswafalse% + \else% + \IfBooleanT{#1}{\@tempswafalse}% + \edef\@tempb{(\expandonce\tud@idx@bdl)}% + \fi% + \let\@tempc\@tempb% + \IfValueT{#7}{% + \appto\@tempa{ #7}% + \appto\@tempb{\suffix{#7}}% + }% + \if@tempswa% + \begingroup% + \Markup@Gobble% + \edef\tud@reserved{% + \noexpand\endgroup% + \noexpand\appto\noexpand\@tempa{ \tud@idx@bdl}% + }% + \tud@reserved% + \eappto\@tempb{\suffix{\expandonce\tud@idx@bdl}}% + \fi% + \@tempswafalse% + \IfBooleanT{#1}{\@tempswatrue}% + \IfValueT{#9}{% + \tud@if@strequal{#9}{declare}{\@tempswatrue}{}% + \tud@if@strequal{#9}{default}{\@tempswatrue}{}% + }% + \if@tempswa% + \protected@eappto#2{\expandonce\@tempa}% + \tud@doifPValue{#6}{\noexpand\appto\noexpand#2{=#6}}% + \protected@eappto#3{\IfValueT{#6}{=#6=}\expandonce\@tempb}% + \else% + \tud@doifPValue{#6}{\noexpand\@tempswatrue}% + \if@tempswa% + \eappto#4{% + \expandonce#2\expandonce\@tempa{}@% + \expandonce#3\expandonce\@tempb{}!% + }% + \appto#2{=#6}% + \appto#3{=#6=}% + \protected@eappto#3{\expandonce\@tempc}% + \else% + \protected@eappto#2{\expandonce\@tempa}% + \protected@eappto#3{\expandonce\@tempb}% + \fi% + \fi% + \let\emph\@firstofone% + \protected@edef\tud@reserved{% + \noexpand\endgroup% + \def\noexpand#2{#2}% + \def\noexpand#3{#3}% + \def\noexpand#4{#4}% + }% + \tud@reserved% +} +\newrobustcmd*\cleversee{\tud@cleversee{\seename}} +\newrobustcmd*\cleverseealso{% + \PackageWarning{tudscrmanual}% + {You should use `|see' instead of `|seealso'}% + \tud@cleversee{\alsoname}% +} +\newcommand*\tud@cleversee{} +\def\tud@cleversee#1#2\relax{% + \begingroup% + \let\cleversee\@empty% + \let\cleverseealso\@empty% + \let\tud@res@a\@empty% + \def\tud@res@b{#2}% + \def\tud@res@c##1\\##2\@nil{% + \appto\tud@res@a{##1}% + \def\tud@res@b{##2}% + \trim@spaces@in\tud@res@b% + \in@{\\}{##2}% + }% + \in@true% + \@whilesw\ifin@\fi{% + \expandafter\tud@res@c\tud@res@b\@nil% + }% + \ifx\tud@res@b\@empty% + \mbox{\emph{#1}}% + \else% + \def\tud@res@c##1 ##2\@nil{% + ##2##1\space\mbox{\emph{\alsoname}}% + }% + \expandafter\tud@res@c\tud@res@b\@nil% + \fi% + \space\tud@res@a% + \endgroup% +} +\newrobustcmd*\seesep{\txb}% +\NewDocumentCommand\seeref{s m}{% + \emph{\IfBooleanTF{#1}{\alsoname}{\seename}}\space#2% +} +\NewDocumentCommand\Process@Index{mmd==od()d||}{% + \ifboolexpr{% + bool {@tud@index}% + }{}{% + \IfBooleanTF{#1}{% + \IfValueT{#6}{% + \PackageWarning{tudscrmanual}% + {% + You've used the starred version. No index entry\MessageBreak% + for #2 is created. The\MessageBreak% + optional argument |#6| will be ignored% + }% + }% + }{% + \Process@@Index{#2}=#3=[#4](#5)|#6|% + }% + }% +} +\NewDocumentCommand\Process@@Index{mr==r[]r()r||}{% + \tud@idx@get\tud@idx@key\tud@idx@fmt\tud@idx@val{#1}=#2=[#3](#4)|#5|% + \tud@attr@get*\tud@lbl@tmp{#1}% + \IfValueT{#5}{% + \appto\tud@idx@fmt{|#5}% + }% + \index[\tud@lbl@tmp]{\tud@idx@val\tud@idx@key{}@\tud@idx@fmt}% +} +\newcommand*\PrintIndex{% + \begingroup% + \providecommand*\lettergroup[1]{% + \par\textbf{\textsf{##1}}\par% + \nopagebreak% + }% + \begingroup% + \let\lettergroup\@gobble% + \let\indexspace\relax% + \print@index% + \endgroup% + \print@index[options]% + \print@index[macros]% + \begingroup% + \let\lettergroup\@gobble% + \let\indexspace\relax% + \print@index[misc]% + \endgroup% + \print@index[files]% + \endgroup% +} +\newcommand*\tud@idx@skip{% + \ifnum\imki@columns>\@ne\relax\vspace{-\multicolsep}\fi% +} +\newcommand*\print@index[1][]{% + \pagebreak[3]% + \@tud@indextrue% + \indexprologue[\tud@idx@skip]{}% + \tud@if@strblank{#1}{\printindex}{\printindex[{#1}]}% + \ifnum\imki@columns>\@ne\relax\vspace{-\multicolsep}\fi% +} +\tud@newwrite\tud@write@a +\tud@newwrite\tud@write@b +\tud@newread\tud@read +\RequirePackage{listings} +\lstdefinestyle{tudscr}{% + basicstyle=\ttfamily\ifundef{\setstretch}{}{\setstretch{1}},% + keywordstyle=,% + columns=fullflexible,keepspaces,% + aboveskip=\smallskipamount,% + belowskip=\smallskipamount,% + language=[LaTeX]TeX,% + texcl,% +} +\RequirePackage{filemod} +\RequirePackage{ifplatform} +\newcommand*\tud@shellescape@wrn[1]{% + \PackageWarning{tudscrmanual}% + {% + File `#1' is missing!\MessageBreak% + You have to recompile this document with\MessageBreak% + activated shell escape option% + }% +} +\newcommand*\tud@latex@ext{pdflatex\space} +\iftutex + \ifxetex + \renewcommand*\tud@latex@ext{xelatex\space} + \else + \renewcommand*\tud@latex@ext{lualatex\space} + \fi +\fi +\newcommand*\Tutorial[1]{\href{#1.pdf}{\textsbn{#1.pdf}}} +\newcommand*\tud@tut@temp{} +\edef\tud@tut@temp{\@currname-temp} +\newcommand*\tud@tut@readtostream[2]{% + \begingroup% + \endlinechar=\m@ne\relax% + \openin\tud@read=#1% + \@tempswafalse% + \loop\unless\ifeof\tud@read% + \readline\tud@read to\tud@reserved% + \ifx\tud@reserved\@empty% + \ifeof\tud@read\@tempswafalse\fi% + \else% + \@tempswatrue% + \fi% + \if@tempswa% + \immediate\write#2{\expandonce\tud@reserved}% + \fi% + \ifx\tud@reserved\@empty\@tempswafalse\fi% + \repeat% + \closein\tud@read% + \endgroup% +} +\newcommand*\tud@tut@append[1]{% + \tud@if@strequal{#1}{preamble}{% + \tud@tut@readtostream{\tud@tut@temp.tex}{\tud@write@a}% + }{% + \tud@if@strequal{#1}{trunk}{% + \tud@tut@readtostream{\tud@tut@temp.tex}{\tud@write@b}% + }{% + \tud@tut@readtostream{\tud@tut@temp.tex}{#1}% + }% + }% +} +\TUDoptions{headingsvskip=-6ex} +\newcommand\StartTutorial[1][]{% + \immediate\openout\tud@write@a=\tud@tut@temp-preamble.tex\relax% + \immediate\openout\tud@write@b=\tud@tut@temp-trunk.tex\relax% + \immediate\write\tud@write@b{^^J\string\begin{document}^^J}% + \Hy@raisedlink{\hyperdef{\jobname}{tutorials:\jobname}{}}% + \faculty{}% + \maketitle% + \IfArgIsEmpty{#1}{}{% + \noindent% + \begin{abstract}% + \noindent#1% + \end{abstract}% + \medskip% + }% + \noindent\ignorespaces% +} +\newcommand\FinishTutorial[1][]{% + \immediate\write\tud@write@b{^^J\string\end{document}^^J}% + \immediate\closeout\tud@write@b% + \immediate\closeout\tud@write@a% + \immediate\openout\tud@write@a\jobname-example.tex\relax% + \tud@tut@readtostream{\tud@tut@temp-preamble.tex}{\tud@write@a}% + \tud@tut@readtostream{\tud@tut@temp-trunk.tex}{\tud@write@a}% + \immediate\closeout\tud@write@a% + \clearpage% + \addsec{Copy\nobreakspace\&\nobreakspace{}Paste}% + \thispagestyle{empty}% + \pagestyle{empty}% + Zum Ende des Dokumentes wird das vorgestellte Tutorial als \"ubersetzbarer + Quelltext ausgegeben, um dieses via Copy~\&~Paste verwenden und alle Punkte + nachvollziehen zu k\"onnen. Bitte beachten Sie, dass~-- abh\"angig vom + genutzten PDF-Betrachter~-- beim Kopieren die dargestellten Einz\"uge und + Abs\"atze m\"oglicherweise verloren gehen k\"onnen. Dies kann insbesondere + aufgrund fehlender Leerzeilen zu einem unvorteilhaften Ausgabeergebnis + f\"uhren. Alternativ finden Sie den folgenden \hologo{LaTeX}-Quelltext auch + im Pfad \Path{\PName{texmf}/source/latex/tudscr/doc/examples/} als Datei + \File{\jobname-example.tex}. \par #1% + % + \begin{quoting}[rightmargin=0pt]% + \lstinputlisting[style=tudscr]{\jobname-example.tex}% + \end{quoting}% + % + \ifnum\pdf@shellescape=\@ne\relax% + \ifwindows% + \def\@tempa{del}% + \else% + \def\@tempa{rm}% + \fi% + \ShellEscape{\@tempa\space\tud@tut@temp*.*}% + \fi% +} +\newcommand\Code@Preamble{} +\let\Code@Preamble\relax +\newcommand\CodePreamble[1]{% + \long\gdef\Code@Preamble{% + \hskip.5\leftmargin\textit{Die resultierende Ausgabe:}\space#1% + }% +} +\newcommand*\Code@Hook{} +\let\Code@Hook\relax +\newcommand*\CodeHook[1]{\gdef\Code@Hook{#1}} +\newcommand*\StandaloneFile{} +\let\StandaloneFile\relax +\newcommand*\StandaloneDate{} +\providecommand*\filec@ntents@silent{% + \let\@latex@warning@no@line\@gobble% +} +\newcommand*\tud@tut@pre{% + \csuse{filecontents*}[force,silent,nosearch]{\tud@tut@temp.tex}% +} +\newcommand*\tud@tut@post{% + \csuse{endfilecontents*}% +} +\newenvironment{Preamble}{\tud@tut@pre}{% + \tud@tut@post% + \tud@tut@append{preamble}% + \gdef\@tempa{% + \tud@tut@lst% + \global\let\Code@Preamble\relax% + }% + \aftergroup\@tempa% +} +\newenvironment{Preamble*}{\tud@tut@pre}{% + \tud@tut@post% + \tud@tut@append{preamble}% + \gdef\@tempa{% + \tud@tut@lst% + \tud@tut@input% + \global\let\Code@Preamble\relax% + }% + \aftergroup\@tempa% +} +\newenvironment{Preamble+}{\tud@tut@pre}{% + \tud@tut@post% + \tud@tut@append{preamble}% + \gdef\@tempa{% + \global\let\Code@Preamble\relax% + }% + \aftergroup\@tempa% +} +\newenvironment{Trunk}{\tud@tut@pre}{% + \tud@tut@post% + \tud@tut@append{trunk}% + \gdef\@tempa{% + \tud@tut@lst% + \global\let\Code@Preamble\relax% + }% + \aftergroup\@tempa% +} +\newenvironment{Trunk*}{\tud@tut@pre}{% + \tud@tut@post% + \tud@tut@append{trunk}% + \gdef\@tempa{% + \tud@tut@lst% + \tud@tut@input% + \global\let\Code@Preamble\relax% + }% + \aftergroup\@tempa% +} +\newenvironment{Trunk+}{\tud@tut@pre}{% + \tud@tut@post% + \tud@tut@append{trunk}% + \gdef\@tempa{% + \global\let\Code@Preamble\relax% + }% + \aftergroup\@tempa% +} +\newenvironment{Trunk!}[1]{% + \gdef\StandaloneFile{#1}% + \tud@tut@pre% +}{% + \tud@tut@post% + \tud@tut@append{trunk}% + \gdef\@tempa{% + \tud@tut@lst% + \tud@tut@pdf% + \global\let\Code@Preamble\relax% + }% + \aftergroup\@tempa% +} +\newenvironment{Hint}{\tud@tut@pre}{% + \tud@tut@post% + \gdef\@tempa{% + \tud@tut@lst% + \global\let\Code@Preamble\relax% + }% + \aftergroup\@tempa% +} +\newenvironment{Hint*}{\tud@tut@pre}{% + \tud@tut@post% + \gdef\@tempa{% + \tud@tut@lst% + \tud@tut@input% + \global\let\Code@Preamble\relax% + }% + \aftergroup\@tempa% +} +\newenvironment{Hint?}{\tud@tut@pre}{% + \tud@tut@post% + \gdef\@tempa{% + \InputCode% + \tud@tut@lst% + \global\let\Code@Preamble\relax% + }% + \aftergroup\@tempa% +} +\newenvironment{Hint!}[1]{% + \gdef\StandaloneFile{#1}% + \tud@tut@pre% +}{% + \tud@tut@post% + \gdef\@tempa{% + \tud@tut@lst% + \tud@tut@pdf% + \global\let\Code@Preamble\relax% + }% + \aftergroup\@tempa% +} +\newcommand*\tud@tut@lst{% + \begin{quoting}[rightmargin=0pt]% + \lstinputlisting[style=tudscr]{\tud@tut@temp.tex}% + \end{quoting}% +} +\newcommand*\tud@tut@input{% + \def\@tempa##1##2{% + ##1% + \begingroup% + ##2% + \setbox\@tempboxa\hbox{\vbox{##1}}% + \@tempdima=\ht\@tempboxa% + \setbox\@tempboxa\box\voidb@x% + \ifdim\@tempdima>\z@\relax% + \endgraf% + \vspace{\medskipamount}% + \noindent\ignorespaces% + \fi% + \endgroup% + }% + \@tempa{\Code@Preamble}{}% + \tud@setdim\@tempdimc{\leftskip}% + \tud@setdim\leftskip{\leftmargin}% + \@tempa{\input{\tud@tut@temp.tex}}{\Code@Hook}% + \global\let\Code@Hook\relax% + \tud@setdim\leftskip{\@tempdimc}% + \noindent\ignorespaces% +} +\newcommand*\InputCode{\input{\tud@tut@temp.tex}} +\IfFileExists{\tud@tut@temp-standalone.tex}{\@tempswafalse}{\@tempswatrue} +\if@tempswa% +\begin{filecontents*}{\tud@tut@temp-standalone.tex} +\documentclass[english,ngerman]{tudscrreprt} +\iftutex + \usepackage{fontspec} +\else + \usepackage[T1]{fontenc} + \usepackage[ngerman=ngerman-x-latest]{hyphsubst} +\fi +\usepackage{babel} +\usepackage{tudscrsupervisor} +\usepackage{isodate} +\usepackage{enumitem} +\setlist{noitemsep} +\begin{document} +\ifdefvoid{\StandaloneDate}{}{\date{\StandaloneDate}}% +\input{\jobname.tex}% +\end{document} +\end{filecontents*} +\fi +\newcommand*\tud@tut@pdf{% + \ifnum\pdf@shellescape=\@ne\relax% + \filemodCmp{\jobname-standalone-\StandaloneFile.pdf}{\jobname.tex}{}{% + \begingroup% + \let\printdate\@firstofone% + \edef\@tempa{\expandonce\@date}% + \def\@tempb{\today}% + \ifx\@tempa\@tempb\relax% + \let\@tempb\@empty% + \else% + \edef\@tempb{\unexpanded{\def\StandaloneDate}{\@date}}% + \fi% + \edef\@tempa{% + \tud@latex@ext -jobname=\tud@tut@temp\space% + "\noexpand\unexpanded{\expandonce\@tempb\noexpand\input}% + {\tud@tut@temp-standalone.tex}"% + }% + \ShellEscape{\@tempa^^J\@tempa^^J\@tempa}% + \ifwindows% + \def\@tempa{rename}% + \else% + \def\@tempa{mv}% + \fi% + \ShellEscape{% + \@tempa\space\tud@tut@temp.pdf\space% + \jobname-standalone-\StandaloneFile.pdf% + }% + \endgroup% + }% + \fi% + \global\let\StandaloneFile\relax% +} +\NewDocumentCommand\IncludeStandalone{o m !O{1}}{% + \IfFileExists{\jobname-standalone-#2.pdf}{% + \@tempcnta\z@% + \@for\@tempa:=#3\do{\advance\@tempcnta\@ne}% + \ifnum\@tempcnta>\z@\relax% + \tud@setdim\@tempdima{\textwidth}% + \divide\@tempdima\@tempcnta% + \advance\@tempcnta\m@ne% + \multiply\@tempcnta 2% + \tud@addtodim\@tempdima{-\@tempcnta\tabcolsep}% + \@for\@tempa:=#3\do{% + \advance\@tempcnta\m@ne% + \edef\@tempb{% + keepaspectratio,page=\@tempa,width=\the\@tempdima,% + \IfValueT{#1}{#1}% + }% + \fbox{% + \expandafter\includegraphics\expandafter[\@tempb]{% + \jobname-standalone-#2.pdf% + }% + }% + \ifnum\@tempcnta>\z@\relax\hfill\fi% + }% + \fi% + }{% + \tud@shellescape@wrn{\jobname-standalone-#2.pdf}% + }% +} +\AfterPackage*{pstricks}{% + \ifnum\pdf@shellescape=\@ne\relax% + \filemodCmp{\jobname-pics.pdf}{\jobname.tex}{% + \PassOptionsToPackage{off}{auto-pst-pdf}% + }{}% + \else% + \PassOptionsToPackage{off}{auto-pst-pdf}% + \fi% + \RequirePackage{auto-pst-pdf} + \ifnum\pdf@shellescape=\@ne\relax% + \edef\@tempa{\app@exe{\app@rm "*\app@suffix*"}}% + \@tempa% + \fi% +} +\PassOptionsToPackage{obeyFinal}{todonotes} +\ifdef{\tudprintflag}{% + \PassOptionsToPackage{color=white}{todonotes}% +}{% + \PassOptionsToPackage{colorinlistoftodos,color=HKS92!10}{todonotes}% +} +\RequirePackage{todonotes} +\AtEndPreamble{% + \ifdim\marginparwidth<2cm\relax% + \tud@setdim\marginparwidth{2cm}% + \fi% +} +\AfterPackage*{todonotes}{% + \newcommand*\tud@todo@type@use{}% + \NewDocumentCommand\ToDo{s o m !o}{% + \if@tud@todo% + \global\let\tud@currentHref\@currentHref% + \begingroup% + \let\tud@todo@type@use\@empty% + \IfValueTF{#2}{% + \IfArgIsEmpty{#2}{}{% + \let\tud@todo@type@use\relax% + \ifx\tud@todo@type@pos\relax% + \def\tud@res@a##1{% + \ifinlist{##1}{\tud@todo@type@use}{}{% + \ifinlist{##1}{\tud@todo@type@neg}{}{% + \listadd\tud@todo@type@use{##1}% + }% + }% + }% + \else% + \def\tud@res@a##1{% + \ifinlist{##1}{\tud@todo@type@use}{}{% + \ifinlist{##1}{\tud@todo@type@pos}{% + \listadd\tud@todo@type@use{##1}% + }{}% + }% + }% + \fi% + \forcsvlist\tud@res@a{#2}% + }% + }{}% + \ifx\tud@todo@type@use\relax\else% + \let\tud@res@a\@empty% + \let\tud@res@b\@empty% + \let\tud@res@c\@empty% + \ifinlist{rls}{\tud@todo@type@use}{% + \def\tud@res@a{color=HKS44!30,}% + \def\tud@res@b{color=HKS44!30,}% + \edef\tud@res@c{v\TUDScriptVersionNumber}% + }{% + \ifinlist{imp}{\tud@todo@type@use}{% + \def\tud@res@a{color=HKS57!50,}% + }{% + \ifinlist{doc}{\tud@todo@type@use}{% + \def\tud@res@a{color=HKS41!30,}% + }{}% + }% + \def\tud@res@c{ToDo}% + \IfValueT{#4}{% + \begingroup% + \tud@v@get\tud@res@a{#4}% + \def\tud@res@c##1.##2##3##4\@nil{##1##2##3}% + \edef\tud@res@b{\expandafter\tud@res@c\tud@res@a.000\@nil}% + \Ifnumber{\tud@res@b}{% + \edef\tud@res@c{% + \expandafter\tud@res@c\TUDScriptVersionNumber.000\@nil% + }% + \ifnum\tud@res@b>\tud@res@c\relax% + \def\tud@res@b{color=HKS92!30,}% + \else% + \ifnum\tud@res@b<\tud@res@c\relax% + \def\tud@res@b{color=HKS07!50,}% + \else% + \def\tud@res@b{color=HKS41!30,}% + \fi% + \fi% + \def\tud@res@c{v\tud@res@a}% + }{% + \let\tud@res@b\@empty% + \def\tud@res@c{#4}% + }% + \edef\tud@res@c{% + \endgroup% + \def\noexpand\tud@res@b{\tud@res@b}% + \def\noexpand\tud@res@c{\tud@res@c}% + }% + \tud@res@c% + }% + }% + \ifhmode\par\fi% + \let\par\relax% + \vskip\medskipamount% + \noindent% + \toks@\expandafter{\tud@res@b inline}% + \IfBooleanT{#1}{\addto@hook\toks@{,nolist}}% + \sbox\z@{% + \expandafter\todo\expandafter[\the\toks@]{\trim@spaces{#3}\strut}% + }\usebox\z@% + \renewcommand*\marginpar[2][]{% + \marginnote[{##1}]{##2}[\dimexpr-\ht\z@+1.6ex+1.75pt\relax]% + }% + \toks@\expandafter{\tud@res@a noline,nolist}% + \settowidth\marginparwidth{\tud@res@c}% + \tud@addtodim\marginparwidth{1.6ex+1pt}% + \expandafter\todo\expandafter[\the\toks@]{\tud@res@c\strut}% + \aftergroup\par\aftergroup\noindent% + \listremove{\tud@todo@type@use}{rls}% + \listremove{\tud@todo@type@use}{imp}% + \listremove{\tud@todo@type@use}{doc}% + \ifx\tud@todo@type@use\@empty\else% + \begingroup% + \let\tud@res@c\@empty% + \def\do##1{\appto\tud@res@c{,##1}}% + \dolistloop{\tud@todo@type@use}% + \edef\tud@res@c{% + \endgroup% + \edef\noexpand\tud@res@c{\expandafter\@gobble\tud@res@c}% + }% + \tud@res@c% + \ClassWarning{tudscrmanual}{% + Unknown key(s) `\string\ToDo[\tud@res@c]'% + }% + \fi% + \fi% + \endgroup% + \global\let\@currentHref\tud@currentHref% + \fi% + \ignorespaces% + }% + \newcommand*\ListOfToDo{\if@tud@todo\clearpage\listoftodos\fi}% +} +\TUD@UnwindPackage{todonotes}{% + \NewDocumentCommand\ToDo{s o m !o}{}% + \newcommand*\ListOfToDo{}% +} +\RequirePackage{textcomp} +\RequirePackage{setspace} +\setstretch{1.1} +\PassOptionsToPackage{vskip=\smallskipamount}{quoting} +\RequirePackage{quoting} +\RequirePackage{isodate} +\RequirePackage{hologo} +\newcommand*\notudscrartcl{% + F\"ur die Klassen \Class{tudscrartcl} sowie \Class{tudscrposter} ist diese + Option nicht verf\"ugbar.% +} +\NewDocumentCommand\scrguide{!s !O{\KOMAScript-Handbuch}}{% + \IfBooleanTF{#1}{\toks@{\href}}{\toks@{\hrfn}}% + \addto@hook\toks@{% + {http://mirrors.ctan.org/macros/latex/contrib/koma-script/doc/scrguide.pdf}% + }% + \addto@hook\toks@{{#2}}% + \the\toks@\xspace% +} +%%%% From File: tudscr-texindy.dtx (no git version info was found) +\edef\tud@res@a{\catcode`\noexpand\#=\the\catcode`\#\relax}% +\@makeother\# +\newcommand*\@hashchar{#} +\tud@res@a +\tud@newwrite\tud@xdy@write +\NewDocumentCommand\tud@xdy@create{s}{% + \begingroup% + \edef\tud@res@a{\@currname-\IfBooleanTF{#1}{gls}{ind}.xdy}% + \expandafter\IfFileExists\expandafter{\tud@res@a}{}{% + \IfBooleanTF{#1}{\@tud@res@swatrue}{\@tud@res@swafalse}% + \edef\tud@res@b{the\if@tud@res@swa glossary\else index\fi}% + \edef\tud@res@a{\noexpand\tud@xdy@@create{\tud@res@b}{\tud@res@a}}% + \tud@res@a% + }% + \endgroup% +} +\newcommand*\tud@xdy@@create[2]{% + \immediate\openout\tud@xdy@write=#2\relax% + \immediate\write\tud@xdy@write{(require "texindy.xdy")}% + \immediate\write\tud@xdy@write{% + (markup-index^^J% + \@spaces:open^^J% + "\string\begin{#1}^^J% + \space\space\string\providecommand*\string\seesep{/}\@percentchar^^J% + "^^J% Ende des Umgebungsbeginns + \@spaces:close "\string~n\string~n\string\end{#1}\string~n"^^J% + \@spaces:hierdepth 3^^J% + )^^J% + (define-location-class "arabic-page-numbers"^^J% + \@spaces("arabic-numbers")^^J% + \@spaces:min-range-length 2^^J% + )^^J% + (markup-range :sep "--")^^J% + (merge-rule :eregexp^^J% + \@spaces"\string\[(.*)\string\]"^^J% + \@spaces""^^J% + )^^J% + (markup-indexentry :depth 3^^J% + \@spaces:open\space\space"\string~n\string\subsubsubitem\space"^^J% + )^^J% + (markup-locclass-list^^J% + \@spaces:open\space\space"\string\,\string\dotfill\string\,"^^J% + \@spaces:close "\string\relax"^^J% + \@spaces:sep\space\space\space",\space"^^J% + )^^J% + (define-attributes (("!" "default") ("?" "default") ("default")))^^J% + (markup-attribute-group-list :sep ", ")^^J% + (markup-locref :attr "!"^^J% + \@spaces:open\space\space"\string\textbf{\string\hyperpage{"^^J% + \@spaces:close "}}"^^J% + )^^J% + (markup-locref :attr "?"^^J% + \@spaces:open\space\space"\string\textit{\string\hyperpage{"^^J% + \@spaces:close "}}"^^J% + )^^J% + (markup-locref :attr "default"^^J% + \@spaces:open\space\space"\string\hyperpage{"^^J% + \@spaces:close "}" ^^J% + )^^J% + (markup-crossref-list :class "see"^^J% + \@spaces:open\space\space"\string\cleversee\space"^^J% + \@spaces:sep\space\space\space"; "^^J% + \@spaces:close "\@backslashchar\@backslashchar"^^J% + )^^J% + (markup-crossref-list :class "seealso"^^J% + \@spaces:open\space\space"\string\cleverseealso\space"^^J% + \@spaces:sep\space\space\space"; "^^J% + \@spaces:close "\@backslashchar\@backslashchar"^^J% + )^^J% + (markup-crossref-layer-list :class "see"% + \@spaces\space:sep "\string\seesep{}"% + )^^J% + (markup-crossref-layer-list :class "seealso"% + \space:sep "\string\seesep{}"% + )^^J% + (define-location-class-order^^J% + \@spaces(^^J% + \@spaces"see" "seealso"^^J% + \@spaces"roman-page-numbers" "arabic-page-numbers" "alpha-page-numbers"^^J% + \@spaces"Roman-page-numbers" "Alpha-page-numbers"^^J% + \@spaces)^^J% + )^^J% + }% + \immediate\closeout\tud@xdy@write% +} +\tud@xdy@create +\endinput +%% +%% End of file `tudscrmanual.sty'. |