From 6ecc8cbfd257eb7f97e87528164659d6c031ba07 Mon Sep 17 00:00:00 2001
From: Karl Berry <karl@freefriends.org>
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

