summaryrefslogtreecommitdiff
path: root/usergrps/dante/dtk/dtk-extern.sty
diff options
context:
space:
mode:
Diffstat (limited to 'usergrps/dante/dtk/dtk-extern.sty')
-rw-r--r--usergrps/dante/dtk/dtk-extern.sty233
1 files changed, 0 insertions, 233 deletions
diff --git a/usergrps/dante/dtk/dtk-extern.sty b/usergrps/dante/dtk/dtk-extern.sty
deleted file mode 100644
index 55cef26933..0000000000
--- a/usergrps/dante/dtk/dtk-extern.sty
+++ /dev/null
@@ -1,233 +0,0 @@
-%% This is file `dtk-extern.sty',
-%%
-%% LaTeX package for ``Die TeXnische Komoedie''.
-%%
-%% Copyright (C) 2016-20
-%% Rolf Niepraschk, Herbert Voss
-%%
-%% It may be distributed and/or modified under the
-%% conditions of the LaTeX Project Public License, either version 1.3c
-%% of this license or (at your option) 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 2005/12/01 or later.
-
-\ProvidesFile{dtk-extern}%
- [2020/02/07 v0.16: dtk package for running external documents (HV)]
-
-\RequirePackage{shellesc,xkeyval,graphicx,marginnote,fancyvrb}
-
-\newcounter{dtk@extern@runs}
-\newlength\LineWidth
-\AtBeginDocument{\setlength\LineWidth{\dimexpr\linewidth-2\fboxsep-2\fboxrule}}
-\newlength\dtk@extern@mpwidth \setlength\dtk@extern@mpwidth{\z@}
-
-\define@key{dtk}{compiler}[pdflatex]{\def\dtk@extern@compiler{#1}}
-\define@key{dtk}{runsequence}[]{\def\dtk@extern@runsequence{#1}}
-\define@key{dtk}{runs}[1]{\setcounter{dtk@extern@runs}{#1}}
-\define@key{dtk}{grfOptions}[]{\def\dtk@extern@grfOptions{#1}}
-\define@key{dtk}{lstOptions}[]{\def\dtk@extern@lstOptions{#1}}
-\define@key{dtk}{docType}[latex]{\def\dtk@extern@docType{#1}}
-\define@key{dtk}{caption}[]{\def\dtk@extern@caption{#1}}
-\define@key{dtk}{label}[]{\def\dtk@extern@label{#1}}
-\define@key{dtk}{pages}[1]{\def\dtk@extern@pages{#1}}
-\define@key{dtk}{mpwidth}[0pt]{\setlength\dtk@extern@mpwidth{#1}}
-\define@boolkey{dtk}[dtk@extern@]{usefancyvrb}[true]{}
-\define@boolkey{dtk}[dtk@extern@]{showFilename}[true]{}
-\define@boolkey{dtk}[dtk@extern@]{code}[true]{}
-\define@boolkey{dtk}[dtk@extern@]{force}[true]{}
-\define@boolkey{dtk}[dtk@extern@]{crop}[true]{}
-\define@boolkey{dtk}[dtk@extern@]{biber}[true]{}
-\define@boolkey{dtk}[dtk@extern@]{xindex}[true]{}
-\define@key{dtk}{xindexOptions}[]{\def\dtk@extern@xindexOptions{#1}}
-\define@boolkey{dtk}[dtk@extern@]{includegraphic}[true]{}
-\define@boolkey{dtk}[dtk@extern@]{inline}[true]{}
-\define@boolkey{dtk}[dtk@extern@]{frame}[true]{}
-\define@boolkey{dtk}[dtk@extern@]{float}[true]{}
-\define@boolkey{dtk}[dtk@extern@]{cleanup}[true]{}
-\define@boolkey{dtk}[dtk@extern@]{copyToExampleDir}[true]{}
-\define@key{dtk}{align}[\centering]{\def\dtk@extern@align{#1}}
-\define@key{dtk}{ExamplesDir}[Examples]{\def\dtk@extern@ExamplesDir{#1}}
-
-\def\ResetKeys{%
- \setkeys{dtk}{
- showFilename=false,% Dateinamen im Rand angeben
- code=false,% show Code
- crop=false,% erzeugte PDF "croppen"
- compiler=pdflatex,% zu verwendener Compiler
- grfOptions={},% Optionen der einzubindenden Grafik
- lstOptions={},% Optionen für das Listing
- includegraphic=true,% Grafik einbinden oder User überlassen
- inline=false,% Grafik nicht in derselben Zeile
- runs=1,% Anzahl Compiler-Durchläufe
- runsequence={},% Im Moment nicht aktiv
- biber=false,% Biber laufen lassen?
- xindex=false,% xindex laufen lassen?
- xindexOptions={},% options for xindex
- force=false,% Compiler, auch wenn PDF existiert?
- frame=false,% keinen Rahmen um Abbildung
- float=false,% nicht als Gleitumgebung
- caption=,% keine Caption
- label=,% kein Label
- pages=1,% welche Seiten auszugeben sind
- docType=latex,% LaTeX example Code
- cleanup=false,% Hilfsdateien nicht löschen
- copyToExampleDir,% Kopie nach ExamplesDir
- ExamplesDir=Examples,% Unterverzeichnis für Beispiele
- align=\centering,% Ausgabe zentrieren
- mpwidth=0pt,% no minipage
- usefancyvrb=false,% use VerbatimInput instead of listings
- }
-}
-\ResetKeys
-
-{\catcode`\%=12
- \gdef\perCent{%}
- \gdef\DoubleperCent{%%}
-}
-
-\newcounter{dtk@example@counter}
-
-\newcommand\extern@ExampleType[5]{%
- \ifdtk@extern@usefancyvrb
- \@namedef{#1@initText}{\gdef\FancyVerbStartString{#2}\gdef\FancyVerbStopString{#3}}% text
- \@namedef{#1@initPreamble}{\gdef\FancyVerbStartString{#4}\gdef\FancyVerbStopString{#5}}% code
- \else
- \@namedef{#1@initText}{linerange=#2-#3,includerangemarker=false}% text
- \@namedef{#1@initPreamble}{linerange=#4-#5,includerangemarker=false}% code
- \fi
-}
-
-\extern@ExampleType{latex}% #1
- {\string\begin\string{document\string}}% #2
- {\string\end\string{document\string}}% #3
- {\perCent StartVisiblePreamble}% #4
- {\perCent StopVisiblePreamble}% #5
-
-\extern@ExampleType{context}
- {\string\starttext}
- {\string\stoptext}
- {\perCent StartVisiblePreamble}
- {\perCent StopVisiblePreamble}
-
-%%
-%% [#1]: Optionen #2: Dateiname
-%%
-\newenvironment{ErstelleGrafik}[2][]{%
- \xdef\dtkExternDateiname{#2-\arabic{dtk@example@counter}}%
- \typeout{Externer Dateiname: \dtkExternDateiname}%
- \global\setkeys{dtk}{#1}% \begin
- \expandafter\IfFileExists\expandafter{\dtkExternDateiname.pdf}{}{\setkeys{dtk}{force}}%
- \begingroup
- \filecontents[force,noheader]{\dtkExternDateiname.tex}
- }
- {\endfilecontents% \end
- \ifdtk@extern@copyToExampleDir
- \ShellEscape{cp\space\dtkExternDateiname.tex \dtk@extern@ExamplesDir/}%
- \fi
- \global\stepcounter{dtk@example@counter}%
- \endgroup
- \ifdtk@extern@force
- \loop\ifnum\thedtk@extern@runs>0
- \typeout{Run: \thedtk@extern@runs\space \dtk@extern@compiler\space\dtkExternDateiname}%
- \ShellEscape{\dtk@extern@compiler\space\dtkExternDateiname}%
- \addtocounter{dtk@extern@runs}{-1}%
- \repeat
- \fi
- \ifdtk@extern@code
- \ifdim\dtk@extern@mpwidth>\z@ \minipage[t]{\dtk@extern@mpwidth}\vspace{0pt}\fi
- \expandafter\edef\expandafter\dtk@lst@options@preamble\expandafter{%
- \@nameuse{\dtk@extern@docType @initPreamble},
- \dtk@extern@lstOptions,
- backgroundcolor=\noexpand\color{black!12}}%
- \ifdtk@extern@usefancyvrb
- \expandafter\VerbatimInput\expandafter[\dtk@lst@options@preamble]{\dtkExternDateiname}%
- \else
- \expandafter\lstinputlisting\expandafter[\dtk@lst@options@preamble]{\dtkExternDateiname}%
- \fi
- \ifdtk@extern@showFilename
- \marginnote{\rotatebox{90}{\dtkExternDateiname}}%[-15mm]%
- \fi
-%
- \expandafter\edef\expandafter\dtk@lst@options@text\expandafter{%
- \@nameuse{\dtk@extern@docType @initText},
- \dtk@extern@lstOptions,
- backgroundcolor=\noexpand\color{black!8}}%
-% \typeout{\dtk@lst@options@text}
- \ifdtk@extern@usefancyvrb
- \expandafter\VerbatimInput\expandafter[\dtk@lst@options@text]{\dtkExternDateiname}%
- \else
- \expandafter\lstinputlisting\expandafter[\dtk@lst@options@text]{\dtkExternDateiname}%
- \fi
- \ifdim\dtk@extern@mpwidth > \z@\relax \endminipage\fi
- \fi
- \expandafter\IfFileExists\expandafter{\dtkExternDateiname.pdf}%
- {\ifdtk@extern@force
- \ifdtk@extern@biber
- \ShellEscape{biber \dtkExternDateiname}% NAch biber nochmal latex
- \ShellEscape{\dtk@extern@compiler\space\dtkExternDateiname}%
- \fi
- \ifdtk@extern@xindex
- \ShellEscape{xindex \dtk@extern@xindexOptions\space \dtkExternDateiname.idx}% NAch xindex nochmal latex
- \ShellEscape{\dtk@extern@compiler\space\dtkExternDateiname}%
- \fi
- \ifdtk@extern@crop
- \ShellEscape{pdfcrop \dtkExternDateiname}%
- \ShellEscape{mv \dtkExternDateiname-crop.pdf \dtkExternDateiname.pdf}%
- \fi
- \fi
- }{}
- \ifdtk@extern@code\else
- \ifdtk@extern@showFilename
- \marginnote{\rotatebox{90}{\dtkExternDateiname}}%
- \fi
- \fi
-%
- \ifdtk@extern@includegraphic
- \ifdtk@extern@float
- \begin{figure}[!htb]
- \else
- \ifdim\dtk@extern@mpwidth>\z@
- \hfill\minipage[t]{\dimexpr\linewidth-\dtk@extern@mpwidth-1em\relax}\vspace{0pt}
- \else
- \ifdtk@extern@inline\else\par\fi\begingroup
- \fi
- \fi
- \dtk@extern@align
- \ifdtk@extern@frame
- \expandafter\@for\expandafter\next\expandafter:\expandafter=\dtk@extern@pages\do{%
- \fbox{\expandafter\includegraphics\expandafter[\dtk@extern@grfOptions,page=\next]{\dtkExternDateiname}}%
- \hspace{5pt}}\hspace*{-5pt}
-% \fbox{\expandafter\includegraphics\expandafter[\dtk@extern@grfOptions]{\dtkExternDateiname}}%
- \else
- \expandafter\@for\expandafter\next\expandafter:\expandafter=\dtk@extern@pages\do{%
- \expandafter\includegraphics\expandafter[\dtk@extern@grfOptions,page=\next]{\dtkExternDateiname}%
- \hspace{5pt}}\hspace*{-5pt}
-% \expandafter\includegraphics\expandafter[\dtk@extern@grfOptions]{\dtkExternDateiname}%
- \fi
- \ifx\dtk@extern@caption\@empty\else\caption{\dtk@extern@caption}\fi
- \ifx\dtk@extern@label\@empty\else\label{\dtk@extern@label}\fi
- \ifdtk@extern@float
- \end{figure}
- \else
- \ifdim\dtk@extern@mpwidth>\z@
- \endminipage
- \else
- \ifdtk@extern@inline\else\par\fi\endgroup
- \fi
- \fi
- \fi
- \ifdtk@extern@cleanup
- \ShellEscape{rm \dtkExternDateiname.log}%
- \ShellEscape{rm \dtkExternDateiname.aux}%
- \ShellEscape{rm \dtkExternDateiname.toc}%
-% \ShellEscape{rm \dtkExternDateiname.log}%
- \fi
- \global\ResetKeys}
-\stepcounter{dtk@example@counter}%
-%
-\let\externalDocument\ErstelleGrafik
-\let\endexternalDocument\endErstelleGrafik
-%%
-\endinput