summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/latex/dtk/dtk-full.clo
diff options
context:
space:
mode:
Diffstat (limited to 'Master/texmf-dist/tex/latex/dtk/dtk-full.clo')
-rw-r--r--Master/texmf-dist/tex/latex/dtk/dtk-full.clo147
1 files changed, 118 insertions, 29 deletions
diff --git a/Master/texmf-dist/tex/latex/dtk/dtk-full.clo b/Master/texmf-dist/tex/latex/dtk/dtk-full.clo
index e9f94ab8655..2ca4a19f800 100644
--- a/Master/texmf-dist/tex/latex/dtk/dtk-full.clo
+++ b/Master/texmf-dist/tex/latex/dtk/dtk-full.clo
@@ -14,7 +14,7 @@
%% version 2005/12/01 or later.
\ProvidesFile{dtk-full.clo}%
- [2017/05/30 v0.1i dtk class options for full mode (RN)]
+ [2019/01/31 v0.1l dtk class options for full mode (RN)]
\@ifclasslater{scrbook}{2015/09/29}{}{%
\ClassError{dtk2}{%
@@ -28,7 +28,7 @@
\edef\pdfcreationdate{\pdfcreationdate}
% weil datetime2 inkompatible zu LuaTeX 0.95/luatex85,
% standardmäßig ungünstige Defionition in luatex85
-\usepackage[showzone=false]{datetime2}
+\RequirePackage[showzone=false]{datetime2}
\newcommand*\AutorenListenName{Autoren/Organisatoren} % auch »Stichwortverzeichnis«?
\newcommand*\DTK@fancyJournalname{%
@@ -79,28 +79,58 @@
\g@addto@macro\DTK@embedded@enddocumenthook}
\newcommand*\DTK@local@inputname{}
\newcommand*\DTK@eat@version[1][]{\ignorespaces}
-\newcommand*\DTK@usepackage[2][]{% TODO: Besser \DTK@eat@version
+\newcommand*\DTK@usepackage[2][]{%
\@ifnextchar[%]
{\DTK@@usepackage{#1}{#2}}%
{\DTK@@usepackage{#1}{#2}[]}%
}%
+\newcommand*\DTK@RequirePackage[2][]{%
+ \@ifnextchar[%]
+ {\DTK@@RequirePackage{#1}{#2}}%
+ {\DTK@@RequirePackage{#1}{#2}[]}%
+}%
\newcommand*\DTK@@usepackage{}
+\newcommand*\DTK@@RequirePackage{}
\newcommand*\DTK@documentclass[2][]{%
\DTK@eat@version
}
+\newcounter{artcounter}
+
\ifDTKrecord
% Testlauf zum Aufsammeln von Paket- und bib-Dateinamen
- \@ifdefinable\user@packages{%
- \newwrite\user@packages
- \immediate\openout\user@packages dtk-userpackages.tex\relax
- \immediate\write\user@packages{\@percentchar\space *** \DTMnow\space ***}%
- \AtEndDocument{\immediate\closeout\user@packages\relax}%
+ \@ifdefinable\user@usepackages{%
+ \newwrite\user@usepackages
+ \immediate\openout\user@usepackages dtk-userpackages.tex\relax
+ \immediate\write\user@usepackages{%
+ \@percentchar\space *** \DTMnow\space ***}%
+ \AtEndDocument{\immediate\closeout\user@usepackages\relax}%
+ }
+ \@ifdefinable\user@requirepackages{%
+ \newwrite\user@requirepackages
+ \immediate\openout\user@requirepackages dtk-requirepackages.tex\relax
+ \immediate\write\user@requirepackages{%
+ \@percentchar\space *** \DTMnow\space ***}%
+ \AtEndDocument{\immediate\closeout\user@requirepackages\relax}%
+ }
+ \@ifdefinable\user@bibs{%
+ \newwrite\user@bibs
+ \immediate\openout\user@bibs dtk-userbibs.tex\relax
+ \immediate\write\user@bibs{%
+ \@percentchar\space *** \DTMnow\space ***}%
+ \AtEndDocument{\immediate\closeout\user@bibs\relax}%
}
\renewcommand*\printbibliography[1][]{}%
\newcommand*\DTK@addbibresource[2][]{%
- \immediate\write\user@packages{%
- \string\addbibresource[datatype=bibtex,label=DTK\the\c@refsection]{#2}%
+ \@ifundefined{BIBS:\the\c@artcounter}{%
+ \def\DTK@tempa{}%
+ \expandafter\let\csname BIBS:\the\c@artcounter\endcsname\@empty
+ }{\def\DTK@tempa{,}}%
+ % Collect all bib filenames as comma list for \newrefsection
+ \expandafter\g@addto@macro\csname BIBS:\the\c@artcounter
+ \expandafter\endcsname\expandafter{\DTK@tempa #2}%
+ \immediate\write\user@bibs{%
+ \string\addbibresource\ifx\relax#1\relax\else[#1]\fi{#2}%
\@percentchar\space \DTK@local@inputname
}%
}%
@@ -110,13 +140,23 @@
\let\DTK@tempa=\@empty
\ifstr{\@tempa}{inputenc}{\let\DTK@tempa=\@percentchar}{%
\ifstr{\@tempa}{fontenc}{\let\DTK@tempa=\@percentchar}{}}%
- \immediate\write\user@packages{%
+ \immediate\write\user@usepackages{%
\DTK@tempa\string\usepackage\ifx\relax#1\relax\else[#1]\fi{\@tempa}%
\ifx\relax#3\relax\else[#3]\fi\@percentchar\space \DTK@local@inputname
}%
}%
\ignorespaces
}%
+ \def\DTK@@RequirePackage#1#2[#3]{%
+ \edef\@tempb{\zap@space#2 \@empty}%
+ \@for\@tempa:=\@tempb\do{%
+ \immediate\write\user@requirepackages{%
+ \string\RequirePackage\ifx\relax#1\relax\else[#1]\fi{\@tempa}%
+ \ifx\relax#3\relax\else[#3]\fi\@percentchar\space \DTK@local@inputname
+ }%
+ }%
+ \ignorespaces
+ }%
\let\DTK@@Author=\DTK@Author
\newcommand*\AutorenListe{}%
\let\tableofcontents=\relax
@@ -128,10 +168,16 @@
* File `dtk-userpackages.tex' used.^^J%
*************************************}%
}{}%
+ \InputIfFileExists{dtk-userbibs.tex}{%
+ \typeout{*************************************^^J%
+ * File `dtk-userbibs.tex' used.^^J%
+ *************************************}%
+ }{}%
\shorthandon{"}%
}%
\AtBeginDocument{\DTK@backside}%
\def\DTK@@usepackage#1#2[#3]{}%
+ \def\DTK@@RequirePackage#1#2[#3]{}%
\newcommand*\DTK@addbibresource[2][]{}%
\newcommand*\ORIG@printbibliography{}
\let\ORIG@printbibliography=\printbibliography
@@ -162,14 +208,26 @@
\noexpand\sindex[autoren]{#2#1@#1 #2!#3}}}%
\x
\else
- \sindex[autoren]{#2#1@#1 #2!\textcolor{red}{\huge???}}%
+ \ifDTK@korr@
+ \sindex[autoren]{#2#1@#1 #2!\textcolor{red}{\huge???}}%
+ \else
+ \sindex[autoren]{#2#1@#1 #2!\relax}%
+ \fi
\fi
\endgroup
}%
- \let\DTK@Author=\DTK@Author@list
+ \newcommand*\DTK@Update@Author@index[3]{%
+ % Paket "everyhook"?
+ % Erst zu Beginn des nächsten Absatzes (hmode) Index-Befehle ausführen
+ \g@addto@macro\DTK@Author@list@content{\DTK@Author@list{#1}{#2}{#3}}%
+ \everypar=\expandafter{\the\everypar\DTK@Author@list@exec}%
+ }
+ % Sternversion: keine Ausgabe der Autoren, nur Index ergänzen
+ \let\DTK@Author=\DTK@Update@Author@index
+ % Normale Version
\newcommand\DTK@@Author[3]{%
- \DTK@Author@article{#1}{#2}{#3}%
- \DTK@Author@list{#1}{#2}{#3}%
+ \DTK@Author@article{#1}{#2}{#3}% Ausgabe der Autoren wie im Autor-Modus
+ \DTK@Update@Author@index{#1}{#2}{#3}%
}
\renewcommand\maketitle[1][]{%
\thispagestyle{dtk-title}%
@@ -180,6 +238,8 @@
%%% Laden eines Einzeldokuments
\newcommand*\DTKinput[1]{%
+ \setcounter{dtk@example@counter}{1}%
+ \stepcounter{artcounter}%
\begingroup
\filename@parse{#1}%
\edef\jobname{\filename@base}%
@@ -197,6 +257,7 @@
\let\nofiles=\relax
\let\documentclass=\DTK@documentclass
\let\usepackage=\DTK@usepackage
+ \let\RequirePackage=\DTK@RequirePackage
\let\addbibresource=\DTK@addbibresource
\c@footnote=\z@
\c@lstlisting=\z@
@@ -204,14 +265,29 @@
\c@table=\z@
\c@equation=\z@
\renewenvironment{document}{%
- \ifDTKrecord\endgroup\expandafter\endinput\fi
+ \ifDTKrecord
+ % Write the definition of the complete bib filename list
+ \@ifundefined{BIBS:\the\c@artcounter}{}{%
+ \immediate\write\user@bibs{%
+ \string\@namedef{BIBS:\the\c@artcounter}%
+ {\csname BIBS:\the\c@artcounter\endcsname}%
+ \@percentchar\space \DTK@local@inputname
+ }%
+ }%
+ \endgroup\expandafter\endinput
+ \fi
\DTK@embedded@begindocumenthook\ignorespaces
}{%
\DTK@embedded@enddocumenthook\endinput
}%
- \refsection[DTK\the\c@refsection]%
+ \@ifundefined{BIBS:\the\c@artcounter}{%
\input{\DTK@local@inputname}%
- \endrefsection
+ }{%
+ \expandafter\newrefsection\expandafter
+ [\csname BIBS:\the\c@artcounter\endcsname]%
+ \input{\DTK@local@inputname}%
+ \endrefsection
+ }%
\endgroup
}
@@ -293,27 +369,30 @@
\ifDTK@korr@% === Positionsnummern am linken Rand ===
\newcommand*\formatPosNumber[1]{%
- \fboxsep=.2em %
\fbox{\ifnum\arabic{page}<10 0\fi\arabic{page}-\ifnum#1<10 0\fi\@arabic{#1}}%
}
\newcommand\makePosNumbers[2]{%
+ \fboxsep=.2em %
\settoheight\DTK@tempdimc{\formatPosNumber{9}}%
+ \settowidth\DTK@tempdime{\formatPosNumber{9}}%
\DTK@tempdimc=1.5\DTK@tempdimc
\DTK@tempdimd=0pt %
\DTK@tempdimb=#2 %
+ %%%\settowidth\DTK@tempdima{\formatPosNumber{9}}%
\@tempcnta=0 %
\@whiledim \dimexpr\DTK@tempdimd+.5\DTK@tempdimc < \textheight\do{%
\advance\@tempcnta 1 %
\DTK@tempdimb=\dimexpr\DTK@tempdimb-\DTK@tempdimc
\DTK@tempdimd=\dimexpr\DTK@tempdimd+\DTK@tempdimc
- \put(#1,\DTK@tempdimb){\formatPosNumber{\@tempcnta}}%
+ \put(\ifodd\c@page #1\else\dimexpr#1+\textwidth+1.5\DTK@tempdime\fi,%
+ \DTK@tempdimb){\formatPosNumber{\@tempcnta}}%
}%
}
\DeclareNewLayer[textarea,background,mode=picture,contents={%
\begingroup
\ttfamily\scriptsize\itshape
\settowidth\DTK@tempdimc{\formatPosNumber{99}}%
- \DTK@tempdima=\dimexpr-.5\textwidth-\DTK@tempdimc-.8em %
+ \DTK@tempdima=\dimexpr-.5\textwidth-\DTK@tempdimc-.1em %
\putC{%
\makePosNumbers{\DTK@tempdima}{.5\textheight}%
}%
@@ -373,6 +452,8 @@
\newcommand*\Part{%
% [#1]=toc, {#2}=Überschrift, [#3]=Präambel, *=nur Strich
+ \clearpage
+ %\DTK@thispagestyle{plain.scrheadings}%
\@ifstar{\global\@tempswatrue\DTK@Part}{\global\@tempswafalse\DTK@Part}%
}
@@ -384,23 +465,31 @@
\newcommand\DTK@@Part[1][]{%
\let\DTK@tempb=\partheadendvskip
- \if@tempswa
+ \DTK@tempdime=10pt %
+ \if@tempswa% Strich
\setpartpreamble{%
\noindent\raisebox{\height}[\height]{\rule{\textwidth}{2pt}}%
}%
- \def\partheadendvskip{%
- \medskip\par
- }
+ \advance\DTK@tempdime 3mm %
\fi
- \ifx\relax#1\relax\else
- \setpartpreamble{%
+ \ifx\relax#1\relax
+ \else% Präambel
+ \setbox0=\vbox{%
\noindent\raisebox{\height}[\height]{\rule{\textwidth}{2pt}}\par
- \usekomafont{section} #1\par
+ \usekomafont{section} #1\par}%
+ \settoheight{\DTK@tempdima}{\usebox0}%
+ \settodepth{\DTK@tempdimb}{\usebox0}%
+ \advance\DTK@tempdima\DTK@tempdimb
+ \setpartpreamble{%
+ \box0
}%
+ \advance\DTK@tempdime \DTK@tempdima %
\fi
+ \def\partheadendvskip{\vskip \DTK@tempdime\par}%
\DTK@tempa
\let\partheadendvskip=\DTK@tempb
- \bigskip\par
+ \vskip -5mm %
+ \leavevmode
}
\def\partheadstartvskip{% 12.0pt plus 1.0fil