summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/source/latex/struktex
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2010-09-22 23:34:49 +0000
committerKarl Berry <karl@freefriends.org>2010-09-22 23:34:49 +0000
commit4e4bb5b0b9eb71dbc88b140b9bfe43026324b79f (patch)
treecec03b97ab34eacd61a679abbc80d02fa8975188 /Master/texmf-dist/source/latex/struktex
parenta00a7b047313bab600673186a730290a60224e3f (diff)
struktex v133 (22sep10)
git-svn-id: svn://tug.org/texlive/trunk@19845 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/source/latex/struktex')
-rw-r--r--Master/texmf-dist/source/latex/struktex/struktex.dtx628
-rw-r--r--Master/texmf-dist/source/latex/struktex/struktex.ins4
2 files changed, 394 insertions, 238 deletions
diff --git a/Master/texmf-dist/source/latex/struktex/struktex.dtx b/Master/texmf-dist/source/latex/struktex/struktex.dtx
index 89d1f5414e8..a709470cc87 100644
--- a/Master/texmf-dist/source/latex/struktex/struktex.dtx
+++ b/Master/texmf-dist/source/latex/struktex/struktex.dtx
@@ -1,7 +1,7 @@
% \iffalse meta-comment
%
-% Copyright (C) 1995 - 2010 Jobst Hoffmann, FH Aachen, Abt. J"ulich
-% <j.hoffmann _at_ fh-aachen.de>
+% Copyright (C) 1995 - 2010 Jobst Hoffmann, FH Aachen, Campus J"ulich
+% <j.hoffmann_(at)_fh-aachen.de>
% -------------------------------------------------------------------------------------------
%
% This file may be distributed and/or modified under the
@@ -14,27 +14,31 @@
% and version 1.2 or later is part of all distributions of LaTeX
% version 1999/12/01 or later.
%
-% \fi
%
+% \fi
%
+% \changes{v131}{10/09/21}{some more layout changes}
+% \changes{v130}{10/09/21}{some changes in the layout of the source,
+% removed typos}
+% \changes{v121}{10/08/31}{scrumbled the email a little bit}
+% \changes{v121}{10/08/31}{moved opening brace to end of line in several cases}
% \changes{v084}{10/06/24}{small layout changes}
% \changes{v084}{10/06/24}{corrected revision macro---added missing command}
% \changes{v062}{10/05/31}{moved the docstrip guards into the corresponding macrocode environments}
% \changes{v061}{10/05/31}{corrected some more typos}
% \changes{v057}{10/01/21}{added some missing closing braces at the end of `ProvidesPackage}
% \iffalse
-%<struktex|struktxf|struktxp|strukdoc>\NeedsTeXFormat{LaTeX2e}[1999/12/01]
-%<struktex|struktxf|struktxp|strukdoc>{%
+%<struktex|struktxf|struktxp|strukdoc>\NeedsTeXFormat{LaTeX2e}[1999/12/01]{%
%<struktex|struktxf|struktxp|strukdoc> \def\@svn@ $#1Date: #2-#3-#4 #5$$#6Revision: #7$ {%
%<struktex> \ProvidesPackage{struktex}[#2/#3/#4 v#7 Nassi Shneiderman Charts (Jobst Hoffmann)]}
%<struktxf> \ProvidesPackage{struktxf}[#2/#3/#4 v#7 Fonts for Nassi Shneiderman Charts (Jobst Hoffmann)]}
%<struktxp> \ProvidesPackage{struktxp}[#2/#3/#4 v#7 Keywords for Nassi Shneiderman Charts (Jobst Hoffmann)]}
%<strukdoc> \ProvidesPackage{strukdoc}[#2/#3/#4 v#7 support for reading and writing files verbatim (Jobst Hoffmann)]}
-%<struktex|struktxf|struktxp|strukdoc> \@svn@ $Date: 2010-06-25 13:00:22 +0200 (Fr, 25 Jun 2010) $$Revision: 101 $ %
+%<struktex|struktxf|struktxp|strukdoc> \@svn@ $Date: 2010-09-21 21:32:08 +0200 (Di, 21 Sep 2010) $$Revision: 133 $ %
%<struktex|struktxf|struktxp|strukdoc>}
% \fi
-% \CheckSum{2436} ^^A set to 0 to inactivate the CheckSum
-% \def\docdate {2010/06/25} ^^A not style'able!!
+% \CheckSum{2473} ^^A set to 0 to inactivate the CheckSum
+% \def\docdate {2010/09/21} ^^A not style'able!!
%
% \iffalse meta-comment
% Alles bis zum n"achsten `\ fi' (ohne Leerzeichen) wird
@@ -52,11 +56,11 @@
% Diese Einschr"ankung dient dazu, dass alle Stiloptionen identisch bleiben.
%
% Fehlermeldungen werden erbeten an: Dr. Jobst Hoffmann
-% Fachhochschule Aachen, Abt. J"ulich
+% Fachhochschule Aachen, Campus J"ulich
% Ginsterweg 1
% 52428 J"ulich
% Bundesrepublik Deutschland
-% Email: <j.hoffmann _at_ fh-aachen.de>
+% Email: <j.hoffmann_(at)_fh-aachen.de>
%
% Achtung: um korrekte Bearbeitung zu erzielen, muss die Umgebung
% \begin{macrocode}
@@ -94,46 +98,56 @@
% \changes{v-7.0a}{03/04/21}{Tippfehler korrigiert}
% \changes{v-7.0a}{03/04/21}{Marker f"ur interne Beispiele umbenannt}
% \changes{v-7.0a}{03/04/21}{Testrahmen ge"andert}
-% \changes{v-7.0a}{03/04/21}{Beispiele f"ur unterschiedlichen Programmierspracheneinsatz erweitert}
+% \changes{v-7.0a}{03/04/21}{Beispiele f"ur unterschiedlichen
+% Programmierspracheneinsatz erweitert}
% \changes{v-7.0a}{03/04/21}{Makefile integriert}
-% \changes{v-7.0a}{03/04/21}{`pLanguage ge"andert: `pLanguage@nss zus"atzlich eingef"uhrt}
+% \changes{v-7.0a}{03/04/21}{`pLanguage ge"andert: `pLanguage@nss
+% zus"atzlich eingef"uhrt}
% \changes{v-7.0a}{03/04/21}{Sprachbezeichnungen ge"andert: Suffix @nss}
-% \changes{v-7.0}{03/04/21}{Wechsel von der RWTH Aachen zur FH Aachen, Abt. J"ulich}
+% \changes{v-7.0}{03/04/21}{Wechsel von der RWTH Aachen zur FH Aachen,
+% Abt. J"ulich}
% \changes{v-6.0a}{01/04/22}{Dokumentation von `case verbessert}
-% \changes{v-6.0a}{00/12/08}{Makros `cs, `marg, `oarg, `pparg sowie
-% `envb und `enve zur besseren Dokumentation
-% eingesetzt}
+% \changes{v-6.0a}{00/12/08}{Makros `cs, `marg, `oarg, `pparg sowie `envb
+% und `enve zur besseren Dokumentation eingesetzt}
% \changes{v-6.0a}{00/11/24}{Englische "Ubersetzung der Dokumentation
-% hinzugef"ugt}
+% hinzugef"ugt }
% \changes{v-6.0a}{00/11/24}{Code umgestaltet, z.B. `def $\rightarrow$
-% `newcommand, \$\ldots\$ $\rightarrow$ `(\ldots`)}
-% \changes{v-6.0a}{00/11/24}{Zus"atzliche Paketoption "`curves"' zur Gestaltung
-% beliebiger Steigungen eingef"uhrt}
+% `newcommand, \$\ldots\$ $\rightarrow$ `(\ldots`) }
+% \changes{v-6.0a}{00/11/24}{Zus"atzliche Paketoption "`curves"' zur
+% Gestaltung beliebiger Steigungen eingef"uhrt}
% \changes{v-5.4b}{00/12/08}{Umgebungen zur einfacheren Notation der
-% Dokumentation eingef"uhrt}
+% Dokumentation eingef"uhrt}
% \changes{v-5.4b}{00/12/08}{Erster Versuch einer gemischtsprachigen
-% Dokumentation}
-% \changes{v-5.4a}{99/11/16}{\textsf{stuktxp.sty} "uberarbeitet zur besseren
-% Darstellung von Programmen}
+% Dokumentation}
+% \changes{v-5.4a}{99/11/16}{\textsf{stuktxp.sty} "uberarbeitet zur
+% besseren Darstellung von Programmen}
% \changes{v-5.3a}{98/11/27}{Die Form des Textes in Bedingungen ist nun an
-% beliebige Steigungen angepasst}
+% beliebige Steigungen angepasst}
% \changes{v-5.2b}{98/05/28}{Tippfehlerkorrektur: Umlaut "`ue"' durch
-% "`"u"' ersetzt}
+% "`"u"' ersetzt}
% \changes{v-5.2a}{97/12/03}{Umstellung der Dokumentation, dadurch Verzicht
-% auf eigene Treiberdatei m"oglich}
+% auf eigene Treiberdatei m"oglich}
% \changes{v-5.2a}{97/12/03}{kleinere Korrekturen}
% \changes{v-5.1b}{97/11/02}{Umstellung der Dokumentation mittels Umgebung
-% \texttt{example}, `verbatiminput und verbatimwrite}
+% \texttt{example}, `verbatiminput und verbatimwrite}
% \changes{v-5.1a}{97/04/29}{kleinere stilistische "Anderungen nach W. Hanrath}
-% \changes{v-5.0}{97/04/28}{Dateinamen zwecks Kompatibilit"at auf Kleinschreibung umgesetzt}
-% \changes{v-5.0}{97/04/28}{kleinere textuelle "Anderungen, Fontauswahl teilweise ge"andert}
-% \changes{v-5.0}{97/04/28}{Abh"angigkeiten der Dokumentation von zus"atzlichen Paketen beseitigt}
-% \changes{v-4.5e}{97/04/25}{Verzicht auf Gro"s- und Kleinschreibung im Namen von .sty-Dateien}
-% \changes{v-4.5a}{96/03/14}{Umgebung \texttt{description} auf \texttt{list}-Umgebung zur"uckgef"uhrt}
-% \changes{v-4.5a}{96/03/14}{Eigenes Paket zur Formatierung von Programminhalten integriert}
+% \changes{v-5.0}{97/04/28}{Dateinamen zwecks Kompatibilit"at auf
+% Kleinschreibung umgesetzt}
+% \changes{v-5.0}{97/04/28}{kleinere textuelle "Anderungen, Fontauswahl
+% teilweise ge"andert}
+% \changes{v-5.0}{97/04/28}{Abh"angigkeiten der Dokumentation von
+% zus"atzlichen Paketen beseitigt}
+% \changes{v-4.5e}{97/04/25}{Verzicht auf Gro"s- und Kleinschreibung im
+% Namen von .sty-Dateien}
+% \changes{v-4.5a}{96/03/14}{Umgebung \texttt{description} auf
+% \texttt{list}-Umgebung zur"uckgef"uhrt}
+% \changes{v-4.5a}{96/03/14}{Eigenes Paket zur Formatierung von
+% Programminhalten integriert}
% \changes{v-4.1c}{95/07/24}{Dokumentation verbessert}
-% \changes{v-4.1b}{95/07/19}{H"ohe des Bedingungsrechteckes bei `ifthenelse vorgebbar}
-% \changes{v-4.1a}{95/07/17}{Geraden mit beliebiger Steigung durch `emline m"oglich}
+% \changes{v-4.1b}{95/07/19}{H"ohe des Bedingungsrechteckes bei `ifthenelse
+% vorgebbar}
+% \changes{v-4.1a}{95/07/17}{Geraden mit beliebiger Steigung durch `emline
+% m"oglich}
% \changes{v-4.0a}{95/04/12}{Anpassung an LaTeX2e}
% \changes{v-3.5a}{94/11/22}{Entwicklunglinien J. Dietel, J. Hoffmann vereinigt}
% \changes{v-3.3a}{94/09/14}{Schnittstellenbeschreibung verallgemeinert}
@@ -162,7 +176,8 @@
% \DoNotIndex{\magstephalf, \makelabel, \MakeShortVerb, \marginpar}
% \DoNotIndex{\mark, \month, \newpage, \nobreak, \noindent, \normalsize, \null}
% \DoNotIndex{\number, \onecolumn, \or, \overfullrule}
-% \DoNotIndex{\pagebreak, \parbox, \penalty, \phantom, \raggedbottom, \raggedleft}
+% \DoNotIndex{\pagebreak, \parbox, \penalty, \phantom}
+% \DoNotIndex{\raggedbottom, \raggedleft}
% \DoNotIndex{\relax, \renewcommand, \reversemarginpar}
% \DoNotIndex{\rightmargin, \rule, \setbox, \setcounter}
% \DoNotIndex{\setlength, \settowidth, \strut, \svtnsfb}
@@ -185,7 +200,8 @@
% \DoNotIndex{\parfillskip, \parindent, \parshape, \parskip, \pretolerance}
% \DoNotIndex{\raise, \RecordChanges}
% \DoNotIndex{\textheight, \textwidth, \tolerance, \topmargin, \typeout}
-% \DoNotIndex{\vrule, \vtop}% \DoNotIndex{\bf, \tt, \par, \smallskip, \stepcounter}
+% \DoNotIndex{\vrule, \vtop}
+% \DoNotIndex{\bf, \tt, \par, \smallskip, \stepcounter}
%
% \pFonts{\itshape}{}{} ^^A Variablen werden als italics ausgegeben
%
@@ -193,10 +209,9 @@
% \IndexPrologue{%
% \section*{Index}
% \ifnum\language=\languageNGerman
-% Die kursiven Zahlen bezeichnen die Seite,
-% auf der der jeweilige Eintrag beschrieben ist, unterstrichene Zahlen
-% verweisen auf seine Definition; alle anderen Zahlen geben Stellen an,
-% an denen der Eintrag auftritt.%
+% Die kursiven Zahlen bezeichnen die Seite, auf der der jeweilige Eintrag
+% beschrieben ist, unterstrichene Zahlen verweisen auf seine Definition;
+% alle anderen Zahlen geben Stellen an, an denen der Eintrag auftritt.%
% \else
% The italic numbers mark the page certain entries are described on.
% Underlined numbers refer to its definition. All other numbers declare
@@ -289,7 +304,7 @@
% \begin{quote}
% Jobst Hoffmann, c/o University of Applied Sciences Aachen \\
% Aaachen, Germany \\
-% E-Mail: j.hoffmann \_at\_ fh-aachen.de
+% E-Mail: j.hoffmann\_(at)\_fh-aachen.de
% \end{quote}
% This program can be redistributed and/or modified under the terms of the LaTeX
% Project Public License, distributed from the CTAN archives as file |macros/latex/base/lppl.txt|;
@@ -691,6 +706,8 @@
% \else
% The following commands make up the driver of the documentation lieing before.
% \fi
+% \changes{v130}{10/09/21}{set additional option for (internally loaded)
+% package url to obey spaces}
% \changes{v-9.2}{10/01/18}{changed the selection of languages}
% \begin{macrocode}
%<*driver>
@@ -701,20 +718,24 @@
\else%
\def\secondarylanguage{ngerman}%
\fi
+
\documentclass[a4paper, \secondarylanguage, % select the language
\primarylanguage]{ltxdoc}
-\typeout{\string\primarylanguage: \primarylanguage, \string\language: \the\language}
-\usepackage{babel} % for switching the documentation language
-\usepackage{strukdoc} % the style-file for formatting this
- % documentation
-\usepackage[pict2e, % <--------------- to produce finer results
- % visible under xdvi, alternatives are
- % curves or emlines2 (visible only under
- % ghostscript), leave out if not
- % available
+
+\PassOptionsToPackage{obeyspaces}{url} % must be done before any package is
+ % loaded
+
+\usepackage{babel} % for switching the documentation language
+\usepackage{strukdoc} % the style-file for formatting this
+ % documentation
+
+\usepackage[pict2e, % <---------- to produce finer results
+ % visible under xdvi, alternatives are
+ % curves or emlines2 (visible only under
+ % ghostscript), leave out if not
+ % available
verification]
{struktex}
-\usepackage{url}
\GetFileInfo{struktex.sty}
\EnableCrossrefs
@@ -732,7 +753,10 @@
% to avoid underfull ... messages while formatting two/three columns
\hbadness=10000 \vbadness=10000
-\def\languageNGerman{8} % depends on language.dat!!!
+\typeout{\string\primarylanguage: \primarylanguage, \string\language: \the\language}
+
+\def\languageNGerman{10} % depends on language.dat, put
+ % \the\language here
\begin{document}
\makeatletter
@@ -744,7 +768,7 @@
% \end{macrocode}
%
% \section{\ifnum\language=\languageNGerman Die Benutzungsschnittstelle
-% \else The User Interface
+% \else The User interface
% \fi}
% \label{Schnittstelle}
% \label{interface}
@@ -759,7 +783,7 @@
% The \StrukTeXSty\ will be included in a \LaTeX-document like every other
% |.sty|-file by \foreign{package}:
% \begin{quote}
-% |\usepackage[|\meta{options}|{struktex}|
+% |\usepackage[|\meta{options}|]{struktex}|
% \end{quote}
% \fi
%
@@ -845,7 +869,7 @@
% \fi
%
% \subsection{\ifnum\language=\languageNGerman Spezielle Zeichen und Textdarstellung
-% \else Specific Characters and Text Representation
+% \else Specific characters and text representation
% \fi}
%
% \DescribeMacro{\nat}
@@ -915,8 +939,8 @@
%
% \subsection{\ifnum\language=\languageNGerman Makros zur Darstellung von Variablen, Schl"usselw"ortern
% und anderen programmierspezifischen Details
-% \else Macros for Representation of Variables, Keywords and other
-% Specific Details of Programming
+% \else Macros for representing variables, keywords and other
+% specific details of programming
% \fi}
%
% \DescribeMacro{\pVariable}
@@ -929,6 +953,48 @@
% \DescribeMacro{\pKeyword}
% \DescribeMacro{\pKey}
% \DescribeMacro{\pComment}
+% \changes{v131}{10/09/21}{changed location of documentation of new use of
+% struktxp.sty}
+% \changes{v130}{10/09/21}{enhanced the description of using source code}
+% \ifnum\language=\languageNGerman
+% Struktogramme enthalten manchmal direkt zu programmierenden Code.
+% Um hier ein einheitliches Aussehen zu erreichen, sind die hier
+% aufgeführten Makros definiert worden. Um diese Makros auch in anderem
+% Zusammenhang nutzen zu k"onnen, sind sie zu einem eigenen
+% \foreign{package} \textsf{struktxp.sty} zusammengefasst worden. Dabei
+% wird ab Version 122 zur Darstellung von Code auf das Paket
+% "`\textsf{url.sty}"' von Donald Arsenau zurückgegriffen, das es
+% ermöglicht, verbatim gesetzte Texte als Parameter an ein anderes Makro zu
+% übergeben. Wenn diese Texte ein Leerzeichen enthalten, das erhalten
+% bleiben soll, muss der Benutzer vor dem Laden von \textsf{url.sty},
+% typischerweise also vor der Anweisung
+% \begin{quote}
+% |\usepackage{struktex}|
+% \end{quote}
+% die Anweisung
+% \begin{quote}
+% |\PassOptionsToPackage{obeyspaces}{url}|
+% \end{quote}
+% setzen.
+% \else
+% Structured box charts sometimes include code, that has to be programmed
+% directly. For achieving a homogenous appearance the mentioned macros have
+% been defined. They have been collected in a separate package
+% \textsf{struktxp.sty} to be able to use them in another context. From
+% version 122 on \textsf{struktxp.sty} is based on "\textsf{url.sty}" of
+% Donald Arsenau. This package makes allows to pass verbatim texts as
+% parameters to other macros. If this verbatim stuff contains blank spaces,
+% which should be preserved, the user has to execute the command
+% \begin{quote}
+% |\PassOptionsToPackage{obeyspaces}{url}|
+% \end{quote}
+% before \textsf{url.sty} is loaded, that is in most of the cases before
+% the command
+% \begin{quote}
+% |\usepackage{struktex}|
+% \end{quote}
+% \fi
+%
% \ifnum\language=\languageNGerman
% Mit |\pVariable{|\meta{Variablenname}|}| wird ein Variablenname gesetzt.
% \meta{Variablenname} ist dabei ein Bezeichner eine Variable, wobei der
@@ -1107,23 +1173,23 @@
% \begin{quote}
% \input{struktex.tmp}
% \end{quote}
-% \ifnum\language=\languageNGerman
-% \else
-% \fi
+%
+% \changes{v130}{10/09/21}{removed unnecessary math mode}
% \ifnum\language=\languageNGerman
% Entsprechend k"onnen durch den Makro
% \begin{quote}
% |\sBoolValue{|\meta{Ja-Wert}|}{|\meta{Nein-Wert}|}|
% \end{quote}
-% die Werte von \cs{pTrue} und \cs{pFalse} umdefiniert werden. Somit liefern die
-% Zeilen
+% die Werte von \cs{pTrue} und \cs{pFalse} umdefiniert werden. Somit
+% liefern die Zeilen
% \begin{verbatimwrite}{struktex.tmp}
% \renewcommand{\pLanguage}{Pascal}
% \sBoolValue{\textit{ja}}{\textit{nein}}
-% \(\pFalse = \pKey{not}\ \pTrue\)
+% \pFalse{} = \pKey{not} \pTrue
% \end{verbatimwrite}
% \else
-% Similarly the values of \cs{pTrue} and \cs{pFalse} can be redefined by the macro
+% Similarly the values of \cs{pTrue} and \cs{pFalse} can be redefined by
+% the macro
% \begin{quote}
% |\sBoolValue{|\meta{Yes-Value}|}{|\meta{No-Value}|}|
% \end{quote}
@@ -1131,7 +1197,7 @@
% \begin{verbatimwrite}{struktex.tmp}
% \renewcommand{\pLanguage}{Pascal}
% \sBoolValue{\textit{yes}}{\textit{no}}
-% \(\pFalse = \pKey{not} \pTrue\)
+% \pFalse = \pKey{not} \pTrue
% \end{verbatimwrite}
% \fi
% \begin{quote}
@@ -1163,7 +1229,7 @@
% \fi
%
% \subsection{\ifnum\language=\languageNGerman Die Makros zur Erzeugung von Struktogrammen
-% \else The Macros for Generating Structured Box Charts
+% \else The Macros for generating structured box charts
% \fi}
%
% \DescribeEnv{struktogramm}
@@ -1262,11 +1328,12 @@
% \fi
%
% \ifnum\language=\languageNGerman
-% Der \textit{Text} wird normalerweise zentriert in den
-% Kasten gesetzt; ist er daf"ur zu lang, so wird ein Paragraph gesetzt.
+% Der \textit{Text} wird normalerweise linksbündig in den
+% Kasten gesetzt; ist er daf"ur zu lang, so wird ein Paragraph (im
+% Blocksatz) gesetzt.
% \else
-% The \textit{text} is normally set centered in the box. If the text is too long for
-% that, then a paragraph is set.
+% The \textit{text} is normally set centered in the box. If the text is too
+% long for that, then a (justified) paragraph is set.
% \fi
%
% \ifnum\language=\languageNGerman
@@ -1397,7 +1464,7 @@
% diesen in den eckigen Klammern an.
% \else
% The declaration of the title is optional. If the declaration is omitted, the standard
-% title: "'Providing Storage Space:"' will be generated.
+% title: `Providing Memory Space' will be generated.
% If one wants to have another text, it will be provided globally by
% \cs{declarationtitle}\marg{title}. If one wants to generate a special title for a
% certain structured box chart, one has to declare it within square brackets.
@@ -1600,7 +1667,7 @@
% \end{struktogramm}
% \end{verbatimwrite}
% \else
-% Now varibles will be specified more precisely:
+% Now variables will be specified more precisely:
% \begin{verbatimwrite}{struktex.tmp}
% \begin{struktogramm}(95,50)
% \assign{%
@@ -1630,18 +1697,17 @@
% \input{struktex.tmp}
% \end{quote}
%
+% \changes{v121}{10/08/31}{removed catcoding from example code}
% \ifnum\language=\languageNGerman
% Zuletzt die globale Vereinbarung eines Titels:
% \begin{verbatimwrite}{struktex.tmp}
% \def\declarationtitle{globale Variablen:}
% \begin{struktogramm}(95,13)
-% {\catcode`\_=12%
-% \assign{%
-% \begin{declaration}
-% \description{\pVar{iVar_g}}{eine \pKey{int}-Variable}
-% \end{declaration}
-% }
-% }
+% \assign{%
+% \begin{declaration}
+% \description{\pVar{iVar_g}}{eine \pKey{int}-Variable}
+% \end{declaration}
+% }
% \end{struktogramm}
% \end{verbatimwrite}
% \else
@@ -1649,13 +1715,11 @@
% \begin{verbatimwrite}{struktex.tmp}
% \def\declarationtitle{global variables}
% \begin{struktogramm}(95,13)
-% {\catcode`\_=12%
-% \assign{%
-% \begin{declaration}
-% \description{\pVar{iVar_g}}{an \pKey{int} variable}
-% \end{declaration}
-% }
-% }
+% \assign{%
+% \begin{declaration}
+% \description{\pVar{iVar_g}}{an \pKey{int} variable}
+% \end{declaration}
+% }
% \end{struktogramm}
% \end{verbatimwrite}
% \fi
@@ -2749,7 +2813,7 @@
%
%
% \section{\ifnum\language=\languageNGerman Beipieldatei zum Einbinden in die Dokumentation
-% \else Example File for tieing in the Documentation
+% \else Example file for including into the documentation
% \fi}
% \label{Beispiel}
% \label{example}
@@ -2777,16 +2841,16 @@
% \section{\ifnum\language=\languageNGerman
% Verschiedene Beispieldateien
% \else
-% Some Example Files
+% Some example files
% \fi}
%
-% \subsection[\ifnum\language=\languageNGerman Beispieldatei Nr. 1\else Example
-% File No 1\fi]{\ifnum\language=\languageNGerman
+% \subsection[\ifnum\language=\languageNGerman Beispieldatei Nr. 1\else example
+% file no 1\fi]{\ifnum\language=\languageNGerman
% Beispieldatei zum Austesten der Makros des \StrukTeXSty{} ohne die
% Benutzung optionaler Pakete
% \else
-% Example File for Testing Purposes of the Macros of \StrukTeXSty{}
-% without any Optional Packages
+% Example file for testing purposes of the macros of \StrukTeXSty{}
+% without any optional packages
% \fi}
%
% \changes{v-4.1c}{95/07/24}{Eigene Datei zum Austesten der Makros integriert}
@@ -2838,12 +2902,12 @@
% \end{macrocode}
%
%
-% \subsection[\ifnum\language=\languageNGerman Beispieldatei Nr. 2\else Example
-% File No 2\fi]{\ifnum\language=\languageNGerman
+% \subsection[\ifnum\language=\languageNGerman Beispieldatei Nr. 2\else example
+% file no 2\fi]{\ifnum\language=\languageNGerman
% Beispieldatei zum Austesten der Makros des \StrukTeXSty{} mit dem Paket
% \textsf{pict2e.sty}
% \else
-% Example File for Testing Purposes of the Macros of \StrukTeXSty{}
+% Example file for testing purposes of the macros of \StrukTeXSty{}
% with the package \textsf{pict2e.sty}
% \fi}
%%
@@ -2908,11 +2972,11 @@
%</example3>
% \end{macrocode}
%
-% \subsection[\ifnum\language=\languageNGerman Beispieldatei Nr. 3\else Example
-% File No 3\fi]{\ifnum\language=\languageNGerman
+% \subsection[\ifnum\language=\languageNGerman Beispieldatei Nr. 3\else example
+% file no 3\fi]{\ifnum\language=\languageNGerman
% Beispieldatei zum Austesten der Makros des \textsf{struktxp.sty}
% \else
-% Example File for Testing the Macros of \textsf{struktxp.sty}
+% Example file for testing the macros of \textsf{struktxp.sty}
% \fi}
%
% \ifnum\language=\languageNGerman
@@ -2922,15 +2986,17 @@
% |\usepackage[T1]{fontenc}| gel"oscht werden. Der Text ist nur in Englisch
% vorgegeben.
% \else
-% The following lines build a model file, which can be used for testing the macros
-% of \textsf{struktxp.sty}. For testing one should delete the comment characters
-% before the line |\usepackage[T1]{fontenc}|.
+% The following lines build a sample file, which can be used for testing
+% the macros of \textsf{struktxp.sty}. For testing one should delete the
+% comment characters before the line |\usepackage[T1]{fontenc}|.
% \fi
+% \changes{v121}{10/08/31}{added babel package to the test of struktxp}
% \begin{macrocode}
%<*example4>
-\documentclass{article}
+\documentclass[english]{article}
-\usepackage{struktxp,struktxf}
+\usepackage{babel}
+\usepackage{struktex}
\nofiles
@@ -3167,10 +3233,10 @@ Without \textit{italic correction}:
%
%
% \subsection[\ifnum\language=\languageNGerman Beispieldatei Nr. 4\else Example
-% File No 4\fi]{\ifnum\language=\languageNGerman
+% file no 4\fi]{\ifnum\language=\languageNGerman
% Beispieldatei zum Austesten der Makros des \textsf{struktxp.sty}
% \else
-% Example File for Testing the Macros of \textsf{struktxp.sty}
+% Example file for testing the macros of \textsf{struktxp.sty}
% \fi}
%
% \ifnum\language=\languageNGerman
@@ -3264,7 +3330,7 @@ Without \textit{italic correction}:
% \section{\ifnum\language=\languageNGerman
% Makros zur Erstellung der Dokumentation des \StrukTeXSty
% \else
-% Macros for Generating the Documentation of the \StrukTeXSty
+% Macros for generating the documentation of the \StrukTeXSty
% \fi}
%
% \ifnum\language=\languageNGerman
@@ -3275,12 +3341,11 @@ Without \textit{italic correction}:
% Auszeichnung der Beispiele, die Implementation der Abk"urzungen wurde in
% \cite{Neubauer:MikrotypographieI} vorgeschlagen.
% \else
-% For easier formatting of documentation some macros are used,
+% To simplify the formatting of the documentation some macros are used,
% which are collected in a particular \textsf{.sty} file. An essential part
-% is based on
-% a modification of the \texttt{newtheorem} environment out of \textsf{latex.sty}
-% for distinguishing examples. The implementation of abbreviations has been
-% proposed in \cite{Neubauer:MikrotypographieI}.
+% is based on a modification of the \texttt{newtheorem} environment out of
+% \textsf{latex.sty} for distinguishing examples. The implementation of
+% abbreviations has been proposed in \cite{Neubauer:MikrotypographieI}.
% \fi
%
% \ifnum\language=\languageNGerman
@@ -3294,9 +3359,9 @@ Without \textit{italic correction}:
% \else
% Therefore some instructions of \textsf{verbatim.sty} have been adopted and
% modified, so that writing and reading by the |docstrip| package works.
-% Finally an idea of Tobias Oetiker out of \textsf{layout.sty} also has been used,
-% which has been developed in connection with \foreign{lshort2e.tex - The not
-% so short introduction to LaTeX2e}.
+% Finally an idea of Tobias Oetiker out of \textsf{layout.sty} also has
+% been used, which has been developed in connection with "|lshort2e.tex| --
+% The not so short introduction to LaTeX2e".
% \fi
% \changes{v-8.0e}{05/05/17}{nun wird die .pdf-Ausgabe sauber abgefangen}
% \begin{macrocode}
@@ -3827,7 +3892,7 @@ sed -e "`echo \"s/^ /@/g\" | tr '@' '\011'`" struktex.mk > Makefile
% alle Kommandos automatisch abgefragt werden.}
% \section{\ifnum\language=\languageNGerman Stil Datei zur einfachen
% Eingabe von Struktogrammen beim Arbeiten mit dem (X)emacs und AUC\TeX
-% \else Style File for Easier Input while working with (X)emacs
+% \else Style File for easier input while working with (X)emacs
% and AUC\TeX
% \fi}
% \label{AUCTeX}
@@ -3868,8 +3933,8 @@ sed -e "`echo \"s/^ /@/g\" | tr '@' '\011'`" struktex.mk > Makefile
;; Copyright (C) 2006 Free Software Foundation, Inc.
-;; Author: J. Hoffmann <j.hoffmann_at_fh-aachen.de>
-;; Maintainer: j.hoffmann_at_fh-aachen.de
+;; Author: J. Hoffmann <j.hoffmann_(at)_fh-aachen.de>
+;; Maintainer: j.hoffmann_(at)_fh-aachen.de
;; Created: 2006/01/17
;; Keywords: tex
@@ -4130,7 +4195,7 @@ These are the optional height and the required argument condition"
%
% \clearpage
%
-% \section{\ifnum\language=\languageNGerman Die Implementation \else The Implementation \fi}
+% \section{\ifnum\language=\languageNGerman Die Implementation \else The implementation \fi}
%
% \ifnum\language=\languageNGerman
% Der \StrukTeXSty\ stellt eine einfache Implementation der beschriebenen
@@ -4147,7 +4212,7 @@ These are the optional height and the required argument condition"
% sideeffects with other \foreign{packages} as far as possible.
% \fi
%
-% \subsection{\ifnum\language=\languageNGerman Allgemeines \else General \fi}
+% \subsection{\ifnum\language=\languageNGerman Allgemeines \else general \fi}
%
% \changes{v084}{10/06/24}{removed flag preventing double load of the package}
% \begin{macrocode}
@@ -4161,17 +4226,18 @@ These are the optional height and the required argument condition"
% \textsf{ifthen.sty} geladen, falls es noch nicht anderweitig angefordert
% wurde.
% \else
-% This is a package, that has been developed for \LaTeX2e. Hence it will be put out
-% an adequate error message, if another format is used, which should not lead to
-% errors. In addition the package \textsf{ifthen.sty} will be loaded, if not already
-% done.
+% This is a package, that has been developed for \LaTeX2e. Hence it will be
+% print an adequate error message, if another format is used, which should
+% not lead to any errors. In addition the package \textsf{ifthen.sty} will
+% be loaded, if not already done.
% \fi
-% \changes{v-4.4b}{96/03/13}{`RequirePackage umgestellt wg. korrekter Versionsmeldung}
+% \changes{v-4.4b}{96/03/13}{`RequirePackage umgestellt wg. korrekter
+% Versionsmeldung}
% \ifnum\language=\languageNGerman
% Nun wird das Einlesen des Makropakets mit der aktuellen
% Versionsnummer gemeldet.
% \else
-% Now reading in of macro package with the actual number of version will
+% Now loading of the macro package with the actual version number will
% be messaged.
% \fi
% \begin{macrocode}
@@ -4199,9 +4265,21 @@ These are the optional height and the required argument condition"
% version these macros are eliminated by the command:%
% \fi%
% \begin{verbatim}
+%sed -e "/dbg/d" struktex.dtx > struktex.dtx.dbg
% \end{verbatim}
% \changes{v061}{10/05/31}{added some debugging macros}
% \begin{macrocode}
+\newcommand{\dbgString@nss}[1]{\typeout{===> dbg String:\space#1}}
+\newcommand{\dbgCount@nss}[2][]{%
+ \def\argI{#1}% ^^A dbg
+ \typeout{===> dbg Count:\space\space\ifx\argI\empty\else(#1)\space\fi\string#2 = \the#2}}
+\newcommand{\dbgCoord@nss}[3][]{%
+ \def\argI{#1}% ^^A dbg
+ \typeout{===> dbg Coord:\space\space\ifx\argI\empty\else(#1)\space\fi(\string#2,
+ \string#3) = (\the#2, \the#3)}}% ^^A dbg
+\newcommand{\dbgMark@nss}[3][]{%
+ \def\argI{#1}% ^^A dbg
+ \put(#2,#3){\makebox(0,0)[cc]{\ifx\argI\empty$\bullet$\else#1\fi}}}% ^^A dbg
% \end{macrocode}
% \changes{v075}{10/06/23}{added some more documentation about options}
% \changes{v-5.3a}{98/11/27}{Option \texttt{emlines} eingef"uhrt}
@@ -4219,27 +4297,25 @@ These are the optional height and the required argument condition"
% \textsf{pict2e} (option "|pict2e|") is supported, these packages are
% loaded here.%
% \fi
+% \changes{v104}{10/08/15}{some editorial changes}
% \begin{macrocode}
\newboolean{curves}
\newboolean{emlines}
\newboolean{pictIIe}
\newboolean{anygradient}
-\DeclareOption{curves}%
-{%
+\DeclareOption{curves}{%
\setboolean{anygradient}{true}
\setboolean{curves}{true}
\setboolean{emlines}{false}
\setboolean{pictIIe}{false}
}
-\DeclareOption{emlines}%
-{%
+\DeclareOption{emlines}{%
\setboolean{anygradient}{true}
\setboolean{curves}{false}
\setboolean{emlines}{true}
\setboolean{pictIIe}{false}
}
-\DeclareOption{pict2e}%
-{%
+\DeclareOption{pict2e}{%
\setboolean{anygradient}{true}
\setboolean{curves}{false}
\setboolean{emlines}{false}
@@ -4247,6 +4323,32 @@ These are the optional height and the required argument condition"
}
% \end{macrocode}
%
+% \ifnum\language=\languageNGerman
+% Zur Unterstützung der Internationalisierung werden feste Texte in der
+% jeweilig benutzten Sprache (beispielsweise als |babel|-Option definiert)
+% hier vorbereitet.
+% \else
+% To support i18n as provided by |babel| here are some common fixed texts:
+% \fi
+% \changes{v121}{10/08/31}{added some more translations}
+% \changes{v104}{10/08/15}{first steps to babel support}
+% \begin{macrocode}
+\DeclareOption{english}{%
+ \def\declarationtitlename@nss{providing memory space:}%
+ \def\pTruename@nss{true}%
+ \def\pFalsename@nss{false}%
+}
+\DeclareOption{german}{%
+ \def\declarationtitlename@nss{Speicherplatz bereitstellen:}
+ \def\pTruename@nss{WAHR}%
+ \def\pFalsename@nss{FALSCH}%
+}
+\DeclareOption{ngerman}{%
+ \def\declarationtitlename@nss{Speicherplatz bereitstellen:}
+ \def\pTruename@nss{WAHR}%
+ \def\pFalsename@nss{FALSCH}%
+}
+%
% \changes{v-7.0a}{04/01/05}{Option \texttt{verification} eingef"uhrt}
% \ifnum\language=\languageNGerman
% Ab der Version 7.0a kennt \StrukTeX{} eine Option "`|verification|"', die
@@ -4321,8 +4423,9 @@ These are the optional height and the required argument condition"
% \else%
% Now load additional packages and process the options.%
% \fi
+% \changes{v104}{10/08/15}{corrected `ProcessOptions call}
% \begin{macrocode}
-\ProcessOptions
+\ProcessOptions*\relax
\ifcurves%
\RequirePackage{curves}
\else\ifemlines
@@ -4348,7 +4451,7 @@ These are the optional height and the required argument condition"
% \end{macro}
%
% \subsection{\ifnum\language=\languageNGerman Diverse Makros zur Vorbereitung
-% \else Various Macros for Preparation
+% \else Various macros for preparation
% \fi}
%
% \changes{v-4.1c}{95/07/24}{Eigene Datei f"ur spezielle Fonts anlegen}
@@ -4454,36 +4557,25 @@ These are the optional height and the required argument condition"
}
\MathItalics
%</struktxf>
-%<*struktex>
% \end{macrocode}
% \end{macro}
% \end{macro}
%
% \subsection[\ifnum\language=\languageNGerman Darstellung von Variablen
-% etc.\else Representation of Varibles etc.\fi]{\ifnum\language=\languageNGerman
+% etc.\else Representation of variables etc.\fi]{\ifnum\language=\languageNGerman
% Makros zur Darstellung von Variablen,
% Schl"usselw"ortern und anderen programmierspezifischen
% Details
-% \else Macros for Representation of Variables, Keywords and
-% other specific Details of Programming
+% \else Macros for representing of variables, keywords and
+% other specific details of programming
% \fi}
%
-% \ifnum\language=\languageNGerman
-% Struktogramme enthalten manchmal direkt zu programmierenden Code.
-% Um hier ein einheitliches Aussehen zu erreichen, sind die folgenden
-% Makros definiert worden. Um diese Makros auch in anderem Zusammenhang
-% nutzen zu k"onnen, sind sie zu einem eigenen \foreign{package}
-% \textsf{struktxp.sty} zusammengefasst worden.
-% \else
-% Structured box charts sometimes include code, that has to be programmed
-% directly. For achieving a homogenous appearance the following macros have
-% been defined. They have been collected in a seperate \foreign{package}
-% \textsf{struktxp.sty} to be able to use them in another connection.
-% \fi
+% \changes{v121}{10/08/31}{removed unnecessary test to prevent double
+% loading of package}
+% \changes{v121}{10/08/31}{added package url as an requirement}
% \begin{macrocode}
-%</struktex>
%<*struktxp>
-\@ifundefined{pVariable}{}{\endinput}
+\RequirePackage{url}
% \end{macrocode}
%
% \begin{macro}{\pExpFont@nss}
@@ -4521,18 +4613,17 @@ These are the optional height and the required argument condition"
% setting variable names, keywords and comments:
% \fi
% \begin{macrocode}
-\newcommand{\pFonts}[3]%
-{%
- \def\argi@nss{#1} \def\argii@nss{#2} \def\argiii@nss{#3}
- \ifx\argi@nss\empty\else%
- \renewcommand{\pExpFont@nss}{#1}%
- \fi%
- \ifx\argii@nss\empty\else%
- \renewcommand{\pKeyFont@nss}{#2}%
- \fi%
- \ifx\argiii@nss\empty\else%
- \renewcommand{\pCommentFont@nss}{#3}%
- \fi%
+\newcommand{\pFonts}[3]{%
+ \def\argi@nss{#1} \def\argii@nss{#2} \def\argiii@nss{#3}%
+ \ifx\argi@nss\empty\else%
+ \renewcommand{\pExpFont@nss}{#1}%
+ \fi%
+ \ifx\argii@nss\empty\else%
+ \renewcommand{\pKeyFont@nss}{#2}%
+ \fi%
+ \ifx\argiii@nss\empty\else%
+ \renewcommand{\pCommentFont@nss}{#3}%
+ \fi%
}
% \end{macrocode}
% \end{macro}
@@ -4571,9 +4662,8 @@ These are the optional height and the required argument condition"
% \cs{pVariable}.
% \fi
% \begin{macrocode}
-\newcommand{\pExpression}%
-{%
- \bgroup%
+\newcommand{\pExpression}{%
+ \bgroup%
% \end{macrocode}
% \ifnum\language=\languageNGerman
% Zun"achst werden die ben"otigten \foreign{catcodes} auf Sonstige --
@@ -4586,23 +4676,23 @@ These are the optional height and the required argument condition"
% \ifnum\language=\languageNGerman
% \DeleteShortVerb{\|}
% \begin{tabular}{r|l}
-% \foreign{catcode} & Bedeutung \\\hline
-% 1 & Gruppenanfang \\
-% 2 & Gruppenende \\
-% 4 & Tabulatorzeichen \\
-% 8 & Index \\
-% 12& Sonstige \\
+% \foreign{catcode} & Bedeutung \\\hline
+% 1 & Gruppenanfang \\
+% 2 & Gruppenende \\
+% 4 & Tabulatorzeichen \\
+% 8 & Index \\
+% 12& Sonstige \\
% \end{tabular}
% \MakeShortVerb{\|}
% \else
% \DeleteShortVerb{\|}
% \begin{tabular}{r|l}
-% \foreign{catcode} &Meaning \\\hline
-% 1 & Group Begin \\
-% 2 & Group End \\
-% 4 & Tabulator Character \\
-% 8 & Index \\
-% 12& Other \\
+% \foreign{catcode} &Meaning \\\hline
+% 1 & Group Begin \\
+% 2 & Group End \\
+% 4 & Tabulator Character \\
+% 8 & Index \\
+% 12& Other \\
% \end{tabular}
% \MakeShortVerb{\|}
% \fi
@@ -4617,15 +4707,16 @@ These are the optional height and the required argument condition"
% \else
% In a variable the following special characters are allowed:
% \begin{enumerate}
-% \item the Underline "'|_|"',
-% \item the Hat "'|^|"' and
-% \item the Commercial And "'|&|"'.
+% \item the Underline `|_|',
+% \item the Hat `|^|' and
+% \item the Ampersand `|&|'.
% \end{enumerate}
% \fi
%
% \begin{macrocode}
- \catcode`\_=12 \catcode`\^=12 \catcode`\&=12 %
- \pUseExpFont@nss%
+ \catcode`\_=13 \let\_\textunderscore%
+ \catcode`\^=12 \catcode`\&=12 %
+ \pUseExpFont@nss%
}
\let\pExp=\pExpression
% \end{macrocode}
@@ -4658,12 +4749,11 @@ These are the optional height and the required argument condition"
% der gleichen Bedeutung definiert. Diese dienen allein der
% R"uckw"artskompatibilit"at.
% \begin{macrocode}
-\newcommand{\pVariable}%
-{%
- \bgroup%
- \catcode`\_=13 \let\_\textunderscore
- \catcode`\#=12 \catcode`\^=12 \catcode`\&=12 %
- \pVariabl@%
+\newcommand{\pVariable}{%
+ \begingroup%
+ \catcode`\_=13 \let\_\textunderscore
+ \catcode`\#=12 \catcode`\^=12 \catcode`\&=12 %
+ \pVariabl@%
}
\let\pVar=\pVariable
\let\pKeyword=\pVariable
@@ -4682,38 +4772,38 @@ These are the optional height and the required argument condition"
% erfolgte nach einem Hinweis von Ludger Humbert, Universit"at Dortmund, von
% dem auch die Liste der Schl"usselw"orter stammt, vielen Dank!}
% \begin{macrocode}
-\newcommand{\pVariabl@}[1]
-{%
+\newcommand{\pVariabl@}[1]{%
\def\arg{#1}%
\ifx\pLanguage@nss\Cee@nss%
- \CheckForKeyword@nss{auto,break,case,char,const,continue,default,do,double,%
- else,enum,extern,float,for,goto,if,int,long,register,return,%
- short,signed,sizeof,static,struct,switch,typedef,union,unsigned,%
- void,volatile,while}%
+ \CheckForKeyword@nss{auto,break,case,char,const,continue,default,do,double,%
+ else,enum,extern,float,for,goto,if,int,long,register,return,%
+ short,signed,sizeof,static,struct,switch,typedef,union,unsigned,%
+ void,volatile,while}%
\else\ifx\pLanguage@nss\Java@nss%
- \CheckForKeyword@nss{abstract,boolean,break,byte,case,catch,char,class,const,%
- continue,default,do,double,else,extends,final,finally,float,for,%
- goto,if,implements,import,instanceof,int,interface,long,native,%
- new,null,package,private,protected,public,return,short,static,%
- super,switch,synchronized,this,throw,throws,transient,try,void,%
- volatile,while,true,false}%
+ \CheckForKeyword@nss{abstract,boolean,break,byte,case,catch,char,class,const,%
+ continue,default,do,double,else,extends,final,finally,float,for,%
+ goto,if,implements,import,instanceof,int,interface,long,native,%
+ new,null,package,private,protected,public,return,short,static,%
+ super,switch,synchronized,this,throw,throws,transient,try,void,%
+ volatile,while,true,false}%
\else\ifx\pLanguage@nss\Pascal@nss%
- \CheckForKeyword@nss{alfa,and,array,begin,boolean,byte,case,char,const,div,do,%
- downto,else,end,false,file,for,function,get,goto,if,in,integer,%
- label,maxint,mod,new,not,of,or,pack,packed,page,program,put,%
- procedure,read,readln,real,record,repeat,reset,rewrite,set,text,%
- then,to,true,type,unpack,until,var,while,with,write,writeln}%
+ \CheckForKeyword@nss{alfa,and,array,begin,boolean,byte,case,char,const,div,do,%
+ downto,else,end,false,file,for,function,get,goto,if,in,integer,%
+ label,maxint,mod,new,not,of,or,pack,packed,page,program,put,%
+ procedure,read,readln,real,record,repeat,reset,rewrite,set,text,%
+ then,to,true,type,unpack,until,var,while,with,write,writeln}%
\else\ifx\pLanguage@nss\Python@nss%
- \CheckForKeyword@nss{and,assert,break,class,continue,def,del,elif,else,%
- except,exec,finally,for,from,global,if,import,in,is,lambda,not,or,%
- pass,print,raise,return,try,while,yield}%
+ \CheckForKeyword@nss{and,assert,break,class,continue,def,del,elif,else,%
+ except,exec,finally,for,from,global,if,import,in,is,lambda,not,or,%
+ pass,print,raise,return,try,while,yield}%
\else\ifx\pLanguage@nss\LaTeX@nss%
- \CheckForKeyword@nss{center,description,enumerate,figure,itemize,
- list,quote,tabbing,tabular,table,}%
+ \CheckForKeyword@nss{center,description,enumerate,figure,itemize,
+ list,quote,tabbing,tabular,table,}%
\else%
- \CheckForKeyword@nss{}%
+ \CheckForKeyword@nss{}%
\fi\fi\fi\fi\fi%
- \egroup%
+ \url{#1}
+ \endgroup%
}
% \end{macrocode}
% \end{macro}
@@ -4749,6 +4839,8 @@ These are the optional height and the required argument condition"
% \end{macro}
%
% \begin{macro}{\CheckForKeyword@nss}
+% \changes{v130}{10/09/21}{selection of the font is now done by a macro
+% from url.sty}
% \changes{v-5.4a}{99/11/16}{neu definiert}
% Die Liste der Schl"usselw"orter wird der Reihe nach durchlaufen und mit
% dem aktuellen Argument \cs{arg} verglichen.
@@ -4761,8 +4853,7 @@ These are the optional height and the required argument condition"
{%
\def\token{##1}%
\ifx\token\endList%
- \ifmmode\else\let\mbox=\relax\fi%
- \mbox{\exec\selectfont\arg}%
+ \def\UrlFont{\exec}
\else%
\ifx\token\arg%
\let\exec\pKeyFont@nss%
@@ -4822,15 +4913,15 @@ These are the optional height and the required argument condition"
% \errorstopmode
% \begin{macrocode}
{%
- \catcode`\#=6%
- \gdef\pUseKeyFont@nss#1{%
- \ifmmode\else\let\mbox=\relax\fi%
- \mbox{\pKeyFont@nss{#1}}\egroup%
- }
- \gdef\pUseExpFont@nss#1{%
- \ifmmode\else\let\mbox=\relax\fi%
- \mbox{\pExpFont@nss{#1}}\egroup%
- }
+ \catcode`\#=6%
+ \gdef\pUseKeyFont@nss#1{%
+ \ifmmode\else\let\mbox=\relax\fi%
+ \mbox{\pKeyFont@nss{#1}}\egroup%
+ }
+ \gdef\pUseExpFont@nss#1{%
+ \ifmmode\else\let\mbox=\relax\fi%
+ \mbox{\pExpFont@nss{#1}}\egroup%
+ }
}
% \end{macrocode}
% \end{macro}
@@ -4846,8 +4937,8 @@ These are the optional height and the required argument condition"
% The default of the boolean values \cs{pTrue} and \cs{pFalse}:
% \fi
% \begin{macrocode}
-\newcommand{\pTrue@nss}{\texttt{WAHR}}
-\newcommand{\pFalse@nss}{\texttt{FALSCH}}
+\newcommand{\pTrue@nss}{\texttt{\pTruename@nss}}
+\newcommand{\pFalse@nss}{\texttt{\pFalsename@nss}}
% \end{macrocode}
% \end{macro}
% \end{macro}
@@ -4886,10 +4977,9 @@ These are the optional height and the required argument condition"
% structured box charts.
% \fi
% \begin{macrocode}
-\newcommand{\pBoolValue}[2]%
-{%
- \renewcommand{\pTrue@nss}{#1}%
- \renewcommand{\pFalse@nss}{#2}%
+\newcommand{\pBoolValue}[2]{%
+ \renewcommand{\pTrue@nss}{#1}%
+ \renewcommand{\pFalse@nss}{#2}%
}
\let\sBoolValue=\pBoolValue
% \end{macrocode}
@@ -4923,7 +5013,7 @@ These are the optional height and the required argument condition"
% \end{macro}
% \end{macro}
%
-% \subsection{\ifnum\language=\languageNGerman Belegung von Registern \else Reservation of Registers \fi}
+% \subsection{\ifnum\language=\languageNGerman Belegung von Registern \else Reservation of registers \fi}
%
% \begin{macro}{\savelength@nss}
% \changes{v-4.0b}{95/05/02}{umbenannt von `s@velength}
@@ -5084,7 +5174,7 @@ These are the optional height and the required argument condition"
% \end{macro}
% \end{macro}
%
-% \subsection{\ifnum\language=\languageNGerman Die einzelnen Makros \else The single Macros \fi}
+% \subsection{\ifnum\language=\languageNGerman Die einzelnen Makros \else The single macros \fi}
%
% \begin{macro}{\filler@nss}
% \changes{v-8.2a}{06/01/17}{`ifmmode $\rightarrow$ `ensuremath}
@@ -5453,9 +5543,13 @@ These are the optional height and the required argument condition"
% \changes{v061}{10/05/31}{added some debug code}
% \begin{macrocode}
\def\str@kt#1#2#3{%
+ \dbgString@nss{Beginn \string\str@kt}
\global\gx@nss=#1\global\gy@nss=#2\global\gsize@nss=#3%
\begingroup%
\x@nss=\gx@nss\y@nss=\gy@nss\xsize@nss=\gsize@nss%
+ \dbgString@nss{rectangle size}
+ \dbgCoord@nss[Ursprung]{\x@nss}{\y@nss}
+ \dbgCount@nss[Breite]{\xsize@nss}
}
% \end{macrocode}
% \end{macro}
@@ -5476,6 +5570,7 @@ These are the optional height and the required argument condition"
\global\gy@nss=\y@nss%
\endgroup%
\ydepth@nss=\gy@nss%
+ \dbgString@nss{Ende \string\str@kt}
}
% \end{macrocode}
% \end{macro}
@@ -5498,12 +5593,16 @@ These are the optional height and the required argument condition"
% \cs{xsize@nss} decremented by |#2|. If this value is less than the
% natural width of the first parameter the text will be set into a vertical box.
% \fi
+% \changes{v104}{10/08/15}{corrected position of texts in `set@nss}
% \begin{macrocode}
\def\set@nss#1#2{%
+ \dbgString@nss{Beginn \string\set@nss}
\setbox\TextBox@nss=\hbox{#1}%
\tempxx@nss=\xsize@nss\advance\tempxx@nss by-#2%
\ifdim\wd\TextBox@nss>\tempxx@nss\unitlength%
\setbox\TextBox@nss=\vbox{\hsize=\tempxx@nss\unitlength\noindent#1}%
+ \else
+ \setbox\TextBox@nss=\hbox to \tempxx@nss\unitlength{#1\hss}%
\fi%
}
% \end{macrocode}
@@ -5527,16 +5626,20 @@ These are the optional height and the required argument condition"
% \fi
% \begin{macrocode}
\def\block@nss#1#2{%
+ \dbgString@nss{Beginn \string\block@nss}
\tempy@nss=#1%
% \end{macrocode}
% At first we compute the height of the text (in pt):
% \begin{macrocode}
+ \dbgCount@nss{\ydepth@nss}
\TextBoxHt@nss=\ht\TextBox@nss%
\advance\TextBoxHt@nss by\dp\TextBox@nss%
\advance\TextBoxHt@nss by 2mm%
+ \dbgCount@nss[original]{\TextBoxHt@nss}
\ifdim\TextBoxHt@nss<\tempy@nss\unitlength%
\TextBoxHt@nss=\tempy@nss\unitlength%
\fi%
+ \dbgCount@nss[korrigiert]{\TextBoxHt@nss}
% \end{macrocode}
% \ifnum\language=\languageNGerman
% \else
@@ -5546,6 +5649,7 @@ These are the optional height and the required argument condition"
% \fi
% \begin{macrocode}
\TextBoxHt@nss=0.00536\TextBoxHt@nss%
+ \dbgCount@nss[skaliert]{\TextBoxHt@nss}
% \end{macrocode}
% \ifnum\language=\languageNGerman
% Wegen der Orientierung Koordinatensystems wird der Ursprung des zu
@@ -5558,6 +5662,8 @@ These are the optional height and the required argument condition"
% \fi
% \begin{macrocode}
\ydepth@nss=\TextBoxHt@nss\advance\y@nss by-\ydepth@nss%
+ \dbgCoord@nss[Ursprung]{\x@nss}{\y@nss}
+ \dbgCoord@nss[Breite, Hoehe]{\xsize@nss}{\ydepth@nss}
\ifx#21%
\put(\x@nss,\y@nss){%
\framebox(\xsize@nss,\ydepth@nss){\box\TextBox@nss}%
@@ -5584,8 +5690,7 @@ These are the optional height and the required argument condition"
% representation.
% \fi
% \begin{macrocode}
-\def\declarationtitle{\ifnum\language=\languageNGerman Speicherplatz bereitstellen:
- \else providing memory space\fi}
+\def\declarationtitle{\declarationtitlename@nss}
% \end{macrocode}
% \end{macro}
%
@@ -5718,6 +5823,9 @@ These are the optional height and the required argument condition"
% \begin{macrocode}
\def\assign{\let\next=\@assign\getoption}%
\def\@assign#1{%
+ \dbgString@nss{Beginn \string\@assign}
+ \dbgCoord@nss[Ursprung]{\x@nss}{\y@nss}
+ \dbgCount@nss[Breite]{\xsize@nss}
% \end{macrocode}
% \ifnum\language=\languageNGerman
% Das Setzen einer Zuweisung enth"alt Schritte, die immer wieder
@@ -5761,6 +5869,8 @@ These are the optional height and the required argument condition"
% \fi
% \begin{macrocode}
\block@nss{\tempy@nss}{1}%
+ \dbgString@nss{Ende \string\@assign}
+ \dbgCoord@nss[Ursprung]{\x@nss}{\y@nss}
}
% \end{macrocode}
% \end{macro}
@@ -5966,6 +6076,7 @@ These are the optional height and the required argument condition"
% \begin{macrocode}
\def\ifthenelse@nss{\let\next=\@ifthenelse@nss\getoption}
\def\@ifthenelse@nss#1#2#3#4#5{%
+ \dbgString@nss{Beginn \string\@ifthenelse@nss}
% \end{macrocode}
% \ifnum\language=\languageNGerman
% Die 5 Parameter sind:
@@ -6172,6 +6283,7 @@ These are the optional height and the required argument condition"
\xx@nss=\x@nss\advance\xx@nss by \tempx@nss%
\put(\xx@nss,\y@nss){\makebox(\tempxx@nss,\tempyy@nss){#5}}%
\str@kt{\x@nss}{\y@nss}{\tempx@nss}%
+ \dbgString@nss{Ende \string\@ifthenelse@nss}
}
% \end{macrocode}
% \end{macro}
@@ -6186,6 +6298,7 @@ These are the optional height and the required argument condition"
% \changes{v061}{10/05/31}{added debug code}
% \begin{macrocode}
\def\change{%
+ \dbgString@nss{\string\change}
\endstr@kt\str@kt{\xx@nss}{\y@nss}{\tempxx@nss}%
}
% \end{macrocode}
@@ -6203,6 +6316,7 @@ These are the optional height and the required argument condition"
% \changes{v061}{10/05/31}{added debug code}
% \begin{macrocode}
\def\ifend@nss{%
+ \dbgString@nss{Beginn \string\ifend@nss}
\global\gy@nss=\y@nss\endgroup\tempy@nss=\gy@nss%
\ifnum\tempy@nss<\ydepth@nss%
\y@nss=\tempy@nss\advance\ydepth@nss by-\tempy@nss%
@@ -6223,6 +6337,7 @@ These are the optional height and the required argument condition"
\y@nss=\ydepth@nss%
\fi%
\fi%
+ \dbgString@nss{Ende \string\ifend@nss}
}
% \end{macrocode}
% \end{macro}
@@ -6298,6 +6413,7 @@ These are the optional height and the required argument condition"
% \begin{macrocode}
\def\while{\let\next=\@while\getoption}
\def\@while#1{%
+ \dbgString@nss{Beginn \string\@while}
\tempx@nss=\xsize@nss\divide\tempx@nss by 6
\set@nss{#1\hskip\xsize@nss\unitlength}{\tempx@nss}
\tempy@nss=\number\param@nss000 \block@nss{\tempy@nss}{0}
@@ -6310,6 +6426,7 @@ These are the optional height and the required argument condition"
\endstr@kt\tempy@nss=\y@nss\advance\tempy@nss by-\ydepth@nss
\y@nss=\ydepth@nss
\put(\x@nss,\y@nss){\framebox(\xsize@nss,\tempy@nss){}}%
+ \dbgString@nss{Ende \string\whileend}
}
% \end{macrocode}
% \end{macro}
@@ -6420,6 +6537,7 @@ These are the optional height and the required argument condition"
% \begin{macrocode}
\def\case{\let\next=\@case\getoption}
\def\@case#1#2#3#4{%
+ \dbgString@nss{Beginn \string\@case}
% \end{macrocode}
% \ifnum\language=\languageNGerman
% Merken der Anzahl der F"alle
@@ -6672,6 +6790,9 @@ These are the optional height and the required argument condition"
% \fi
\ydepth@nss=1000000%
\str@kt{\x@nss}{\y@nss}{\tempx@nss}%
+ \dbgString@nss{Ende: \string\@case}
+ \dbgCoord@nss[Ursprung]{\x@nss}{\y@nss}
+ \dbgCount@nss[Breite]{\tempx@nss}
}
% \end{macrocode}
%
@@ -6696,6 +6817,7 @@ These are the optional height and the required argument condition"
\@ifnextchar [{\@switch}{\@switch[l]}%
}
\def\@switch[#1]#2{%
+ \dbgString@nss{Beginn \string\@switch}
\global\gy@nss=\y@nss\endgroup
\tempyy@nss=\gy@nss
\ifnum\tempyy@nss<\ydepth@nss
@@ -6715,6 +6837,7 @@ These are the optional height and the required argument condition"
\str@kt{\x@nss}{\y@nss}{\tempx@nss}
}
\def\caseend{%
+ \dbgString@nss{Ende: \string\caseend}
\global\gy@nss=\y@nss\endgroup
\tempyy@nss=\gy@nss
\ifnum\tempyy@nss<\ydepth@nss
@@ -6735,7 +6858,11 @@ These are the optional height and the required argument condition"
% cases. The first partitioning line occurs after the first block.
% \fi
% \begin{macrocode}
+ \dbgCount@nss[width?]{\xsize@nss}
\loop
+ \dbgString@nss{draw vertical line}
+ \dbgCoord@nss[Ursprung]{\tempxx@nss}{\y@nss}
+ \dbgCount@nss[Laenge]{\tempyy@nss}
\advance\tempyy@nss by -\condindent@nss
\advance\tempxx@nss by \tempx@nss
\put(\tempxx@nss,\y@nss){\line(0,1){\tempyy@nss}}
@@ -6754,6 +6881,8 @@ These are the optional height and the required argument condition"
\advance\xx@nss by -\x@nss
\advance\xx@nss by \tempx@nss
\advance\xx@nss by 100
+ \dbgCount@nss[loop control]{\xx@nss}
+ \dbgCount@nss[compare to]{\xsize@nss}
\ifnum \xx@nss<\xsize@nss
\repeat
}
@@ -6808,6 +6937,7 @@ These are the optional height and the required argument condition"
% \fi
% \begin{macrocode}
\def\@inparallel#1#2{%
+ \dbgString@nss{Beginn \string\@inparallel}
% \end{macrocode}
% \ifnum\language=\languageNGerman%
% Die Schritte zum Zeichnens des Kastens sind:
@@ -6841,10 +6971,15 @@ These are the optional height and the required argument condition"
% line. %
% \fi%
% \begin{macrocode}
+\dbgCoord@nss[Ursprung inparallel]{\x@nss}{\y@nss}
+\dbgMark@nss{\x@nss}{\y@nss}
\tempxx@nss=\xsize@nss
\advance\tempxx@nss by 1500% prevent rounding errors
\divide\tempxx@nss by 3000%
+\dbgCount@nss[Number of dashes]{\tempxx@nss}
\yy@nss=\y@nss\advance\yy@nss by -2000%
+\dbgCoord@nss[draw top dashed line, origin]{\x@nss}{\yy@nss}
+\dbgCount@nss[length based on]{\xsize@nss}
\multiput(\x@nss,\yy@nss)(3000, 0){\tempxx@nss}{\line(1,0){1500}}%
\advance\yy@nss by -2000%
\multiput(\x@nss,\yy@nss)(3000, 0){\tempxx@nss}{\line(1,0){1500}}%
@@ -6883,9 +7018,12 @@ These are the optional height and the required argument condition"
% \begin{macrocode}
\begingroup
\y@nss=\yy@nss%
+\dbgCoord@nss[Ursprung Task 1]{\x@nss}{\y@nss}
\set@nss{#2}{\tempx@nss}%
+\dbgCount@nss[optionale Hoehe der Task]{\tempyy@nss}
\block@nss{\tempyy@nss}{0}%
\tempyy@nss=\TextBoxHt@nss%
+\dbgCount@nss[Hoehe der Task]{\tempyy@nss}
% \end{macrocode}
% \end{enumerate}
% \begin{macrocode}
@@ -6903,6 +7041,8 @@ These are the optional height and the required argument condition"
% \changes{v061}{10/05/31}{added some documentation}
% \begin{macrocode}
\def\inparallelend{%
+ \dbgString@nss{Beginn \string\@inparallelend}
+ \dbgCoord@nss[Endkoordinate]{\x@nss}{\y@nss}
\global\tempy@nss=\y@nss%
\global\tempyy@nss=\tempyy@nss%
\endgroup
@@ -6934,15 +7074,22 @@ These are the optional height and the required argument condition"
% \fi%
% \begin{macrocode}
\begingroup%
+\dbgCoord@nss[left and right limits]{\x@nss}{\xx@nss}
+\dbgCount@nss[step size]{\xsize@nss}
\tempx@nss=\xsize@nss%
\divide\tempx@nss by 2%
\advance\xx@nss by -\tempx@nss%
\tempx@nss=\x@nss%
\loop%
+\dbgString@nss{draw vertical line}
\advance\tempx@nss by \xsize@nss%
+\dbgCoord@nss[Ursprung]{\tempx@nss}{\tempy@nss}
+\dbgCount@nss[Laenge]{\tempyy@nss}
\put(\tempx@nss,\tempy@nss){\line(0,1){\tempyy@nss}}%
\tempxx@nss=\tempx@nss%
\advance\tempxx@nss by \xsize@nss%
+\dbgCount@nss[loop control]{\tempxx@nss}
+\dbgCount@nss[compare to]{\xx@nss}
\ifnum \tempxx@nss<\xx@nss%
\repeat
\endgroup
@@ -6953,6 +7100,7 @@ These are the optional height and the required argument condition"
% draw the two dashed lines at the bottom, %
% \fi %
% \begin{macrocode}
+\dbgCoord@nss[draw bottom, origin]{\x@nss}{\tempy@nss}
\multiput(\x@nss,\tempy@nss)(3000, 0){\tempxx@nss}{\line(1,0){1500}}%
\advance\tempy@nss by -2000%
\multiput(\x@nss,\tempy@nss)(3000, 0){\tempxx@nss}{\line(1,0){1500}}%
@@ -6965,8 +7113,10 @@ These are the optional height and the required argument condition"
% \end{enumerate}
% \begin{macrocode}
\advance\tempy@nss by -2000%
+\dbgCount@nss{\tempyy@nss}
\advance\tempyy@nss by 8000%
\advance\xx@nss by -\x@nss%
+\dbgCoord@nss[Breite, Hoehe]{\xx@nss}{\tempyy@nss}
\put(\x@nss,\tempy@nss){\framebox(\xx@nss,\tempyy@nss){}}%
% \end{macrocode}
% \ifnum\language=\languageNGerman%
@@ -6979,6 +7129,9 @@ These are the optional height and the required argument condition"
% \begin{macrocode}
\xsize@nss=\xx@nss%
\y@nss=\tempy@nss%
+\dbgCoord@nss[Endkoordinate inparallel]{\x@nss}{\y@nss}
+\dbgCount@nss[Breite]{\xsize@nss}
+\dbgString@nss{Ende \string\@inparallelend}
}
% \end{macrocode}
% \end{macro}
@@ -7005,12 +7158,15 @@ These are the optional height and the required argument condition"
% \begin{macrocode}
\def\task{\let\next=\@task\getoption}
\def\@task#1{%
+ \dbgString@nss{Beginn \string\@task}
\advance\x@nss by \xsize@nss%
\y@nss=\yy@nss%
+ \dbgCoord@nss[Ursprung parallele Task]{\x@nss}{\y@nss}
\set@nss{#1}{\tempx@nss}%
\ifnum\number\param@nss000>\tempyy@nss%
\tempyy@nss=\number\param@nss000%
\fi%
+ \dbgCount@nss[Hoehe parallele Task]{\tempyy@nss}
\block@nss{\tempyy@nss}{0}%
}
% \end{macrocode}
diff --git a/Master/texmf-dist/source/latex/struktex/struktex.ins b/Master/texmf-dist/source/latex/struktex/struktex.ins
index 70fd16abf4e..20cc5210c8a 100644
--- a/Master/texmf-dist/source/latex/struktex/struktex.ins
+++ b/Master/texmf-dist/source/latex/struktex/struktex.ins
@@ -1,5 +1,5 @@
%%
-%% $Revision: 53 $
+%% $Revision: 106 $
%%
%% This file will generate fast loadable files and documentation
%% driver files from the doc files in this package when run through
@@ -30,7 +30,7 @@ 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
+ j.hoffmann_(at)_fh-aachen.de
\endpreamble
\declarepostamble\examplepost