From 4e4bb5b0b9eb71dbc88b140b9bfe43026324b79f Mon Sep 17 00:00:00 2001 From: Karl Berry Date: Wed, 22 Sep 2010 23:34:49 +0000 Subject: struktex v133 (22sep10) git-svn-id: svn://tug.org/texlive/trunk@19845 c570f23f-e606-0410-a88d-b1316a301751 --- .../texmf-dist/source/latex/struktex/struktex.dtx | 628 +++++++++++++-------- .../texmf-dist/source/latex/struktex/struktex.ins | 4 +- 2 files changed, 394 insertions(+), 238 deletions(-) (limited to 'Master/texmf-dist/source/latex/struktex') 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 -% +% Copyright (C) 1995 - 2010 Jobst Hoffmann, FH Aachen, Campus J"ulich +% % ------------------------------------------------------------------------------------------- % % 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 -%\NeedsTeXFormat{LaTeX2e}[1999/12/01] -%{% +%\NeedsTeXFormat{LaTeX2e}[1999/12/01]{% % \def\@svn@ $#1Date: #2-#3-#4 #5$$#6Revision: #7$ {% % \ProvidesPackage{struktex}[#2/#3/#4 v#7 Nassi Shneiderman Charts (Jobst Hoffmann)]} % \ProvidesPackage{struktxf}[#2/#3/#4 v#7 Fonts for Nassi Shneiderman Charts (Jobst Hoffmann)]} % \ProvidesPackage{struktxp}[#2/#3/#4 v#7 Keywords for Nassi Shneiderman Charts (Jobst Hoffmann)]} % \ProvidesPackage{strukdoc}[#2/#3/#4 v#7 support for reading and writing files verbatim (Jobst Hoffmann)]} -% \@svn@ $Date: 2010-06-25 13:00:22 +0200 (Fr, 25 Jun 2010) $$Revision: 101 $ % +% \@svn@ $Date: 2010-09-21 21:32:08 +0200 (Di, 21 Sep 2010) $$Revision: 133 $ % %} % \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: +% Email: % % 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 @@ % % \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 -;; Maintainer: j.hoffmann_at_fh-aachen.de +;; Author: J. Hoffmann +;; 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 % -%<*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} -% %<*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 -- cgit v1.2.3