From 6ecc8cbfd257eb7f97e87528164659d6c031ba07 Mon Sep 17 00:00:00 2001 From: Karl Berry Date: Fri, 13 Jan 2006 00:07:54 +0000 Subject: struktex git-svn-id: svn://tug.org/texlive/trunk@1350 c570f23f-e606-0410-a88d-b1316a301751 --- Master/texmf-dist/tex/latex/struktex/strukdoc.sty | 262 ++++++++++++++++++++++ 1 file changed, 262 insertions(+) create mode 100644 Master/texmf-dist/tex/latex/struktex/strukdoc.sty (limited to 'Master/texmf-dist/tex/latex/struktex/strukdoc.sty') diff --git a/Master/texmf-dist/tex/latex/struktex/strukdoc.sty b/Master/texmf-dist/tex/latex/struktex/strukdoc.sty new file mode 100644 index 00000000000..68288a5c496 --- /dev/null +++ b/Master/texmf-dist/tex/latex/struktex/strukdoc.sty @@ -0,0 +1,262 @@ +%% +%% This is file `strukdoc.sty', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% struktex.dtx (with options: `strukdoc') +%% +%% Copyright (C) 1989-2005 by Jobst Hoffmann. All rights reserved. +%% +%% IMPORTANT COPYRIGHT NOTICE: +%% +%% No other permissions to copy or distribute this file in any form +%% are granted and in particular NO PERMISSION to modify its contents. +%% +%% You are NOT ALLOWED to change this file. +%% +%% Please address error reports and any problems in case of UNCHANGED versions +%% to +%% j.hoffmann@fh-aachen.de +\NeedsTeXFormat{LaTeX2e}[1999/12/01] +\def\filedate{2005/05/17} +\def\fileversion{v8.0f} +%% +\RequirePackage{ifpdf} +\ProvidesPackage{strukdoc} + [\filedate\space\fileversion\space (Jobst Hoffmann)] +\newif\ifcolor \IfFileExists{color.sty}{\colortrue}{} +\ifpdf \RequirePackage[colorlinks]{hyperref}\else + \def\href#1{\texttt}\fi +\ifcolor \RequirePackage{color}\fi +\RequirePackage{nameref} +\RequirePackage{url} +\renewcommand\ref{\protect\T@ref} +\renewcommand\pageref{\protect\T@pageref} +\@ifundefined{zB}{}{\endinput} +\providecommand\pparg[2]{% + {\ttfamily(}\meta{#1},\meta{#2}{\ttfamily)}} +\providecommand\envb[1]{% + {\ttfamily\char`\\begin\char`\{#1\char`\}}} +\providecommand\enve[1]{% + {\ttfamily\char`\\end\char`\{#1\char`\}}} +\newcommand{\zBspace}{z.\,B.} +\let\zB=\zBspace +\newcommand{\dhspace}{d.\,h.} +\let\dh=\dhspace +\let\foreign=\textit +\newcommand\Abb[1]{Abbildung~\ref{#1}} +\def\newexample#1{% + \@ifnextchar[{\@oexmpl{#1}}{\@nexmpl{#1}}} +\def\@nexmpl#1#2{% + \@ifnextchar[{\@xnexmpl{#1}{#2}}{\@ynexmpl{#1}{#2}}} +\def\@xnexmpl#1#2[#3]{% + \expandafter\@ifdefinable\csname #1\endcsname + {\@definecounter{#1}\@newctr{#1}[#3]% + \expandafter\xdef\csname the#1\endcsname{% + \expandafter\noexpand\csname the#3\endcsname \@exmplcountersep + \@exmplcounter{#1}}% + \global\@namedef{#1}{\@exmpl{#1}{#2}}% + \global\@namedef{end#1}{\@endexample}}} +\def\@ynexmpl#1#2{% + \expandafter\@ifdefinable\csname #1\endcsname + {\@definecounter{#1}% + \expandafter\xdef\csname the#1\endcsname{\@exmplcounter{#1}}% + \global\@namedef{#1}{\@exmpl{#1}{#2}}% + \global\@namedef{end#1}{\@endexample}}} +\def\@oexmpl#1[#2]#3{% + \@ifundefined{c@#2}{\@nocounterr{#2}}% + {\expandafter\@ifdefinable\csname #1\endcsname + {\global\@namedef{the#1}{\@nameuse{the#2}}% + \global\@namedef{#1}{\@exmpl{#2}{#3}}% + \global\@namedef{end#1}{\@endexample}}}} +\def\@exmpl#1#2{% + \refstepcounter{#1}% + \@ifnextchar[{\@yexmpl{#1}{#2}}{\@xexmpl{#1}{#2}}} +\def\@xexmpl#1#2{% + \@beginexample{#2}{\csname the#1\endcsname}\ignorespaces} +\def\@yexmpl#1#2[#3]{% + \@opargbeginexample{#2}{\csname the#1\endcsname}{#3}\ignorespaces} +\def\@exmplcounter#1{\noexpand\arabic{#1}} +\def\@exmplcountersep{.} +\def\@beginexample#1#2{% + \@nobreaktrue\list{}{\setlength{\rightmargin}{\leftmargin}}% + \item[{\bfseries #1\ #2}]\mbox{}\\\sf} +\def\@opargbeginexample#1#2#3{% + \@nobreaktrue\list{}{\setlength{\rightmargin}{\leftmargin}}% + \item[{\bfseries #1\ #2}\ (#3)]\mbox{}\\\sf} +\def\@endexample{\endlist} + +\newexample{tExample}{\ifnum\language=\languageNGerman Beispiel\else Example\fi} + +\newwrite\struktex@out +\newenvironment{example}% + {\begingroup% Lets keep the changes local + \@bsphack + \immediate\openout \struktex@out \jobname.tmp + \let\do\@makeother\dospecials\catcode`\^^M\active + \def\verbatim@processline{% + \immediate\write\struktex@out{\the\verbatim@line}}% + \verbatim@start}% + {\immediate\closeout\struktex@out\@esphack\endgroup% + \par\small\addvspace{3ex plus 1ex}\vskip -\parskip + \noindent + \makebox[0.45\linewidth][l]{% + \begin{minipage}[t]{0.45\linewidth} + \vspace*{-2ex} + \setlength{\parindent}{0pt} + \setlength{\parskip}{1ex plus 0.4ex minus 0.2ex} + \begin{trivlist} + \item\input{\jobname.tmp} + \end{trivlist} + \end{minipage}}% + \hfill% + \makebox[0.5\linewidth][l]{% + \begin{minipage}[t]{0.50\linewidth} + \vspace*{-1ex} + \verbatiminput{\jobname.tmp} + \end{minipage}} + \par\addvspace{3ex plus 1ex}\vskip -\parskip +} + +\newtoks\verbatim@line +\def\verbatim@startline{\verbatim@line{}} +\def\verbatim@addtoline#1{% + \verbatim@line\expandafter{\the\verbatim@line#1}} +\def\verbatim@processline{\the\verbatim@line\par} +\def\verbatim@finish{\ifcat$\the\verbatim@line$\else + \verbatim@processline\fi} + +\def\verbatimwrite#1{% + \@bsphack + \immediate\openout \struktex@out #1 + \let\do\@makeother\dospecials + \catcode`\^^M\active \catcode`\^^I=12 + \def\verbatim@processline{% + \immediate\write\struktex@out + {\the\verbatim@line}}% + \verbatim@start} +\def\endverbatimwrite{% + \immediate\closeout\struktex@out + \@esphack} + +\@ifundefined{vrb@catcodes}% + {\def\vrb@catcodes{% + \catcode`\!12\catcode`\[12\catcode`\]12}}{} +\begingroup + \vrb@catcodes + \lccode`\!=`\\ \lccode`\[=`\{ \lccode`\]=`\} + \catcode`\~=\active \lccode`\~=`\^^M + \lccode`\C=`\C + \lowercase{\endgroup + \def\verbatim@start#1{% + \verbatim@startline + \if\noexpand#1\noexpand~% + \let\next\verbatim@ + \else \def\next{\verbatim@#1}\fi + \next}% + \def\verbatim@#1~{\verbatim@@#1!end\@nil}% + \def\verbatim@@#1!end{% + \verbatim@addtoline{#1}% + \futurelet\next\verbatim@@@}% + \def\verbatim@@@#1\@nil{% + \ifx\next\@nil + \verbatim@processline + \verbatim@startline + \let\next\verbatim@ + \else + \def\@tempa##1!end\@nil{##1}% + \@temptokena{!end}% + \def\next{\expandafter\verbatim@test\@tempa#1\@nil~}% + \fi \next}% + \def\verbatim@test#1{% + \let\next\verbatim@test + \if\noexpand#1\noexpand~% + \expandafter\verbatim@addtoline + \expandafter{\the\@temptokena}% + \verbatim@processline + \verbatim@startline + \let\next\verbatim@ + \else \if\noexpand#1 + \@temptokena\expandafter{\the\@temptokena#1}% + \else \if\noexpand#1\noexpand[% + \let\@tempc\@empty + \let\next\verbatim@testend + \else + \expandafter\verbatim@addtoline + \expandafter{\the\@temptokena}% + \def\next{\verbatim@#1}% + \fi\fi\fi + \next}% + \def\verbatim@testend#1{% + \if\noexpand#1\noexpand~% + \expandafter\verbatim@addtoline + \expandafter{\the\@temptokena[}% + \expandafter\verbatim@addtoline + \expandafter{\@tempc}% + \verbatim@processline + \verbatim@startline + \let\next\verbatim@ + \else\if\noexpand#1\noexpand]% + \let\next\verbatim@@testend + \else\if\noexpand#1\noexpand!% + \expandafter\verbatim@addtoline + \expandafter{\the\@temptokena[}% + \expandafter\verbatim@addtoline + \expandafter{\@tempc}% + \def\next{\verbatim@!}% + \else \expandafter\def\expandafter\@tempc\expandafter + {\@tempc#1}\fi\fi\fi + \next}% + \def\verbatim@@testend{% + \ifx\@tempc\@currenvir + \verbatim@finish + \edef\next{\noexpand\end{\@currenvir}% + \noexpand\verbatim@rescan{\@currenvir}}% + \else + \expandafter\verbatim@addtoline + \expandafter{\the\@temptokena[}% + \expandafter\verbatim@addtoline + \expandafter{\@tempc]}% + \let\next\verbatim@ + \fi + \next}% + \def\verbatim@rescan#1#2~{\if\noexpand~\noexpand#2~\else + \@warning{Characters dropped after `\string\end{#1}'}\fi}} + +\newread\verbatim@in@stream +\def\verbatim@readfile#1{% + \verbatim@startline + \openin\verbatim@in@stream #1\relax + \ifeof\verbatim@in@stream + \typeout{No file #1.}% + \else + \@addtofilelist{#1}% + \ProvidesFile{#1}[(verbatim)]% + \expandafter\endlinechar\expandafter\m@ne + \expandafter\verbatim@read@file + \expandafter\endlinechar\the\endlinechar\relax + \closein\verbatim@in@stream + \fi + \verbatim@finish +} +\def\verbatim@read@file{% + \read\verbatim@in@stream to\next + \ifeof\verbatim@in@stream + \else + \expandafter\verbatim@addtoline\expandafter{\expandafter\check@percent\next}% + \verbatim@processline + \verbatim@startline + \expandafter\verbatim@read@file + \fi +} +\def\verbatiminput{\begingroup\MacroFont + \@ifstar{\verbatim@input\relax}% + {\verbatim@input{\frenchspacing\@vobeyspaces}}} +\def\verbatim@input#1#2{% + \IfFileExists {#2}{\@verbatim #1\relax + \verbatim@readfile{\@filef@und}\endtrivlist\endgroup\@doendpe}% + {\typeout {No file #2.}\endgroup}} +\endinput +%% +%% End of file `strukdoc.sty'. -- cgit v1.2.3