summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/latex/tudscr/tudscrdoc.cls
diff options
context:
space:
mode:
Diffstat (limited to 'Master/texmf-dist/tex/latex/tudscr/tudscrdoc.cls')
-rw-r--r--Master/texmf-dist/tex/latex/tudscr/tudscrdoc.cls1420
1 files changed, 925 insertions, 495 deletions
diff --git a/Master/texmf-dist/tex/latex/tudscr/tudscrdoc.cls b/Master/texmf-dist/tex/latex/tudscr/tudscrdoc.cls
index 6e69c932af9..e69668a06f4 100644
--- a/Master/texmf-dist/tex/latex/tudscr/tudscrdoc.cls
+++ b/Master/texmf-dist/tex/latex/tudscr/tudscrdoc.cls
@@ -5,41 +5,37 @@
%% The original source files were:
%%
%% tudscr-version.dtx (with options: `class,doc')
-%% tudscr-doc.dtx (with options: `class,doc')
+%% tudscr-base.dtx (with options: `class,doc')
+%% tudscr-doc.dtx (with options: `class,doc,option')
+%% tudscr-locale.dtx (with options: `class,doc')
%% tudscr-manual.dtx (with options: `class,doc')
-%% tudscr-misc.dtx (with options: `class,doc,xindy')
+%% tudscr-doc.dtx (with options: `class,doc,body')
+%% tudscr-texindy.dtx (with options: `class,doc')
%%
-%% ============================================================================
+%% TUD-Script -- Corporate Design of Technische Universitaet Dresden
%%
-%% TUD-Script
-%% Copyright (c) Falk Hanisch <tudscr@gmail.com>, 2012-2016
+%% 2017/01/26 v2.05g TUD-Script
%%
-%% ============================================================================
-%%
-%% This work may be distributed and/or modified under the conditions of the
-%% LaTeX Project Public License, version 1.3c of the license. 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 2005/12/01
-%% or later and of this work. This work has the LPPL maintenance status
-%% "author-maintained". The current maintainer and author of this work
-%% is Falk Hanisch.
+%% Copyright (C) Falk Hanisch <tudscr@gmail.com>, 2012-2017
%%
+%% This file was generated from file(s) of the TUD-Script bundle.
%% ----------------------------------------------------------------------------
%%
-%% Dieses Werk darf nach den Bedingungen der LaTeX Project Public Lizenz
-%% in der Version 1.3c, verteilt und/oder veraendert werden. Die aktuelle
-%% Version dieser Lizenz ist http://www.latex-project.org/lppl.txt und
-%% Version 1.3c oder spaeter ist Teil aller Verteilungen von LaTeX 2005/12/01
-%% oder spaeter und dieses Werks. Dieses Werk hat den LPPL-Verwaltungs-Status
-%% "author-maintained", wird somit allein durch den Autor verwaltet. Der
-%% aktuelle Verwalter und Autor dieses Werkes ist Falk Hanisch.
+%% This work may be distributed and/or modified under the conditions
+%% of the LaTeX Project Public License, version 1.3c of the license.
+%% 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 2005/12/01 or later and of this work.
+%%
+%% This work has the LPPL maintenance status "author-maintained".
%%
-%% ============================================================================
+%% The current maintainer and author of this work is Falk Hanisch.
%%
%%% From File: tudscr-version.dtx
\begingroup
\catcode`\@11\relax
- \ifx\TUD@Version\undefined
+ \ifx\TUD@Version\@undefined
\newcommand*\TUD@Version@Check[1]{%
\gdef\TUD@Version{#1}%
\gdef\TUDScriptVersion{#1}%
@@ -61,24 +57,24 @@
\fi%
}
\fi
- \TUD@Version@Check{2016/10/12 v2.05f TUD-Script}
+ \TUD@Version@Check{2017/01/26 v2.05g TUD-Script}
\endgroup
\NeedsTeXFormat{LaTeX2e}
\providecommand*\tudscrmail{tudscr@gmail.com}
\newcommand*\TUD@ProvidesClass[3]{%
\ProvidesClass{#1}[%
- 2016/10/12 v2.05f TUD-Script
+ 2017/01/26 v2.05g TUD-Script
^^J#3 (#2)%
]%
\newcommand*\TUD@Class@KOMA{#2}%
- \@ifundefined{TUD@Class@Parent}{%
+ \ifx\TUD@Class@Parent\@undefined%
\newcommand*\TUD@Class@Name{#1}%
\TUD@Class@Info%
- }{}%
+ \fi%
}
\providecommand*\TUD@Class@Info{%
\typeout{+---------------------------------------------------------------}%
- \typeout{| The Corporate Design of Technische Universitaet Dresden}%
+ \typeout{| Corporate Design of Technische Universitaet Dresden}%
\typeout{| Class: \TUD@Class@Name}%
\typeout{| Version: \TUD@Version}%
\typeout{| Author: Falk Hanisch (\tudscrmail)}%
@@ -95,16 +91,23 @@
}\csname xspace\endcsname%
}%
}{}
+%%% From File: tudscr-base.dtx
+\RequirePackage{scrlfile}[2013/12/19]
+\RequirePackage{etoolbox}[2011/01/03]
+\newcommand*\tud@reserved{}
+\newcommand*\eaddto@hook[2]{%
+ \expandafter\addto@hook\expandafter#1\expandafter{#2}%
+}
+\BeforePackage{tudscrbase}{%
+ \undef\tud@reserved%
+ \undef\eaddto@hook%
+}
+\newcommand*\TUD@UnwindPackage[2]{\AtEndPreamble{\@ifpackageloaded{#1}{}{#2}}}
+\BeforePackage{tudscrbase}{\undef\TUD@UnwindPackage}
%%% From File: tudscr-doc.dtx
-\RequirePackage{scrbase}[2013/12/19]%
-\newcommand*\saved@maketitle{}%
+\newcommand*\scr@maketitle{}%
\PassOptionsToClass{toc=left}{scrartcl}%
-\AfterClass{scrartcl}{\let\saved@maketitle\@maketitle}%
-\AfterClass{ltxdoc}{%
- \let\@maketitle\saved@maketitle%
- \codeline@indexfalse%
-}%
-\AfterPackage{inputenc}{\RequirePackage{csquotes}[2011/10/22]}%
+\AfterClass{scrartcl}{\let\scr@maketitle\@maketitle}%
\newcommand*\sd@saved@LoadClass{}
\let\sd@saved@LoadClass=\LoadClass
\renewcommand*\LoadClass[2][]{%
@@ -133,28 +136,260 @@
}
\LoadClassWithOptions{ltxdoc}
\setcounter{IndexColumns}{2}
+\setcounter{StandardModuleDepth}{2}
\DeclareOption{final}{\let\tudfinalflag\relax}
\DeclareOption{texindy}{\let\tudxdyflag\relax}
\DeclareOption{xindy}{\let\tudxdyflag\relax}
\DeclareOption{xdy}{\let\tudxdyflag\relax}
\ProcessOptions\relax
-\setlength\topmargin{-1in}
-\setlength\headheight{0pt}
-\setlength\headsep{30pt}
-\setlength\footskip{1.5\headsep}
-\setlength\textheight{\dimexpr\paperheight-2.5\headsep-\footskip\relax}
-\setlength\marginparwidth{150pt}
-\setlength\marginparsep{0pt}
-\setlength\oddsidemargin{\dimexpr\marginparwidth+\marginparsep-1in\relax}
-\setlength\textwidth{%
- \dimexpr\paperwidth-1in-\oddsidemargin-.5\headsep\relax%
-}
-\RequirePackage{tudscrbase}[\TUD@Version]
+%%% From File: tudscr-locale.dtx
+\newcommand*\tud@locale@define[1]{%
+ \providecommand*#1{%
+ \ClassError{\TUD@Class@Name}{%
+ `\string#1' not defined for language `\languagename'%
+ }{%
+ Currently the class `\TUD@Class@Name' only supports the\MessageBreak%
+ languages german and english an its dialects. You must\MessageBreak%
+ define single patterns by yourself, e.g.:\MessageBreak%
+ `\string\providecaptionname{\languagename}\string#1{<text>}'\MessageBreak%
+ You can send your definitions to \tudscrmail\space in\MessageBreak%
+ order to implement support for additional languages.%
+ }%
+ }%
+}
+\tud@locale@define{\tud@general@name}
+\tud@locale@define{\tud@implementation@name}
+\tud@locale@define{\tud@changes@name}
+\tud@locale@define{\tud@todo@name}
+\tud@locale@define{\tud@environment@name}
+\tud@locale@define{\tud@environments@name}
+\tud@locale@define{\tud@option@name}
+\tud@locale@define{\tud@options@name}
+\tud@locale@define{\tud@pagestyle@name}
+\tud@locale@define{\tud@pagestyles@name}
+\tud@locale@define{\tud@layer@name}
+\tud@locale@define{\tud@layers@name}
+\tud@locale@define{\tud@length@name}
+\tud@locale@define{\tud@lengths@name}
+\tud@locale@define{\tud@counter@name}
+\tud@locale@define{\tud@counters@name}
+\tud@locale@define{\tud@TUDcolor@name}
+\tud@locale@define{\tud@TUDcolors@name}
+\tud@locale@define{\tud@locale@name}
+\tud@locale@define{\tud@locales@name}
+\tud@locale@define{\tud@field@name}
+\tud@locale@define{\tud@fields@name}
+\tud@locale@define{\tud@KOMAfont@name}
+\tud@locale@define{\tud@KOMAfonts@name}
+\tud@locale@define{\tud@parameter@name}
+\tud@locale@define{\tud@parameters@name}
+\tud@locale@define{\tud@index@text}
+\newcommand*\tud@locale@german{%
+ \providecaptionname{%
+ german,ngerman,austrian,naustrian,swissgerman,nswissgerman%
+ }%
+}
+\tud@locale@german{\tud@general@name}{Allgemein}%
+\tud@locale@german{\tud@implementation@name}{Implementierung}%
+\tud@locale@german{\tud@changes@name}{\"Anderungsliste}
+\tud@locale@german{\tud@todo@name}{Liste der noch zu erledigenden Punkte}
+\tud@locale@german{\tud@environment@name}{Umg.}
+\tud@locale@german{\tud@environments@name}{Umgebungen}
+\tud@locale@german{\tud@option@name}{Opt.}
+\tud@locale@german{\tud@options@name}{Optionen}
+\tud@locale@german{\tud@pagestyle@name}{Seitenstil}
+\tud@locale@german{\tud@pagestyles@name}{Seitenstile}
+\tud@locale@german{\tud@layer@name}{Layer}
+\tud@locale@german{\tud@layers@name}{Layer (Seitenstilebenen)}
+\tud@locale@german{\tud@length@name}{L\"ange}
+\tud@locale@german{\tud@lengths@name}{L\"angen}
+\tud@locale@german{\tud@counter@name}{Z\"ahler}
+\tud@locale@german{\tud@counters@name}{Z\"ahler}
+\tud@locale@german{\tud@TUDcolor@name}{Farbe}
+\tud@locale@german{\tud@TUDcolors@name}{Farben}
+\tud@locale@german{\tud@locale@name}{Lok.}
+\tud@locale@german{\tud@locales@name}{Lokalisierungsvariablen}
+\tud@locale@german{\tud@field@name}{Feld}
+\tud@locale@german{\tud@fields@name}{Eingabefelder}
+\tud@locale@german{\tud@KOMAfont@name}{Schriftel.}
+\tud@locale@german{\tud@KOMAfonts@name}{Schriftelemente}
+\tud@locale@german{\tud@parameter@name}{Param.}
+\tud@locale@german{\tud@parameters@name}{Parameter}
+\tud@locale@german{\tud@index@text}{%
+ Kursive Zahlen entsprechen der Seite, auf welcher der korrespondierende
+ Eintrag beschrieben wird. Unterstrichene Zahlen verweisen auf die
+ \ifcodeline@index Codezeile der \fi Definition. Alle weiteren Eintr\"age sind
+ \ifcodeline@index Zeilennummern\else Seitenzahlen\fi, wo der jeweilige
+ Eintrag verwendet wird.
+}
+\newcommand*\tud@locale@english{%
+ \providecaptionname{%
+ american,australian,british,canadian,english,newzealand,UKenglish,USenglish%
+ }%
+}
+\tud@locale@english{\tud@general@name}{General}%
+\tud@locale@english{\tud@implementation@name}{Implementation}%
+\tud@locale@english{\tud@changes@name}{Change History}
+\tud@locale@english{\tud@todo@name}{List of ToDos}
+\tud@locale@english{\tud@environment@name}{env.}
+\tud@locale@english{\tud@environments@name}{environments}
+\tud@locale@english{\tud@option@name}{opt.}
+\tud@locale@english{\tud@options@name}{options}
+\tud@locale@english{\tud@pagestyle@name}{pagestyle}
+\tud@locale@english{\tud@pagestyles@name}{pagestyles}
+\tud@locale@english{\tud@layer@name}{layer}
+\tud@locale@english{\tud@layers@name}{layers (pagestyle)}
+\tud@locale@english{\tud@length@name}{length}
+\tud@locale@english{\tud@lengths@name}{lengths}
+\tud@locale@english{\tud@counter@name}{counter}
+\tud@locale@english{\tud@counters@name}{counters}
+\tud@locale@english{\tud@TUDcolor@name}{color}
+\tud@locale@english{\tud@TUDcolors@name}{colors}
+\tud@locale@english{\tud@locale@name}{locale}
+\tud@locale@english{\tud@locales@name}{locales}
+\tud@locale@english{\tud@field@name}{field}
+\tud@locale@english{\tud@fields@name}{input fields}
+\tud@locale@english{\tud@KOMAfont@name}{font}
+\tud@locale@english{\tud@KOMAfonts@name}{font elements}
+\tud@locale@english{\tud@parameter@name}{param.}
+\tud@locale@english{\tud@parameters@name}{parameters}
+\tud@locale@english{\tud@index@text}{%
+ Numbers written in italic refer to the page where the corresponding entry is
+ described. Numbers underlined refer to the
+ \ifcodeline@index code line of the \fi definition. All additional entries
+ refer to the \ifcodeline@index code lines \else pages \fi where the entry is
+ used.
+}
+%%% From File: tudscr-manual.dtx
+\RequirePackage{scrhack}[2014/02/27]
+\RequirePackage{xspace}[2009/10/20]
+\xspaceaddexceptions{"=}
+\newcommand*\vTUDScript{v\TUDScriptVersionNumber}
+\newcommand*\vKOMAScript{v\TUD@Version@KOMA}
+\newcommand*\tud@english[1]{#1}
+\AtBeginDocument{%
+ \providecommand*\iflanguageloaded[3]{#3}%
+ \iflanguageloaded{english}{%
+ \renewcommand*\tud@english[1]{\foreignlanguage{english}{#1}}%
+ }{}%
+}
+\RequirePackage{pdftexcmds}[2016/05/21]
+\PassOptionsToPackage{hyperindex=false,colorlinks,linkcolor=blue}{hyperref}
+\PassOptionsToPackage{open,openlevel=0}{bookmark}
+\AfterPackage*{hyperref}{%
+ \newcommand*\hypersource@def{}
+ \newcommand*\hypersourcedef[1]{%
+ \ifstr{#1}{\hypersource@def}{}{%
+ \Hy@raisedlink{\hyperdef{}{source:#1}{}}%
+ \xdef\hypersource@def{#1}%
+ }%
+ }%
+ \newcommand*\hypersource@ref@codeline[2][\@firstofone]{%
+ \begingroup%
+ \def\@tempa##1{\hyperref{}{}{source:##1}{#1{##1}}}%
+ \forcsvlist\@tempa{#2}%
+ \endgroup%
+ }%
+ \newcommand*\hypersource@ref@page[2][\@firstofone]{%
+ \begingroup%
+ \def\@tempa##1{\hyperlink{page.##1}{#1{##1}}}%
+ \forcsvlist\@tempa{#2}%
+ \endgroup%
+ }%
+ \renewcommand*\main[1]{%
+ \ifcodeline@index%
+ \hypersource@ref@codeline[\underline]{#1}%
+ \else%
+ \hypersource@ref@page[\underline]{#1}%
+ \fi%
+ }%
+ \renewcommand*\usage[1]{\hypersource@ref@page[\textit]{#1}}%
+}
+\TUD@UnwindPackage{hyperref}{%
+ \providecommand*\hypersetup[1]{}%
+ \providecommand*\href[3][]{#3}%
+ \providecommand*\phantomsection{}%
+ \providecommand*\texorpdfstring[2]{#1}%
+ \RequirePackage{url}[2013/09/16]%
+ \providecommand*\nolinkurl[1]{\url{#1}}%
+ \providecommand*\hypersourcedef[1]{}
+ \providecommand*\hypersource@def{}
+ \providecommand*\hypersource@ref@codeline[2][]{}
+ \providecommand*\hypersource@ref@page[2][]{}
+}
+\TUD@UnwindPackage{trimspaces}{\providecommand*\trim@spaces[1]{#1}}
+\newcommand*\hrfn[2]{%
+ \href{#1}{\trim@spaces{#2}}%
+ \footnote{%
+ \begingroup%
+ \def\_{_}%
+ \edef\@tempa{#1}%
+ \strut\expandafter\url\expandafter{\@tempa}%
+ \endgroup%
+ }%
+}
+\newrobustcmd*\mailto[1]{\href{mailto:#1}{\nolinkurl{#1}}}%
+\AfterPackage*{hyperref}{%
+ \patchcmd{\pdfstringdef}{\csname HyPsd@babel@}{%
+ \let\bbl@info\@gobble\csname HyPsd@babel@%
+ }{}{\tud@patch@wrn{pdfstringdef}}%
+}
+\AfterPackage*{inputenc}{\RequirePackage{csquotes}[2011/10/22]}
+\newcommand*\tud@replace[3]{%
+ \begingroup%
+ \toks@{\def\@tempa##1}%
+ \eaddto@hook\toks@{\detokenize{#2}}%
+ \addto@hook\toks@{##2\@nil{\@tempb{##1}{##2}}}%
+ \the\toks@%
+ \def\@tempb##1##2{%
+ \IfArgIsEmpty{##2}{%
+ \appto#1{##1}%
+ \let\@tempc\relax%
+ }{%
+ \appto#1{##1#3}%
+ \def\@tempc{\@tempa##2\@nil}%
+ }%
+ \@tempc%
+ }%
+ \toks@{\@tempa}%
+ \edef\@tempc{\expandafter\detokenize\expandafter{#1}}%
+ \eaddto@hook\toks@{\@tempc}%
+ \eaddto@hook\toks@{\detokenize{#2}\@nil}%
+ \def#1{}%
+ \the\toks@%
+ \edef\tud@reserved{%
+ \noexpand\endgroup%
+ \def\noexpand#1{#1}%
+ }%
+ \tud@reserved%
+}
+\newcommand*\CD{\tud@english{Corporate Design}\xspace}
+\newcommand*\CDs{\tud@english{Corporate Designs}\xspace}
+\newcommand*\TUD{Technische Universit\"at Dresden\xspace}
+\newcommand*\TnUD{Technischen Universit\"at Dresden\xspace}
+\newcommand*\TUDCD{\CD der \TnUD}
+\newcommand*\TUDCDs{\CDs der \TnUD}
+\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\DDC{DRESDEN-concept}%
+ \def\TUDScript{TUD-Script}%
+ \def\KOMAScript{KOMA-Script}%
+ }%
+}
+\newcommand*\Univers{\texorpdfstring{\textubn{Univers}}{Univers}\xspace}
+\newcommand*\DIN{\texorpdfstring{\textdbn{DIN~BOLD}}{DIN BOLD}\xspace}
+%%% From File: tudscr-doc.dtx
\RequirePackage{dox}[2010/12/16]
\@ifpackagelater{dox}{2010/12/17}{%
\ClassWarning{\TUD@Class@Name}{%
Package `dox' was updated so some patches\MessageBreak%
- are maybe outdated
+ are maybe outdated%
}%
}{}%
\CheckCommand\m@cro@[2]{%
@@ -192,211 +427,6 @@
\global\advance\c@CodelineNo\m@ne
\ignorespaces
}
-\CheckCommand*\changes@[3]{%
- \protected@edef\@tempa{%
- \noexpand\glossary{%
- #1\levelchar
- \ifx\saved@macroname\@empty
- \space
- \actualchar
- \generalname
- \else
- \saved@indexname
- \actualchar
- \string\verb\quotechar*%
- \verbatimchar\saved@macroname
- \verbatimchar
- \fi
- :\levelchar #3%
- }%
- }%
- \@tempa\endgroup\@esphack%
-}
-\ifdefined\tudxdyflag%
- \renewcommand*\changes@[3]{%
- \@tempswatrue%
- \ifblank{#1}{\@tempswafalse}{}%
- \ifblank{#3}{\@tempswafalse}{}%
- \if@tempswa%
- \protected@edef\@tempa{%
- \noexpand\glossary{%
- #1\levelchar%
- \ifx\saved@macroname\@empty%
- \generalname%
- \else%
- \implementationname%
- \fi%
- \levelchar
- \ifx\saved@macroname\@empty\else%
- \saved@indexname
- \ifx\saved@idxtype\@empty\else%
- \space\saved@idxtype
- \fi%
- \actualchar
- \string\verb\quotechar*%
- \verbatimchar\saved@macroname
- \verbatimchar%
- \ifx\saved@idxtype\@empty\else%
- \space(\saved@idxtype)%
- \fi%
- :\levelchar
- \fi
- #2 #3%
- \actualchar%
- #3% (#2)%
- }%
- }%
- \else%
- \let\@tempa\relax%
- \fi%
- \@tempa\endgroup\@esphack%
- }%
-\else%
- \renewcommand*\changes@[3]{%
- \protected@edef\@tempa{%
- \noexpand\glossary{%
- #1\levelchar
- \ifx\saved@macroname\@empty
- \quotechar!
- \actualchar
- \generalname
- \else
- \saved@indexname
- \actualchar
- \string\verb\quotechar*%
- \verbatimchar\saved@macroname
- \verbatimchar
- \fi
- :\levelchar #3%
- }%
- }%
- \@tempa\endgroup\@esphack%
- }%
-\fi%
-\CheckCommand*\@wrglossary[1]{%
- \protected@write\@glossaryfile{}%
- {\string\glossaryentry{#1}{\thepage}}%
- \endgroup
- \@esphack%
-}
-\def\filesep{?-}
-\def\@wrglossary#1{%
- \ifx\special@index\index%
- \@tempswafalse%
- \else%
- \@tempswatrue%
- \fi%
- \ifx\saved@macroname\@empty%
- \@tempswafalse%
- \fi%
- \if@tempswa%
- \global\advance\c@CodelineNo\@ne
- \protected@write\@glossaryfile{}{%
- \string\glossaryentry{#1}{\filesep\number\c@CodelineNo}%
- }
- \global\advance\c@CodelineNo\m@ne
- \else%
- \protected@write\@glossaryfile{}{\string\glossaryentry{#1}{\thepage}}
- \fi%
- \endgroup
- \@esphack%
-}
-\renewcommand*\generalname{Allgemein}
-\newcommand*\implementationname{Implementierung}
-\newcommand*\hypersourcedef[1]{}
-\newcommand*\hypersource@def{}
-\newcommand*\hypersourceref[1]{#1}
-\newcommand*\hypersource@ref[2][]{}
-\PassOptionsToPackage{hyperindex=false}{hyperref}
-\AfterPackage{hyperref}{%
- \renewcommand*\hypersourcedef[1]{%
- \ifstr{#1}{\hypersource@def}{}{%
- \Hy@raisedlink{\hyperdef{}{source:#1}{}}%
- \xdef\hypersource@def{#1}%
- }%
- }%
- \renewcommand*\hypersourceref[1]{\hypersource@ref{#1}}%
- \renewcommand*\main[1]{\hypersource@ref[\underline]{#1}}%
- \renewcommand*\hypersource@ref[2][\@firstofone]{%
- \begingroup%
- \def\@tempa##1-##2\relax{%
- \IfArgIsEmpty{##2}{%
- \hyperlink{page.\@tempc}{#1{\@tempc}}%
- }{%
- \hyperref{}{}{source:\@tempc}{#1{\@tempc}}%
- }%
- }%
- \def\@tempb##1{%
- \def\@tempc{##1}%
- \expandafter\@tempa##1-\relax%
- }%
- \forcsvlist\@tempb{#2}%
- \endgroup%
- }%
-}
-\CheckCommand*\@doxcreatespecialmainindex[3]{%
- \expandafter\def\csname SpecialMain#1Index\endcsname##1{%
- \@bsphack%
- \special@index{##1\actualchar{\string\ttfamily\space##1} (#2)
- \encapchar main}%
- \special@index{#3:\levelchar##1\actualchar{\string\ttfamily\space##1}
- \encapchar main}%
- \@esphack%
- }%
-}
-\patchcmd{\@doxcreatespecialmainindex}{\actualchar}{%
- \space(#2)\actualchar%
-}{}{\tud@patch@wrn{@doxcreatespecialmainindex}}
-\patchcmd{\@doxcreatespecialmainindex}{\@esphack}{%
- \@esphack\hypersourcedef{\filesep\number\c@CodelineNo}%
-}{}{\tud@patch@wrn{@doxcreatespecialmainindex}}
-\CheckCommand*\@doxcreatespecialmainmacrolikeindex[3]{%
- \expandafter\def\csname SpecialMain#1Index\endcsname##1{%
- \@SpecialIndexHelper@##1\@nil
- \@bsphack%
- \special@index{\@gtempa\actualchar
- \string\verb\quotechar*\verbatimchar\bslash\@gtempa\verbatimchar
- \space(#2)\encapchar main}%
- \special@index{#3:\levelchar\@gtempa\actualchar%
- \string\verb\quotechar*\verbatimchar\bslash\@gtempa\verbatimchar
- \encapchar main}%
- \@esphack%
- }%
-}
-\patchcmd{\@doxcreatespecialmainmacrolikeindex}{\actualchar}{%
- \space(#2)\actualchar%
-}{}{\tud@patch@wrn{@doxcreatespecialmainmacrolikeindex}}
-\patchcmd{\@doxcreatespecialmainmacrolikeindex}{\@esphack}{%
- \@esphack\hypersourcedef{\filesep\number\c@CodelineNo}%
-}{}{\tud@patch@wrn{@doxcreatespecialmainmacrolikeindex}}
-\CheckCommand*\@doxcreatespecialindex[3]{%
- \expandafter\def\csname Special#1Index\endcsname##1{%
- \@bsphack%
- \index{##1\actualchar{\protect\ttfamily##1} (#2)\encapchar usage}%
- \index{#3:\levelchar##1\actualchar{\protect\ttfamily##1}
- \encapchar usage}%
- \@esphack%
- }%
-}
-\patchcmd{\@doxcreatespecialindex}{\actualchar}{%
- \space(#2)\actualchar%
-}{}{\tud@patch@wrn{@doxcreatespecialindex}}
-\CheckCommand*\@doxcreatespecialmacrolikeindex[3]{%
- \expandafter\def\csname Special#1Index\endcsname##1{%
- \@SpecialIndexHelper@##1\@nil
- \@bsphack%
- \index{\@gtempa\actualchar
- \string\verb\quotechar*\verbatimchar\bslash\@gtempa\verbatimchar
- \space(#2)\encapchar usage}%
- \index{#3:\levelchar\@gtempa\actualchar
- \string\verb\quotechar*\verbatimchar\bslash\@gtempa\verbatimchar
- \encapchar usage}%
- \@esphack%
- }%
-}
-\patchcmd{\@doxcreatespecialmacrolikeindex}{\actualchar}{%
- \space(#2)\actualchar%
-}{}{\tud@patch@wrn{@doxcreatespecialmacrolikeindex}}
\CheckCommand\doxitem[4][]{%
\@nameuse{dox@macrolike\dox@macrolikedefault}%
\def\dox@idxtype{#3}%
@@ -432,66 +462,198 @@
\@doxcreatedescribe{#2}
\@doxcreateenv{#2}{#3}%
}
-\CheckCommand\doxitem[4][]{%
+\renewcommand*\doxitem[4][]{%
\@nameuse{dox@macrolike\dox@macrolikedefault}%
\def\dox@idxtype{#3}%
- \setkeys{dox}{#1}
- \@ifundefined{Print#2Name}{%
- \ifdox@macrolike
- \expandafter\def\csname Print#2Name\endcsname##1{%
- \strut\MacroFont\string ##1\ }
- \else
- \expandafter\def\csname Print#2Name\endcsname##1{%
- \strut\MacroFont ##1\ }
- \fi}{}
- \ifdox@macrolike
+ \setkeys{dox}{#1}%
+ \ifdox@macrolike%
\def\@doxexpr{\@doxcreatespecialmainmacrolikeindex{#2}}%
- \else
+ \else%
\def\@doxexpr{\@doxcreatespecialmainindex{#2}}%
- \fi
+ \fi%
\expandafter\@doxexpr\expandafter{\dox@idxtype}{#4}%
- \@ifundefined{PrintDescribe#2}{%
- \ifdox@macrolike
- \expandafter\def\csname PrintDescribe#2\endcsname##1{%
- \strut\MacroFont\string ##1\ }
- \else
- \expandafter\def\csname PrintDescribe#2\endcsname##1{%
- \strut\MacroFont ##1\ }
- \fi}{}
- \ifdox@macrolike
+ \ifdox@macrolike%
\def\@doxexpr{\@doxcreatespecialmacrolikeindex{#2}}%
- \else
+ \else%
\def\@doxexpr{\@doxcreatespecialindex{#2}}%
- \fi
+ \fi%
\expandafter\@doxexpr\expandafter{\dox@idxtype}{#4}%
- \@doxcreatedescribe{#2}
- \@doxcreateenv{#2}{#3}%
-}
-\CheckCommand*\@doxcreateenv[2]{%
- \expandafter\def\csname #2\endcsname{%
- \@ifnextchar[%]
- {\@doxenv{#1}}{\@doxenv{#1}[]}}
- \expandafter\let\csname end#2\endcsname\endtrivlist%
-}
-\pretocmd{\@doxcreateenv}{%
\ifdox@macrolike%
- \def\@doxexpr{\@doxcreatemacrolikeindexname{#1}}%
+ \def\@doxexpr{\@doxcreatemacrolikeprintname{#2}}%
+ \else%
+ \def\@doxexpr{\@doxcreateprintname{#2}}%
+ \fi%
+ \expandafter\@doxexpr\expandafter{\dox@idxtype}%
+ \ifdox@macrolike%
+ \def\@doxexpr{\@doxcreatemacrolikeindexname{#2}}%
\else%
- \def\@doxexpr{\@doxcreateindexname{#1}}%
+ \def\@doxexpr{\@doxcreateindexname{#2}}%
\fi%
\expandafter\@doxexpr\expandafter{\dox@idxtype}%
-}{}{\tud@patch@wrn{@doxcreateenv}}
-\newcommand*\saved@idxtype{}
+ \@doxcreatedescribe{#2}%
+ \@doxcreateenv{#2}{#3}%
+}
+\newrobustcmd*\index@type[1]{%
+ \begingroup%
+ \normalfont\scriptsize\space(#1)%
+ \endgroup%
+}
+\CheckCommand*\@doxcreatespecialmainmacrolikeindex[3]{%
+ \expandafter\def\csname SpecialMain#1Index\endcsname##1{%
+ \@SpecialIndexHelper@##1\@nil
+ \@bsphack%
+ \special@index{\@gtempa\actualchar
+ \string\verb\quotechar*\verbatimchar\bslash\@gtempa\verbatimchar
+ \space(#2)\encapchar main}%
+ \special@index{#3:\levelchar\@gtempa\actualchar%
+ \string\verb\quotechar*\verbatimchar\bslash\@gtempa\verbatimchar
+ \encapchar main}%
+ \@esphack%
+ }%
+}
+\renewcommand*\@doxcreatespecialmainmacrolikeindex[3]{%
+ \expandafter\def\csname SpecialMain#1Index\endcsname##1{%
+ \@SpecialIndexHelper@##1\@nil%
+ \@bsphack%
+ \protected@edef\tud@reserved{#2}%
+ \special@index{%
+ \@gtempa\space\expandonce\tud@reserved\actualchar%
+ \string\verb\quotechar*\verbatimchar\bslash\@gtempa\verbatimchar%
+ \index@type{\expandonce\tud@reserved}\encapchar main%
+ }%
+ \protected@edef\tud@reserved{#3}%
+ \special@index{%
+ \expandonce\tud@reserved:\levelchar\@gtempa\actualchar%
+ \string\verb\quotechar*\verbatimchar\bslash\@gtempa\verbatimchar%
+ \encapchar main%
+ }%
+ \@esphack%
+ \let\parameter@parent@changes\relax%
+ \hypersourcedef{\filesep\number\c@CodelineNo}%
+ }%
+}
+\CheckCommand*\@doxcreatespecialmainindex[3]{%
+ \expandafter\def\csname SpecialMain#1Index\endcsname##1{%
+ \@bsphack%
+ \special@index{##1\actualchar{\string\ttfamily\space##1} (#2)
+ \encapchar main}%
+ \special@index{#3:\levelchar##1\actualchar{\string\ttfamily\space##1}
+ \encapchar main}%
+ \@esphack%
+ }%
+}
+\renewcommand*\@doxcreatespecialmainindex[3]{%
+ \expandafter\def\csname SpecialMain#1Index\endcsname##1{%
+ \@bsphack%
+ \protected@edef\tud@reserved{#2}%
+ \special@index{%
+ ##1\space\expandonce\tud@reserved\actualchar%
+ {\string\ttfamily\space##1}\index@type{\expandonce\tud@reserved}%
+ \encapchar main%
+ }%
+ \protected@edef\tud@reserved{#3}%
+ \special@index{%
+ \expandonce\tud@reserved:\levelchar##1\actualchar%
+ {\string\ttfamily\space##1}\encapchar main%
+ }%
+ \@esphack%
+ \let\parameter@parent@changes\relax%
+ \hypersourcedef{\filesep\number\c@CodelineNo}%
+ }%
+}
+\CheckCommand*\@doxcreatespecialmacrolikeindex[3]{%
+ \expandafter\def\csname Special#1Index\endcsname##1{%
+ \@SpecialIndexHelper@##1\@nil
+ \@bsphack%
+ \index{\@gtempa\actualchar
+ \string\verb\quotechar*\verbatimchar\bslash\@gtempa\verbatimchar
+ \space(#2)\encapchar usage}%
+ \index{#3:\levelchar\@gtempa\actualchar
+ \string\verb\quotechar*\verbatimchar\bslash\@gtempa\verbatimchar
+ \encapchar usage}%
+ \@esphack%
+ }%
+}
+\renewcommand*\@doxcreatespecialmacrolikeindex[3]{%
+ \expandafter\def\csname Special#1Index\endcsname##1{%
+ \@SpecialIndexHelper@##1\@nil%
+ \@bsphack%
+ \protected@edef\tud@reserved{#2}%
+ \index{%
+ \@gtempa\space\expandonce\tud@reserved\actualchar%
+ \string\verb\quotechar*\verbatimchar\bslash\@gtempa\verbatimchar%
+ \index@type{\expandonce\tud@reserved}\encapchar usage%
+ }%
+ \protected@edef\tud@reserved{#3}%
+ \index{%
+ \expandonce\tud@reserved:\levelchar\@gtempa\actualchar%
+ \string\verb\quotechar*\verbatimchar\bslash\@gtempa\verbatimchar%
+ \encapchar usage%
+ }%
+ \@esphack%
+ }%
+}
+\CheckCommand*\@doxcreatespecialindex[3]{%
+ \expandafter\def\csname Special#1Index\endcsname##1{%
+ \@bsphack%
+ \index{##1\actualchar{\protect\ttfamily##1} (#2)\encapchar usage}%
+ \index{#3:\levelchar##1\actualchar{\protect\ttfamily##1}
+ \encapchar usage}%
+ \@esphack%
+ }%
+}
+\renewcommand*\@doxcreatespecialindex[3]{%
+ \expandafter\def\csname Special#1Index\endcsname##1{%
+ \@bsphack%
+ \protected@edef\tud@reserved{#2}%
+ \index{%
+ ##1\space\expandonce\tud@reserved\actualchar%
+ {\protect\ttfamily##1}\index@type{\expandonce\tud@reserved}%
+ \encapchar usage%
+ }%
+ \protected@edef\tud@reserved{#3}%
+ \index{%
+ \expandonce\tud@reserved:\levelchar##1\actualchar%
+ {\protect\ttfamily##1}\encapchar usage%
+ }%
+ \@esphack%
+ }%
+}
+\def\@doxcreatemacrolikeprintname#1#2{%
+ \@ifundefined{Print#1Name}{%
+ \expandafter\def\csname Print#1Name\endcsname##1{%
+ \MacroFont\string##1\index@type{#2}\strut\ %
+ }%
+ }{}%
+ \@ifundefined{PrintDescribe#1}{%
+ \expandafter\def\csname PrintDescribe#1\endcsname##1{%
+ \MacroFont\string##1\index@type{#2}\strut\ %
+ }%
+ }{}%
+}
+\def\@doxcreateprintname#1#2{%
+ \@ifundefined{Print#1Name}{%
+ \expandafter\def\csname Print#1Name\endcsname##1{%
+ \MacroFont##1\index@type{#2}\strut\ %
+ }%
+ }{}%
+ \@ifundefined{PrintDescribe#1}{%
+ \expandafter\def\csname PrintDescribe#1\endcsname##1{%
+ \MacroFont##1\index@type{#2}\strut\ %
+ }%
+ }{}%
+}
+\newcommand*\saved@indextype{}
\def\@doxcreatemacrolikeindexname#1#2{%
\expandafter\def\csname Set#1IndexName\endcsname##1{%
\edef\saved@indexname{\expandafter\@gobble##1}%
- \edef\saved@idxtype{#2}%
+ \protected@edef\saved@indextype{#2}%
}%
}
\def\@doxcreateindexname#1#2{%
\expandafter\def\csname Set#1IndexName\endcsname##1{%
\let\saved@indexname##1%
- \edef\saved@idxtype{#2}%
+ \protected@edef\saved@indextype{#2}%
}%
}
\CheckCommand\@@doxenv[2]{%
@@ -528,105 +690,354 @@
\patchcmd{\@@doxenv}{\ignorespaces}{%
\csname Set#1IndexName\endcsname{\saved@macroname}\ignorespaces%
}{}{\tud@patch@wrn{@@doxenv}}
-\def\SetMacroIndexName#1{%
- \edef\saved@indexname{\expandafter\@gobble#1}
- \let\saved@idxtype\@empty%
-}
-\def\SetEnvIndexName#1{%
- \let\saved@indexname#1%
- \edef\saved@idxtype{environment}%
+\newcommand*\SetMacroIndexName[1]{%
+ \edef\saved@indexname{\expandafter\@gobble#1}%
+ \let\saved@indextype\@empty%
}
\CheckCommand*\SpecialMainMacroIndex[1]{%
\SpecialMainIndex{#1}\nobreak%
\DoNotIndex{#1}%
}
\apptocmd{\SpecialMainMacroIndex}{%
+ \let\parameter@parent@changes\relax%
\hypersourcedef{\filesep\number\c@CodelineNo}%
}{}{\tud@patch@wrn{SpecialMainMacroIndex}}
-\doxitem[idxtype=Umgebung]{Env}{environment}{Umgebungen}
-\doxitem[idxtype=Option]{Option}{option}{Optionen}
-\doxitem[idxtype=Parameter]{Parameter}{parameter}{Parameter}
-\doxitem[idxtype=Seitenstil]{PageStyle}{pagestyle}{Seitenstile}
-\doxitem[idxtype=Layer]{Layer}{layer}{Layer (Seitenstilebenen)}
-\doxitem[macrolike,idxtype=L\noexpand\"ange]{Length}{length}{L\noexpand\"angen}
-\doxitem[idxtype=Z\noexpand\"ahler]{Counter}{counter}{Z\noexpand\"ahler}
-\doxitem[idxtype=Farbe]{Color}{color}{Farben}
-\doxitem[macrolike,idxtype=Lok.]{Locale}{locale}{Lokalisierungsvariablen}
-\doxitem[macrolike,idxtype=Feld]{Field}{field}{Eingabefelder}
-\doxitem[idxtype=Schriftelement]{Font}{KOMAfont}{Schriftelemente}
+\renewcommand*\tud@reserved[3][]{%
+ \doxitem[#1,idxtype=\csname tud@#3@name\endcsname]{#2}{#3}{%
+ \csname tud@#3s@name\endcsname%
+ }%
+}
+\undef\PrintEnvName
+\undef\PrintDescribeEnv
+\tud@reserved{Env}{environment}
+\tud@reserved{Option}{option}
+\tud@reserved{PageStyle}{pagestyle}
+\tud@reserved{Layer}{layer}
+\tud@reserved[macrolike]{Length}{length}
+\tud@reserved{Counter}{counter}
+\tud@reserved{Color}{TUDcolor}
+\tud@reserved[macrolike]{Locale}{locale}
+\tud@reserved[macrolike]{Field}{field}
+\tud@reserved{Font}{KOMAfont}
+\tud@reserved{Parameter}{parameter}
+\newcommand*\parameter@parent@changes{}
+\let\parameter@parent@changes\relax
+\newcommand*\parameter@parent@indexname{}
+\let\parameter@parent@indexname\relax
+\newcommand*\parameter@parent@indexformat{}
+\let\parameter@parent@indexformat\relax
+\apptocmd\SetMacroIndexName{%
+ \edef\parameter@parent@indexname{\expandafter\@gobble#1}%
+ \edef\parameter@parent@indexformat{%
+ \string\verb\quotechar*\verbatimchar#1\verbatimchar%
+ }%
+}{}{\tud@patch@wrn{SetMacroIndexName}}
+\apptocmd\SetEnvIndexName{%
+ \protected@edef\parameter@parent@indexname{#1\space\saved@indextype}%
+ \protected@edef\parameter@parent@indexformat{%
+ \string\verb\quotechar*\verbatimchar#1\verbatimchar%
+ \index@type{\saved@indextype}%
+ }%
+}{}{\tud@patch@wrn{SetEnvIndexName}}
+\renewcommand*\SpecialMainParameterIndex[1]{%
+ \ifx\parameter@parent@indexname\relax%
+ \ClassError{\TUD@Class@Name}{No previous macro or environment}{%
+ Since parameters can only be used for macros or\MessageBreak%
+ environments, you have to use `parameter' within\MessageBreak%
+ `macro' or `environment'.%
+ }%
+ \fi%
+ \protected@edef\parameter@parent@changes{%
+ \parameter@parent@indexname\actualchar%
+ \parameter@parent@indexformat:\levelchar%
+ }%
+ \@bsphack%
+ \special@index{%
+ \parameter@parent@indexname\actualchar%
+ \parameter@parent@indexformat\levelchar%
+ #1\space\tud@parameter@name\actualchar%
+ {\string\ttfamily\space#1}\index@type{\tud@parameter@name}%
+ \encapchar main%
+ }%
+ \special@index{%
+ \tud@parameters@name:\levelchar%
+ #1\space\parameter@parent@indexname%
+ \actualchar{\string\ttfamily\space#1}%
+ \noexpand\,--\noexpand\,\parameter@parent@indexformat%
+ \encapchar main%
+ }%
+ \@esphack%
+ \hypersourcedef{\filesep\number\c@CodelineNo}%
+}
+\CheckCommand*\changes@[3]{%
+ \protected@edef\@tempa{%
+ \noexpand\glossary{%
+ #1\levelchar
+ \ifx\saved@macroname\@empty
+ \space
+ \actualchar
+ \generalname
+ \else
+ \saved@indexname
+ \actualchar
+ \string\verb\quotechar*%
+ \verbatimchar\saved@macroname
+ \verbatimchar
+ \fi
+ :\levelchar #3%
+ }%
+ }%
+ \@tempa\endgroup\@esphack%
+}
+\ifdefined\tudxdyflag%
+ \renewcommand*\changes@[3]{%
+ \@tempswatrue%
+ \ifblank{#1}{\@tempswafalse}{}%
+ \ifblank{#3}{\@tempswafalse}{}%
+ \if@tempswa%
+ \ifx\parameter@parent@changes\relax%
+ \protected@edef\@tempb{%
+ \saved@indexname%
+ \ifx\saved@indextype\@empty\else%
+ \space\saved@indextype%
+ \fi%
+ \actualchar%
+ \string\verb\quotechar*%
+ \verbatimchar\saved@macroname%
+ \verbatimchar%
+ \ifx\saved@indextype\@empty\else%
+ \index@type{\saved@indextype}%
+ \fi%
+ :\levelchar%
+ }%
+ \else%
+ \protected@edef\@tempb{%
+ \parameter@parent@changes%
+ \saved@indexname%
+ \ifx\saved@indextype\@empty\else%
+ \space\saved@indextype%
+ \fi%
+ \actualchar%
+ {\noexpand\ttfamily\saved@macroname}%
+ \ifx\saved@indextype\@empty\else%
+ \index@type{\saved@indextype}%
+ \fi%
+ :\levelchar%
+ }%
+ \fi%
+ \protected@edef\@tempa{%
+ \noexpand\glossary{%
+ #1\levelchar%
+ \ifx\saved@macroname\@empty%
+ \tud@general@name%
+ \else%
+ \tud@implementation@name%
+ \fi%
+ \levelchar%
+ \ifx\saved@macroname\@empty\else%
+ \@tempb%
+ \fi%
+ #2 #3%
+ \actualchar%
+ #3% (#2)%
+ }%
+ }%
+ \else%
+ \let\@tempa\relax%
+ \fi%
+ \@tempa\endgroup\@esphack%
+ }%
+\else%
+ \renewcommand*\changes@[3]{%
+ \protected@edef\@tempa{%
+ \noexpand\glossary{%
+ #1\levelchar%
+ \ifx\saved@macroname\@empty%
+ \quotechar!%
+ \actualchar%
+ \tud@general@name%
+ :\levelchar%
+ \else%
+ \ifx\parameter@parent@changes\relax\else%
+ \parameter@parent@changes zzz\space%
+ \fi%
+ \saved@indexname%
+ \ifx\saved@indextype\@empty\else%
+ \space\saved@indextype%
+ \fi%
+ \actualchar%
+ \string\verb\quotechar*%
+ \verbatimchar\saved@macroname%
+ \verbatimchar%
+ \ifx\saved@indextype\@empty\else%
+ \index@type{\saved@indextype}%
+ \fi%
+ \ifx\parameter@parent@changes\relax%
+ :\levelchar%
+ \else%
+ :\space%
+ \fi%
+ \fi%
+ #3%
+ }%
+ }%
+ \@tempa\endgroup\@esphack%
+ }%
+\fi%
+\CheckCommand*\@wrglossary[1]{%
+ \protected@write\@glossaryfile{}%
+ {\string\glossaryentry{#1}{\thepage}}%
+ \endgroup
+ \@esphack%
+}
+\def\@wrglossary#1{%
+ \ifx\saved@macroname\@empty%
+ \protected@write\@glossaryfile{}{%
+ \string\glossaryentry{#1|usage}{\thepage}%
+ }%
+ \else%
+ \ifcodeline@index%
+ \global\advance\c@CodelineNo\@ne%
+ \protected@write\@glossaryfile{}{%
+ \string\glossaryentry{#1|main}{\filesep\number\c@CodelineNo}%
+ }%
+ \global\advance\c@CodelineNo\m@ne%
+ \else%
+ \protected@write\@glossaryfile{}{%
+ \string\glossaryentry{#1|main}{\thepage}%
+ }%
+ \fi%
+ \fi%
+ \endgroup%
+ \@esphack%
+}
+\newcommand*\tud@lst@subsub{}
+\newcommand*\tud@lst@subsubsub{}
+\newcommand*\subsubsubitem{\@idxitem\hspace*{35\p@}}
+\newcommand*\efil{\hfil\nopagebreak}%
+\newcommand*\tud@lst@def{%
+ \newcommand*\tud@lst@values{}%
+ \newif\if@tud@lst@multi%
+ \newcommand*\tud@lst@init{%
+ \let\tud@lst@values\relax%
+ \let\tud@lst@subsub\relax%
+ \@tud@lst@multifalse%
+ }%
+ \newcommand*\tud@lst@add[1]{%
+ \ifx\tud@lst@values\relax\else%
+ \@tud@lst@multitrue%
+ \def\tud@lst@subsub{\subsubitem}%
+ \fi%
+ \listadd\tud@lst@values{\tud@lst@subsub ##1}%
+ }%
+ \newcommand*\tud@lst@process{%
+ \if@tud@lst@multi%
+ \preto\tud@lst@values{\efill}%
+ \fi%
+ \forlistloop{}{\tud@lst@values}%
+ \tud@lst@init%
+ }%
+ \newcommand*\tud@lst@@values{}%
+ \newif\if@tud@lst@@multi%
+ \newcommand*\tud@lst@@init{%
+ \let\tud@lst@@values\relax%
+ \def\tud@lst@subsub{\subsubitem}%
+ \def\tud@lst@subsubsub{\space}%
+ \@tud@lst@@multifalse%
+ }%
+ \newcommand*\tud@lst@@add[1]{%
+ \@tud@lst@multitrue%
+ \ifx\tud@lst@@values\relax\else%
+ \@tud@lst@@multitrue%
+ \def\tud@lst@subsubsub{\subsubsubitem}%
+ \fi%
+ \listadd\tud@lst@@values{##1}%
+ }%
+ \newcommand*\tud@lst@@process{%
+ \if@tud@lst@@multi%
+ \appto\tud@lst@values{\efill}%
+ \fi%
+ \edef\tud@reserved####1{%
+ \noexpand\listadd\noexpand\tud@lst@values{%
+ \expandonce\tud@lst@subsubsub####1%
+ }%
+ }%
+ \forlistloop{\tud@reserved}{\tud@lst@@values}%
+ \tud@lst@@init%
+ }%
+}
\ifdefined\tudxdyflag
\newcommand*\tud@write@replace{}
\newwrite\tud@write@replace
\newcommand*\tud@read@replace{}
\newread\tud@read@replace
- \def\actualchar{<&1&>}
- \def\quotechar{<&2&>}
- \def\levelchar{<&3&>}
+ \def\actualchar{<|1|>}
+ \def\quotechar{<|2|>}
+ \def\levelchar{<|3|>}
\begingroup
- \endlinechar=-1\relax%
+ \endlinechar=\m@ne\relax%
\def\tud@reserved#1#2{%
- \immediate\openin\tud@read@replace=\jobname.#1\relax%
- \immediate\openout\tud@write@replace=\jobname-xdy.#1\relax%
- \@tempswafalse%
- \loop\unless\ifeof\tud@read@replace%
- \readline\tud@read@replace to\tud@line@replace%
- \tud@replace\tud@line@replace{"}{""}%
- \tud@replace\tud@line@replace{!}{"!}%
- \tud@replace\tud@line@replace{:}{":}%
- \tud@replace\tud@line@replace{@}{"@}%
- \tud@replace\tud@line@replace{\"@}{"\@backslashchar"@}%
- \expandafter\tud@replace\expandafter\tud@line@replace%
- \expandafter{\actualchar}{@}%
- \expandafter\tud@replace\expandafter\tud@line@replace%
- \expandafter{\quotechar}{"}%
- \expandafter\tud@replace\expandafter\tud@line@replace%
- \expandafter{\levelchar}{!}%
- \tud@replace\tud@line@replace{" @}{}%
- \ifeof\tud@read@replace\else%
- \immediate\write\tud@write@replace{%
- \unexpanded\expandafter{\tud@line@replace}%
- }%
- \@tempswatrue%
- \fi%
- \repeat%
- \immediate\closein\tud@read@replace%
- \immediate\closeout\tud@write@replace%
- \ifnum\pdfshellescape=\@ne\relax%
- \if@tempswa%
- \immediate\write18{%
- texindy\space%
- -o \jobname.#2\space%
- -M \@currname-#2.xdy\space%
- -L german-din\space%
- -t \jobname-#2.xlg\space%
- \jobname-xdy.#1
- }%
- \else%
- \immediate\openout\tud@write@replace=\jobname.#2\relax%
- \immediate\closeout\tud@write@replace%
+ \IfFileExists{\jobname.#1}{%
+ \immediate\openin\tud@read@replace=\jobname.#1\relax%
+ \immediate\openout\tud@write@replace=\jobname-xdy.#1\relax%
+ \@tempswafalse%
+ \loop\unless\ifeof\tud@read@replace%
+ \readline\tud@read@replace to\tud@line@replace%
+ \tud@replace\tud@line@replace{"}{""}%
+ \tud@replace\tud@line@replace{!}{"!}%
+ \tud@replace\tud@line@replace{:}{":}%
+ \tud@replace\tud@line@replace{@}{"@}%
+ \tud@replace\tud@line@replace{\"@}{"\@backslashchar"@}%
+ \expandafter\tud@replace\expandafter\tud@line@replace%
+ \expandafter{\actualchar}{@}%
+ \expandafter\tud@replace\expandafter\tud@line@replace%
+ \expandafter{\quotechar}{"}%
+ \expandafter\tud@replace\expandafter\tud@line@replace%
+ \expandafter{\levelchar}{!}%
+ \tud@replace\tud@line@replace{" @}{}%
+ \ifeof\tud@read@replace\else%
+ \immediate\write\tud@write@replace{%
+ \unexpanded\expandafter{\tud@line@replace}%
+ }%
+ \@tempswatrue%
+ \fi%
+ \repeat%
+ \immediate\closein\tud@read@replace%
+ \immediate\closeout\tud@write@replace%
+ \ifnum\pdf@shellescape=\@ne\relax%
+ \if@tempswa%
+ \immediate\write18{%
+ texindy\space%
+ -o \jobname.#2\space%
+ -M \@currname-#2.xdy\space%
+ -t \jobname-#2.xlg\space%
+ \jobname-xdy.#1%
+ }%
+ \else%
+ \immediate\openout\tud@write@replace=\jobname.#2\relax%
+ \immediate\closeout\tud@write@replace%
+ \fi%
\fi%
- \fi%
+ }{}%
}%
\tud@reserved{idx}{ind}%
\tud@reserved{glo}{gls}%
\endgroup
\else
- \ifnum\pdfshellescape=\@ne\relax%
- \immediate\write18{makeindex -s gglo.ist -o \jobname.gls \jobname.glo}%
- \immediate\write18{makeindex -s gind.ist -o \jobname.ind \jobname.idx}%
+ \ifnum\pdf@shellescape=\@ne\relax%
+ \immediate\write18{%
+ makeindex -s gglo.ist -t \jobname.glg -o \jobname.gls \jobname.glo%
+ }%
+ \immediate\write18{%
+ makeindex -s gind.ist -t \jobname.ilg -o \jobname.ind \jobname.idx%
+ }%
\fi%
\fi
-\IndexPrologue{%
- \addsec{Index}%
- Unterstrichene Zahlen, die gegebenenfalls mit einem Hyperlink versehen sind,
- verweisen auf die \ifcodeline@index Codezeile der \fi Definition, alle
- weiteren sind \ifcodeline@index Zeilennummern\else Seitenzahlen\fi, wo der
- jeweilige Eintrag verwendet wird.
-}
-\GlossaryPrologue{\addsec{\"Anderungsliste}}
+\IndexPrologue{\addsec{\indexname}\tud@index@text}
+\GlossaryPrologue{\addsec{\tud@changes@name}}
\DeclareNewTOC[%
type=todo,%
- listname={Liste der noch zu erledigenden Punkte},%
+ listname={\tud@todo@name},%
name=ToDo,%
tocentryindent=\z@,%
owner=\@currname,%
@@ -662,62 +1073,125 @@
\ifdefined\tudfinalflag\else%
\begingroup%
\csuse{phantomsection}%
- \def\tud@reserved{\ifxblank{#2}{ToDo: ??}{ToDo: #2}}%
+ \IfArgIsEmpty{#2}{%
+ \def\tud@reserved{??}%
+ }{%
+ \def\tud@reserved{#2}%
+ }%
\endgraf%
\hfuzz0.8pt%
- \leavevmode\marginpar{\raggedleft\fbox{\tud@reserved\strut}}%
+ \leavevmode\marginpar{\raggedleft\fbox{ToDo:\space\tud@reserved\strut}}%
\fbox{\parbox{\dimexpr\textwidth-2\fboxsep\relax}{#1\strut}}%
\endgraf%
- \global\advance\c@CodelineNo\@ne
- \addxcontentsline{tdo}{todo}{#2:~#1~(\filesep\number\c@CodelineNo)}%
- \global\advance\c@CodelineNo\m@ne
+ \let\@tempa\@empty%
+ \ifdefined\currentfile%
+ \def\@tempa{\,--\,\texttt{\currentfile}}%
+ \fi%
+ \addxcontentsline{tdo}{todo}{\tud@reserved\@tempa:\space#1}%
\endgroup%
\fi%
}
-\AtBeginDocument{%
- \@ifpackageloaded{etoolbox}{}{%
- \providecommand*\newrobustcmd{\DeclareRobustCommand}%
- }%
- \newrobustcmd*\app[1]{\mbox{\textsl{\textbf{#1}}}}
- \newrobustcmd*\cls[1]{\mbox{\textsf{\textbf{#1}}}}
- \newrobustcmd*\pkg[1]{\mbox{\textsf{\textbf{#1}}}}
- \newrobustcmd*\opt[1]{\mbox{\texttt{#1}}}
- \newrobustcmd*\val[1]{\mbox{\texttt{#1}}}
- \newrobustcmd*\pgs[1]{\mbox{\texttt{#1}}}
- \newrobustcmd*\env[1]{\mbox{\texttt{#1}}}
- \newrobustcmd*\file[1]{\mbox{\texttt{#1}}}
- \@ifpackageloaded{hyperref}{%
- \pdfstringdefDisableCommands{%
- \def\TUDScript{TUD-Script}%
- \let\cls\@firstofone%
- \let\pkg\@firstofone%
+\newcommand*\calculatearea{%
+ \setlength\topmargin{-1in}%
+ \setlength\headheight{0pt}%
+ \setlength\headsep{3em}%
+ \setlength\footskip{1.5\headsep}%
+ \setlength\textheight{\dimexpr\paperheight-2.5\headsep-\footskip\relax}%
+ \settowidth\MacroIndent{\rmfamily\scriptsize 0000\ }%
+ \begingroup%
+ \MacroFont\selectfont%
+ \settowidth\@tempdima{\space}%
+ \setlength\@tempdima{80\@tempdima}%
+ \addtolength\@tempdima{\MacroIndent}%
+ \edef\@tempa{%
+ \endgroup%
+ \noexpand\setlength\noexpand\textwidth{\the\@tempdima}%
}%
- }{%
- \RequirePackage{url}[2013/09/16]%
- \providecommand*\hypersetup[1]{}%
- \providecommand*\phantomsection{}%
- \providecommand*\texorpdfstring[2]{#1}%
+ \@tempa%
+ \setlength\columnsep{1em}%
+ \setlength\marginparsep{1em}%
+ \setlength\marginparwidth{%
+ \dimexpr\paperwidth-\textwidth-2\marginparsep\relax%
}%
- \@ifpackageloaded{babel}{}{%
- \ClassWarning{\TUD@Class@Name}{Package `babel' not loaded}%
- \let\selectlanguage\@gobble%
- \let\glqq\relax%
- \let\grqq\relax%
+ \setlength\oddsidemargin{\dimexpr\marginparwidth+\marginparsep-1in\relax}%
+}
+\AtEndPreamble{\calculatearea}
+\AfterPackage{tudscrfonts}{%
+ \RequirePackage{mweights}[2013/07/21]%
+ \CheckCommand*\MacroFont{%
+ \fontencoding\encodingdefault%
+ \fontfamily\ttdefault%
+ \fontseries\mddefault%
+ \fontshape\updefault%
+ \small%
}%
- \@ifpackageloaded{csquotes}{}{%
- \ClassWarning{\TUD@Class@Name}{Package `csquotes' not loaded}%
- \providecommand\enquote[1]{\glqq#1\grqq{}}%
+ \renewcommand*\MacroFont{%
+ \fontencoding\encodingdefault%
+ \fontfamily\ttdefault%
+ \fontseries\mdseries@tt%
+ \fontshape\updefault%
+ \small%
+ }%
+ \CheckCommand*\AltMacroFont{%
+ \fontencoding\encodingdefault%
+ \fontfamily\ttdefault%
+ \fontseries\mddefault%
+ \fontshape\sldefault%
+ \small%
}%
- \@ifpackageloaded{tudscrfonts}{%
- \RequirePackage{mweights}[2013/07/21]%
- \ifnum\tud@cdfont@num>\z@\relax% true/heavy
- \def\mddefault{m}%
+ \renewcommand*\AltMacroFont{%
+ \fontencoding\encodingdefault%
+ \fontfamily\ttdefault%
+ \fontseries\mdseries@tt%
+ \fontshape\sldefault%
+ \small%
+ }%
+ \newcommand*\saved@calculatearea{}%
+ \let\saved@calculatearea\calculatearea%
+ \let\calculatearea\relax%
+ \appto\tud@font@set{%
+ \ifcase\tud@cdfont@num\relax\else% true/heavy
\def\mdseries@tt{m}%
\renewcommand*\@pnumwidth{1.7em}%
\renewcommand*\@tocrmarg{2.7em}%
\fi%
- \setlength\columnsep{10pt}%
- }{%
+ \saved@calculatearea%
+ }%
+}
+\newrobustcmd*\app[1]{\mbox{\textsl{\textbf{#1}}}}
+\newrobustcmd*\cls[1]{\mbox{\textsf{\textbf{#1}}}}
+\newrobustcmd*\pkg[1]{\mbox{\textsf{\textbf{#1}}}}
+\newrobustcmd*\opt[1]{\mbox{\texttt{#1}}}
+\newrobustcmd*\val[1]{\mbox{\texttt{#1}}}
+\newrobustcmd*\pgs[1]{\mbox{\texttt{#1}}}
+\newrobustcmd*\env[1]{\mbox{\texttt{#1}}}
+\newrobustcmd*\prm[1]{\mbox{\texttt{#1}}}
+\newrobustcmd*\file[1]{\mbox{\texttt{#1}}}
+\AfterPackage{hyperref}{%
+ \pdfstringdefDisableCommands{%
+ \let\app\@firstofone%
+ \let\cls\@firstofone%
+ \let\pkg\@firstofone%
+ \let\opt\@firstofone%
+ \let\val\@firstofone%
+ \let\pgs\@firstofone%
+ \let\env\@firstofone%
+ \let\prm\@firstofone%
+ \let\file\@firstofone%
+ }%
+}
+\AtEndPreamble{%
+ \@ifpackageloaded{babel}{}{%
+ \ClassWarning{\TUD@Class@Name}{Package `babel' not loaded}%
+ \providecommand*\selectlanguage[1]{}%
+ \providecommand*\glqq{\relax}%
+ \providecommand*\grqq{\relax}%
+ }%
+ \@ifpackageloaded{csquotes}{}{%
+ \ClassWarning{\TUD@Class@Name}{Package `csquotes' not loaded}%
+ \providecommand\enquote[1]{\emph{#1}}%
+ }%
+ \@ifpackageloaded{tudscrfonts}{}{%
\RequirePackage{lmodern}[2009/10/30]%
\providecommand*\ifdin[2]{#2}%
\providecommand*\textuln[1]{\textsf{#1}}%
@@ -730,69 +1204,11 @@
\providecommand*\textuxs[1]{\textubs{#1}}%
\providecommand*\textdbn[1]{\textubn{#1}}%
}%
- \title{%
- \file{\filename}\thanks{%
- Dies ist Version \fileversion\nobreakspace{}von Datei \file{\filename}.%
- }%
- }%
- \author{Falk Hanisch\thanks{\tudscrmail}}%
- \date{\filedate}%
-}
-%%% From File: tudscr-manual.dtx
-\RequirePackage{scrhack}[2014/02/27]
-\RequirePackage{xspace}[2009/10/20]
-\xspaceaddexceptions{"=}
-\newcommand*\vTUDScript{v\TUDScriptVersionNumber}
-\newcommand*\vKOMAScript{v\TUD@Version@KOMA}
-\newcommand*\tud@english[1]{#1}
-\AtBeginDocument{%
- \providecommand*\iflanguageloaded[3]{#3}%
- \iflanguageloaded{english}{%
- \renewcommand*\tud@english[1]{\foreignlanguage{english}{#1}}%
- }{}%
}
-\newcommand*\CD{\tud@english{Corporate Design}\xspace}
-\newcommand*\CDs{\tud@english{Corporate Designs}\xspace}
-\newcommand*\TUD{Technische Universit\"at Dresden\xspace}
-\newcommand*\TnUD{Technischen Universit\"at Dresden\xspace}
-\newcommand*\TUDCD{\CD der \TnUD}
-\newcommand*\TUDCDs{\CDs der \TnUD}
-\AtBeginDocument{%
-\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%
-}
-}
-\newcommand*\Univers{\texorpdfstring{\textubn{Univers}}{Univers}\xspace}
-\newcommand*\DIN{\texorpdfstring{\textdbn{DIN~BOLD}}{DIN BOLD}\xspace}
-%%% From File: tudscr-misc.dtx
+%%% From File: tudscr-texindy.dtx
\catcode`\#=12
\newcommand*\@hashchar{#}
\catcode`\#=6
-\newcommand*\tud@lst@def{%
- \newcommand*\tud@lst@values{}%
- \newif\if@tud@lst@multi%
- \newcommand*\tud@lst@init{%
- \let\tud@lst@values\relax%
- \@tud@lst@multifalse%
- }%
- \newcommand*\tud@lst@add[1]{%
- \ifx\tud@lst@values\relax\else%
- \@tud@lst@multitrue%
- \fi%
- \listadd\tud@lst@values{##1}%
- }%
- \newcommand*\tud@lst@process{%
- \def\tud@reserved{}%
- \if@tud@lst@multi%
- \def\tud@reserved{\subsubitem}%
- \efill%
- \fi%
- \forlistloop\tud@reserved{\tud@lst@values}%
- }%
-}
\begingroup
\ifdef{\tudxdyflag}{%
\newcommand*\tud@write@xdy{}
@@ -833,16 +1249,25 @@
\space\space\string\tud@lst@def\@percentchar%
}%
\fi%
+ \if@tud@xdy@glo%
+ \write\tud@write@xdy{%
+ "^^J%
+ \space\space:close "\string~n\string~n\string\end{#1}\string~n"^^J%
+ \space\space:hierdepth 4^^J%
+ )%
+ }%
+ \else%
\write\tud@write@xdy{%
"^^J%
\space\space:close "\string~n\string~n\string\end{#1}\string~n"^^J%
\space\space:hierdepth 3^^J%
)%
}%
+ \fi%
\write\tud@write@xdy{%
(define-location-class^^J%
\space\space"arabic-page-numbers" ("arabic-numbers")%
- \space:min-range-length 1^^J%
+ \space:min-range-length 2^^J%
)^^J%
(define-alphabet "AlphaExtended"^^J%
\space(^^J%
@@ -854,25 +1279,12 @@
\space)^^J%
)^^J%
(define-location-class^^J%
- \space\space"part" ("AlphaExtended" :sep "-" "arabic-numbers")%
- \space:min-range-length 1^^J%
+ \space\space"codeline" ("AlphaExtended" :sep "-" "arabic-numbers")%
+ \space:min-range-length 2^^J%
)^^J%
+ (define-location-class-order ("arabic-page-numbers" "codeline"))^^J%
(markup-range :sep "--")%
}%
- \if@tud@xdy@glo%
- \write\tud@write@xdy{%
- (markup-locclass-list%
- \space:open "\string\pfill\string\hypersourceref{" :close "}\string\relax"%
- )%
- }%
- \else%
- \write\tud@write@xdy{%
- (markup-locclass-list%
- \space:open "\string\pfill\space"%
- \space:close "\string\relax"%
- )%
- }%
- \fi%
\write\tud@write@xdy{%
(merge-rule "\@backslashchar[(.*)\@backslashchar]" "" :eregexp)%
^^J%
@@ -900,7 +1312,7 @@
\space"(.*?)(@)([\string^@~n]*)"%
\space"\string\1\string~b\string\3"%
\space:eregexp :again%
- )
+ )%
}%
\if@tud@xdy@glo%
\write\tud@write@xdy{%
@@ -924,32 +1336,50 @@
:open "\string~n\@spaces\string\subitem\space" :depth 2%
)^^J%
(markup-indexentry-list^^J%
- \space\space:open \space"\string\tud@lst@init"^^J%
+ \space\space:open\space\space"\string\tud@lst@init"^^J%
\space\space:close "\string~n \@spaces\space\string\tud@lst@process"^^J%
\space\space:depth 3^^J%
)^^J%
(markup-indexentry^^J%
- \space\space:open \space"\string~n\@spaces\space\string\tud@lst@add{"^^J%
+ \space\space:open%
+ \space\space"\string~n\@spaces\space\space\string\tud@lst@add{"^^J%
\space\space:close "}"^^J%
\space\space:depth 3^^J%
+ )^^J%
+ (markup-indexentry-list^^J%
+ \space\space:close "\string~n\@spaces\@spaces\string\tud@lst@@process{"^^J%
+ \space\space:open\space\space"}\string\tud@lst@@init"^^J%
+ \space\space:depth 4^^J%
+ )^^J%
+ (markup-indexentry^^J%
+ \space\space:open%
+ \space\space"\string~n\@spaces\@spaces\string\tud@lst@@add{"^^J%
+ \space\space:close "}"^^J%
+ \space\space:depth 4^^J%
)%
}%
\else%
\write\tud@write@xdy{%
- (markup-indexentry-list :open "\string\efill" :depth 1)%
+ (markup-indexentry-list :open "\string\efil" :depth 1)%
}%
\fi%
- \if@tud@xdy@glo\else%
\write\tud@write@xdy{%
- (define-attributes (("main" "usage" "default")))^^J%
- (markup-locref :attr "main"%
- \space\space:open "\string\main{"\space\space:close "}"%
- )^^J%
+ (markup-locclass-list%
+ \space:open "\string\pfill\space"%
+ \space:close "\string\relax"%
+ \space:sep ",\space"%
+ )%
+ }%
+ \write\tud@write@xdy{%
+ (markup-attribute-group-list :sep ", ")^^J%
+ (define-attributes (("usage") ("main") ("default")))^^J%
(markup-locref :attr "usage"%
\space:open "\string\usage{"\space:close "}"%
+ )^^J%
+ (markup-locref :attr "main"%
+ \space\space:open "\string\main{"\space\space:close "}"%
)%
}%
- \fi%
\closeout\tud@write@xdy%
}%
}