home *** CD-ROM | disk | FTP | other *** search
- %%
- %% This is file `doc.sty', generated
- %% on <1994/6/14> with the docstrip utility (2.2h).
- %%
- %% The original source files were:
- %%
- %% doc.dtx (with options: `package')
- %%
- %% Copyright 1994 the LaTeX3 project and the individual authors.
- %% All rights reserved. For further copyright information see the file
- %% legal.txt, and any other copyright indicated in this file.
- %%
- %% This file is part of the LaTeX2e system.
- %% ----------------------------------------
- %%
- %% This system is distributed in the hope that it will be useful,
- %% but WITHOUT ANY WARRANTY; without even the implied warranty of
- %% MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
- %%
- %%
- %% IMPORTANT NOTICE:
- %%
- %% For error reports in case of UNCHANGED versions see bugs.txt.
- %%
- %% Please do not request updates from us directly. Distribution is
- %% done through Mail-Servers and TeX organizations.
- %%
- %% You are not allowed to change this file.
- %%
- %% You are allowed to distribute this file under the condition that
- %% it is distributed together with all files mentioned in manifest.txt.
- %%
- %% If you receive only some of these files from someone, complain!
- %%
- %% You are NOT ALLOWED to distribute this file alone. You are NOT
- %% ALLOWED to take money for the distribution or use of either this
- %% file or a changed version, except for a nominal charge for copying
- %% etc.
- \NeedsTeXFormat{LaTeX2e}
- \ProvidesPackage{doc}
- [1994/06/09 v1.9r
- Standard LaTeX documentation package (FMi)]
- %% \CharacterTable
- %% {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z
- %% Lower-case \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z
- %% Digits \0\1\2\3\4\5\6\7\8\9
- %% Exclamation \! Double quote \" Hash (number) \#
- %% Dollar \$ Percent \% Ampersand \&
- %% Acute accent \' Left paren \( Right paren \)
- %% Asterisk \* Plus \+ Comma \,
- %% Minus \- Point \. Solidus \/
- %% Colon \: Semicolon \; Less than \<
- %% Equals \= Greater than \> Question mark \?
- %% Commercial at \@ Left bracket \[ Backslash \\
- %% Right bracket \] Circumflex \^ Underscore \_
- %% Grave accent \` Left brace \{ Vertical bar \|
- %% Right brace \} Tilde \~}
- %%
- %% Package `doc' to use with LaTeX 2e
- %% Copyright (C) 1989-1994 Frank Mittelbach, all rights reserved.
- \@ifundefined{macro@cnt}{}{\endinput}
- \catcode`\^^A=14
- \def\macrocode{\macro@code
- \frenchspacing \@vobeyspaces
- \xmacro@code}
- \def\macro@code{%
- \topsep \MacrocodeTopsep
- \@beginparpenalty \predisplaypenalty
- \if@inlabel\leavevmode\fi
- \trivlist \parskip \z@ \item[]%
- \macro@font
- \leftskip\@totalleftmargin \advance\leftskip\MacroIndent
- \rightskip\z@ \parindent\z@ \parfillskip\@flushglue
- \blank@linefalse \def\par{\ifblank@line
- \leavevmode\fi
- \blank@linetrue\@@par
- \penalty\interlinepenalty}
- \obeylines
- \let\do\do@noligs \verbatim@nolig@list
- \let\do\@makeother \dospecials
- \global\@newlistfalse
- \global\@minipagefalse
- \ifcodeline@index
- \everypar{\global\advance\c@CodelineNo\@ne
- \llap{\theCodelineNo\ \hskip\@totalleftmargin}%
- \check@module}%
- \else \everypar{\check@module}%
- \fi
- \init@crossref}
- \newif\ifblank@line
- \def\endmacrocode{%
- \ifpm@module \endgroup \pm@modulefalse \fi
- \everypar{}%
- \global\@inlabelfalse
- \endtrivlist
- \close@crossref}
- \@ifundefined{MacroFont}{%
- \def\MacroFont{\math@fontsfalse\reset@font\small\ttfamily}%
- }{}
- \@ifundefined{AltMacroFont}{%
- \def\AltMacroFont{\math@fontsfalse\small
- \reset@font\slshape\ttfamily}%
- }{}
- \let\macro@font=\MacroFont
- \def\check@module{%
- \ifcheck@modules
- \ifpm@module \endgroup \pm@modulefalse \fi
- \expandafter\futurelet\expandafter\next\expandafter\ch@percent
- \fi}
- \newif\ifpm@module
- \def\DontCheckModules{\check@modulesfalse}
- \def\CheckModules{\check@modulestrue}
- \newif\ifcheck@modules \check@modulestrue
- \def\ch@percent{%
- \if \percentchar\next
- \expandafter\check@angle
- \fi}
- \def\check@angle#1{\futurelet\next\ch@angle}
- \begingroup
- \catcode`\<\active
- \gdef\ch@angle{\ifx<\next
- \expandafter\ch@plus@etc
- \else \percentchar \fi}
- \gdef\ch@plus@etc<{\futurelet\next\check@plus@etc}
- \endgroup
- \def\check@plus@etc{%
- \if +\next
- \let\next\pm@module
- \else\if -\next
- \let\next\pm@module
- \else\if *\next
- \let\next\star@module
- \else\if /\next
- \let\next\slash@module
- \else
- \let\next\pm@module
- \fi\fi\fi\fi
- \next}
- \begingroup
- \catcode`\~=\active
- \lccode`\~=`\>
- \lowercase{\gdef\pm@module#1~}{\pm@moduletrue
- \Module{#1}\begingroup
- \advance\guard@level\@ne
- \ifnum\guard@level>\c@StandardModuleDepth\AltMacroFont\fi
- }
- \lowercase{\gdef\star@module#1~}{%
- \Module{#1}%
- \global \advance \guard@level\@ne
- \ifnum \guard@level>\c@StandardModuleDepth
- \global\let\macro@font=\AltMacroFont \macro@font
- \fi}
- \catcode`\>=\active
- \gdef\slash@module#1>{%
- \Module{#1}%
- \global \advance \guard@level\m@ne
- \ifnum \guard@level=\c@StandardModuleDepth
- \global\let\macro@font\MacroFont \macro@font
- \fi
- }
- \endgroup
- \newcounter{StandardModuleDepth}
- \newcount \guard@level
- \@ifundefined{Module}{%
- \def\Module#1{\mod@math@codes$\langle\mathsf{#1}\rangle$}
- }{}
- \def\mod@math@codes{\mathcode`\|="226A \mathcode`\&="2026}
- \newskip\MacrocodeTopsep \MacrocodeTopsep = 3pt plus 1.2pt minus 1pt
- \newdimen\MacroIndent
- \settowidth\MacroIndent{\rmfamily\scriptsize 00\ }
- \@namedef{macrocode*}{\macro@code\sxmacro@code}
- \expandafter\let\csname endmacrocode*\endcsname = \endmacrocode
- \catcode`\!=\catcode`\% ^^A In this section there must not be
- ^^A any exclamation marks.
- ^^A
- \begingroup
- \catcode`\|=\z@ \catcode`\[=\@ne \catcode`\]=\tw@
- \catcode`\{=12 \catcode`\}=12
- \catcode`\%=12 \catcode`\ =\active \catcode`\\=\active
- !% \end{macrocode*}
- ! Next follows the actual definition of |\macro@code|;
- ! notice the
- ! use of the new escape character. We manage to get the argument
- ! surrounded by the string |\end{macrocode}|, but at the end
- ! however, in spite of the actual characters used during the
- ! definition of
- ! this macro, |\end| with the argument |{macrocode}|
- ! will be executed, to ensure a balanced environment.
- ! \begin{macrocode*}
- |gdef|xmacro@code#1% \end{macrocode}[#1|end[macrocode]]
- !% \end{macrocode*}
- ! \begin{macro}{\sxmacro@code}
- ! The definition of |\sxmacro@code| is completely analogous,
- ! only
- ! here a slightly different terminating string will be used.
- ! Note that the space is not active in this environment.
- ! \begin{macrocode}
- |catcode`| =12
- |gdef|sxmacro@code#1% \end{macrocode*}[#1|end[macrocode*]]
- !% \end{macrocode}
- ! because the |\catcode| changes have been made local by
- ! commencing a
- ! new group, there now follows the matching |\endgroup|
- ! in a rather
- ! unusual style of writing.
- ! \begin{macrocode}
- |endgroup
- !% \end{macrocode}
- \catcode`\!=12
- \def\DescribeMacro{\leavevmode\@bsphack
- \begingroup\MakePrivateLetters\Describe@Macro}
- \def\Describe@Macro#1{\endgroup
- \marginpar{\raggedleft\PrintDescribeMacro{#1}}%
- \SpecialUsageIndex{#1}\@esphack\ignorespaces}
- \def\DescribeEnv{\leavevmode\@bsphack\begingroup\MakePrivateLetters
- \Describe@Env}
- \def\Describe@Env#1{\endgroup
- \marginpar{\raggedleft\PrintDescribeEnv{#1}}%
- \SpecialEnvIndex{#1}\@esphack\ignorespaces}
- \reversemarginpar
- \setlength\marginparpush{0pt} \setlength\marginparwidth{8pc}
- {\catcode`\|=\z@ \catcode`\\=12
- |gdef|bslash{\}}
- \def\verbatim{\@beginparpenalty \predisplaypenalty \@verbatim
- \MacroFont \frenchspacing \@vobeyspaces \@xverbatim}
- \@namedef{verbatim*}{\@beginparpenalty \predisplaypenalty \@verbatim
- \MacroFont \@sxverbatim}
- \def\@verbatim{\trivlist \item[]\if@minipage\else\vskip\parskip\fi
- \leftskip\@totalleftmargin\rightskip\z@
- \parindent\z@\parfillskip\@flushglue\parskip\z@
- \@@par
- \@tempswafalse
- \def\par{\if@tempswa\hbox{}\fi\@tempswatrue\@@par
- \penalty\interlinepenalty
- \check@percent}%
- \obeylines
- \let\do\do@noligs \verbatim@nolig@list
- \let\do\@makeother \dospecials}
- {\catcode`\%=12
- \long\gdef\check@percent#1{\ifx #1%\let\next\@empty \else
- \let\next=#1\fi \next}}
- \def\verb{\relax\ifmmode\hbox\else\leavevmode\null\fi
- \bgroup \let\do\do@noligs \verbatim@nolig@list
- \ttfamily \verb@eol@error \let\do\@makeother \dospecials
- \@ifstar{\@sverb}{\@vobeyspaces \frenchspacing \@sverb}}
- \let\verb@balance@group\@empty
-
- \def\verb@egroup{\global\let\verb@balance@group\@empty\egroup}
-
- \begingroup
- \obeylines%
- \gdef\verb@eol@error{\obeylines%
- \def^^M{\verb@egroup\@latex@error{%
- Text for \noexpand\verb command ended by end of line}\@ehc}}%
- \endgroup
- \def\@sverb#1{%
- \catcode`#1\active \lccode`\~`#1%
- \gdef\verb@balance@group{\verb@egroup
- \@latex@error{Illegal use of \noexpand\verb command}\@ehc}%
- \aftergroup\verb@balance@group
- \lowercase{\let~\verb@egroup}}
- \def\verbatim@nolig@list{\do\`\do\<\do\>\do\,\do\'\do\-}
- \def\do@noligs#1{%
- \catcode`#1\active
- \begingroup
- \lccode`\~=`#1\relax
- \lowercase{\endgroup\def~{\leavevmode\kern\z@\char`#1}}}
- \newcount\macro@cnt \macro@cnt=0
- \def\macro{\begingroup
- \catcode`\\12
- \MakePrivateLetters \m@cro@ \iftrue}
- \def\environment{\begingroup
- \catcode`\\12
- \MakePrivateLetters \m@cro@ \iffalse}
- \long\def\m@cro@#1#2{\endgroup \topsep\MacroTopsep \trivlist
- \edef\saved@macroname{\string#2}%
- \def\makelabel##1{\llap{##1}}%
- \if@inlabel
- \let\@tempa\@empty \count@\macro@cnt
- \loop \ifnum\count@>\z@
- \edef\@tempa{\@tempa\hbox{\strut}}\advance\count@\m@ne \repeat
- \edef\makelabel##1{\llap{\vtop to\baselineskip
- {\@tempa\hbox{##1}\vss}}}%
- \advance \macro@cnt \@ne
- \else \macro@cnt\@ne \fi
- \edef\@tempa{\noexpand\item[%
- #1%
- \noexpand\PrintMacroName
- \else
- \noexpand\PrintEnvName
- \fi
- {\string#2}]}%
- \@tempa
- {\advance\c@CodelineNo\@ne
- #1%
- \SpecialMainIndex{#2}\nobreak
- \DoNotIndex{#2}%
- \else
- \SpecialMainEnvIndex{#2}\nobreak
- \fi
- }%
- \ignorespaces}
- \let\endmacro \endtrivlist
- \let\endenvironment\endmacro
- \newskip\MacroTopsep \MacroTopsep = 7pt plus 2pt minus 2pt
- \@ifundefined{PrintMacroName}
- {\def\PrintMacroName#1{\strut \MacroFont \string #1\ }}{}
- \@ifundefined{PrintDescribeMacro}
- {\def\PrintDescribeMacro#1{\strut \MacroFont \string #1\ }}{}
- \@ifundefined{PrintDescribeEnv}
- {\def\PrintDescribeEnv#1{\strut \MacroFont #1\ }}{}
- \@ifundefined{PrintEnvName}
- {\def\PrintEnvName#1{\strut \MacroFont #1\ }}{}
- \begingroup
- \catcode`\~\active
- \gdef\SpecialEscapechar#1{%
- \begingroup
- \uccode`\~`#1%
- \uppercase{\gdef\active@escape@char{~}}%
- \escapechar\m@ne \xdef\special@escape@char{\string#1}%
- \endgroup}
- \endgroup
- \begingroup \catcode`\|=\z@ \catcode`\\=\active
- |gdef|init@crossref{|catcode`|\|active |let\|bslash
- |MakePrivateLetters
- |catcode|expandafter`|special@escape@char|active
- |expandafter|let|active@escape@char|scan@macro}
- |endgroup
- \SpecialEscapechar{\\}
- \@ifundefined{MakePrivateLetters}
- {\let\MakePrivateLetters\makeatletter}{}
- \def\close@crossref{\SpecialEscapechar\\}
- \def\scan@macro{%
- \special@escape@char
- \step@checksum
- \ifscan@allowed
- \let\macro@namepart\@empty
- \def\next{\futurelet\next\macro@switch}%
- \else \let\next\@empty \fi
- \next}
- \newif\ifscan@allowed \scan@allowedtrue
- \def\DisableCrossrefs{\@bsphack\scan@allowedfalse\@esphack}
- \def\EnableCrossrefs{\@bsphack\scan@allowedtrue
- \def\DisableCrossrefs{\@bsphack\@esphack}\@esphack}
- \def\macro@switch{\ifcat\noexpand\next a%
- \let\next\macro@name
- \else \let\next\short@macro \fi
- \next}
- \def\short@macro#1{\begingroup
- \catcode`\&=11 \uccode`\&=\expandafter`\string#1%
- \uppercase{\def\macro@namepart{&}}%
- \endgroup
- \ifnot@excluded
- \produce@index{#1}\fi
- \scan@allowedfalse#1%
- \scan@allowedtrue }
- \def\produce@index#1{%
- \if\noexpand#1\special@escape@char
- \scan@allowedfalse \it@is@a\special@escape@char \else
- \if\noexpand#1\bslash \it@is@a\bslash \else
- \if\noexpand#1\space \it@is@a\space \else
- \ifx#1\par
- \it@is@a\space \else
- \ifx#1\relax \else
- \if\noexpand#1\bgroup \LeftBraceIndex \else
- \if\noexpand#1\egroup \RightBraceIndex \else
- \if\noexpand#1\percentchar \PercentIndex \else
- \it@is@a{\string#1}%
- \fi \fi \fi \fi \fi \fi \fi \fi}
- \def\macro@name#1{\edef\macro@namepart{\macro@namepart#1}%
- \futurelet\next\more@macroname}
- \def\more@macroname{\ifcat\noexpand\next a%
- \let\next\macro@name
- \else \let\next\macro@finish \fi
- \next}
- \def\macro@finish{%
- \macro@namepart
- \ifnot@excluded
- \edef\@tempa{\noexpand\SpecialIndex{\bslash\macro@namepart}}%
- \@tempa \fi}
- \def\DoNotIndex{\begingroup \MakePrivateLetters
- \catcode`\\12
- \do@not@index}
- \long\def\do@not@index#1{%
- \endgroup
- \addto@hook\index@excludelist{#1,}}
- \long\def\addto@hook#1#2{#1\expandafter{\the#1#2}}
- \newtoks\index@excludelist
- \index@excludelist{}
- \begingroup
- \catcode`\|=0%
- \catcode`\\=12
- |gdef|ifnot@excluded{|expandafter
- |expanded@notin|expandafter{|expandafter
- \|macro@namepart,}{|the|index@excludelist}}
- |endgroup
- \def\expanded@notin#1#2{%
- \def\in@@##1#1##2##3\in@@{%
- \ifx\expanded@notin##2}%
- \expandafter\in@@#2#1\expanded@notin\in@@}
- \@ifundefined{actualchar}{\def\actualchar{=}}{}
- \@ifundefined{quotechar}{\def\quotechar{!}}{}
- \@ifundefined{levelchar}{\def\levelchar{>}}{}
- \@ifundefined{encapchar}{\def\encapchar{|}}{}
- \@ifundefined{verbatimchar}{\def\verbatimchar{+}}{}
- \def\SpecialIndex#1{\@bsphack\special@index{\expandafter\@gobble
- \string#1\actualchar
- \string\verb\quotechar*\verbatimchar\string#1\verbatimchar}%
- \@esphack}
-
- \def\SpecialMainIndex#1{\@bsphack\special@index{\expandafter\@gobble
- \string#1\actualchar
- \string\verb
- \quotechar*\verbatimchar
- \string#1\verbatimchar
- \encapchar main}%
- \@esphack}
- \def\SpecialMainEnvIndex#1{\@bsphack\special@index{%
- #1\actualchar
- {\string\ttfamily\space#1}
- (environment)
- \encapchar main}%
- \index{environments:\levelchar\protect\texttt{#1}\encapchar
- main}\@esphack}
- \def\SpecialUsageIndex#1{\@bsphack\index{\expandafter\@gobble\string#1%
- \actualchar\string\verb\quotechar*\verbatimchar
- \string#1\verbatimchar
- \encapchar usage}\@esphack}
- \def\SpecialEnvIndex#1{\@bsphack
- \index{#1\actualchar{\protect\ttfamily#1}
- (environment)\encapchar usage}%
- \index{environments:\levelchar{\protect\ttfamily#1}\encapchar
- usage}\@esphack}
- \def\SortIndex#1#2{\index{#1\actualchar#2}}
- \def\it@is@a#1{\special@index{\quotechar #1\actualchar
- \string\verb\quotechar*\verbatimchar
- \quotechar\bslash\quotechar#1\verbatimchar}}
- \@ifundefined{LeftBraceIndex}{\def\LeftBraceIndex{%
- \special@index{\bgroup\actualchar\string\verb\quotechar*\verbatimchar
- \quotechar\bslash{\verbatimchar\string\iffalse}\string\fi}}}{}
-
- \@ifundefined{RightBraceIndex}{\def\RightBraceIndex{%
- \special@index{\egroup\actualchar\string\iffalse{\string\fi\string\verb
- \quotechar*\verbatimchar\quotechar\bslash}\verbatimchar}}}{}
- \@ifundefined{PercentIndex}
- {\def\PercentIndex{\it@is@a\percentchar}}{}
- \def\OldMakeindex{\def\PercentIndex{%
- \special@index{\quotechar\percentchar\actualchar\string\verb
- \quotechar*\verbatimchar\quotechar\bslash
- \percentchar\percentchar\verbatimchar}}}
- {\catcode`\%=12 \gdef\percentchar{%}}
- \newif\ifhave@multicol
- \IfFileExists{multicol.sty}{\have@multicoltrue
- \RequirePackage{multicol}%
- }{}
-
- \newdimen\IndexMin \IndexMin = 80pt
- \newcount\c@IndexColumns \c@IndexColumns = 3
- \ifhave@multicol
- \renewenvironment{theindex}
- {\begin{multicols}\c@IndexColumns[\index@prologue][\IndexMin]%
- \IndexParms \let\item\@idxitem \ignorespaces}%
- {\end{multicols}}
- \else
- \typeout{Can't find multicol.sty -- will use normal index layout if
- necessary.}
- \def\theindex{\@restonecoltrue\if@twocolumn\@restonecolfalse\fi
- \columnseprule \z@ \columnsep 35\p@
- \twocolumn[\index@prologue]%
- \IndexParms \let\item\@idxitem \ignorespaces}
- \def\endtheindex{\if@restonecol\onecolumn\else\clearpage\fi}
- \fi
- \long\def\IndexPrologue#1{\@bsphack\def\index@prologue{#1}\@esphack}
- \@ifundefined{index@prologue}
- {\def\index@prologue{\section*{Index}%
- \markboth{Index}{Index}%
- The italic numbers denote the pages where the
- corresponding entry is described,
- numbers underlined point to the definition,
- all others indicate the places where it is used.
- }}{}
- \@ifundefined{IndexParms}
- {\def\IndexParms{%
- \parindent \z@
- \columnsep 15pt
- \parskip 0pt plus 1pt
- \rightskip 15pt
- \mathsurround \z@
- \parfillskip=-15pt
- \small
- \def\@idxitem{\par\hangindent 30pt}%
- \def\subitem{\@idxitem\hspace*{15pt}}%
- \def\subsubitem{\@idxitem\hspace*{25pt}}%
- \def\indexspace{\par\vspace{10pt plus 2pt minus 3pt}}%
- }}{}
- \def\efill{\hfill\nopagebreak}%
- \def\dotfill{\leaders\hbox to.6em{\hss .\hss}\hskip\z@ plus 1fill}%
- \def\dotfil{\leaders\hbox to.6em{\hss .\hss}\hfil}%
- \def\pfill{\unskip~\dotfill\penalty500\strut\nobreak
- \dotfil~\ignorespaces}%
- \def\*{\leavevmode\lower.8ex\hbox{$\,\widetilde{\ }\,$}}
- \@ifundefined{main}{\def\main#1{\underline{#1}}}{}
- \@ifundefined{usage}{\def\usage#1{\textit{#1}}}{}
- \def\PrintIndex{\@input@{\jobname.ind}}
- \def\printindex{\typeout{\string\printindex\space is obsolete!}%
- \typeout{Please use \string\PrintIndex\space
- if you are a macro implementor^^J
- or get a newer version of the documented
- software if you are a user}%
- \PrintIndex}
- \def\changes{\@bsphack\begingroup\@sanitize
- \catcode`\\\z@ \catcode`\ 10 \MakePercentIgnore
- \changes@}
- \def\changes@#1#2#3{%
- \def\protect##1{\string##1\space}%
- \edef\@tempa{\noexpand\glossary{#1\levelchar
- \expandafter\@gobble
- \saved@macroname\actualchar
- \string\verb\quotechar*%
- \verbatimchar\saved@macroname
- \verbatimchar:\levelchar #3}}%
- \@tempa\endgroup\@esphack}
- \def\saved@macroname{"General"}
- \let\RecordChanges\makeglossary
- \newdimen\GlossaryMin \GlossaryMin = 80pt
- \newcount\c@GlossaryColumns \c@GlossaryColumns = 2
- \ifhave@multicol
- \newenvironment{theglossary}{%
- \begin{multicols}\c@GlossaryColumns
- [\glossary@prologue][\GlossaryMin]%
- \GlossaryParms \let\item\@idxitem \ignorespaces}%
- {\end{multicols}}
- \else
- \newenvironment{theglossary}{%
- \@restonecoltrue\if@twocolumn\@restonecolfalse\fi
- \columnseprule \z@ \columnsep 35\p@
- \twocolumn[\glossary@prologue]%
- \GlossaryParms \let\item\@idxitem \ignorespaces}
- {\if@restonecol\onecolumn\else\clearpage\fi}
- \fi
- \long\def\GlossaryPrologue#1{\@bsphack
- \def\glossary@prologue{#1}%
- \@esphack}
- \@ifundefined{glossary@prologue}
- {\def\glossary@prologue{\section*{{Change History}}%
- \markboth{{Change History}}{{Change History}}%
- }}{}
- \@ifundefined{GlossaryParms}{\let\GlossaryParms\IndexParms}{}
- \def\PrintChanges{\@input@{\jobname.gls}}
- \long\def\StopEventually#1{\@bsphack\gdef\Finale{#1%
- \check@checksum}%
- \init@checksum
- \@esphack}
- \def\OnlyDescription{\@bsphack\long\def\StopEventually##1{%
- ##1\endinput}\@esphack}
- \let\Finale\relax
- \begingroup
- \obeyspaces%
- \catcode`\^^M\active%
- \gdef\meta{\begingroup\obeyspaces\catcode`\^^M\active%
- \let^^M\do@space\let \do@space%
- \def\-{\egroup\discretionary{-}{}{}\hbox\bgroup\itshape}%
- \m@ta}%
- \endgroup
- \def\m@ta#1{\leavevmode\hbox\bgroup$\langle$\itshape#1\/$\rangle$\egroup
- \endgroup}
- \def\do@space{\egroup\space
- \hbox\bgroup\itshape\futurelet\next\sp@ce}
- \def\sp@ce{\ifx\next\do@space\expandafter\sp@@ce\fi}
- \def\sp@@ce#1{\futurelet\next\sp@ce}
- \def\IndexInput#1{%
- \begingroup \macro@code
- \frenchspacing \@vobeyspaces
- \input{#1}\endmacrocode
- \endgroup}
- \def\maketitle{\par
- \begingroup \def \thefootnote {\fnsymbol {footnote}}%
- \setcounter {footnote}\z@
- \def\@makefnmark{\hbox to\z@{$\m@th^{\@thefnmark}$\hss}}%
- \long\def\@makefntext##1{\parindent 1em\noindent
- \hbox to1.8em{\hss$\m@th^{\@thefnmark}$}##1}%
- \if@twocolumn \twocolumn [\@maketitle ]%
- \else \newpage \global \@topnum \z@ \@maketitle \fi
- \thispagestyle{titlepage}\@thanks \endgroup
- \setcounter {footnote}\z@
- \gdef\@date{\today}\gdef\@thanks{}%
- \gdef\@author{}\gdef\@title{}}
- \@ifundefined{ps@titlepage}
- {\let\ps@titlepage=\ps@plain}{}
- \def\MakeShortVerb#1{%
- \expandafter\ifx\csname cc\string#1\endcsname\relax
- \typeout{*** Made \expandafter\@gobble\string#1\space a short
- reference for \string\verb \on@line\space ***}%
- \add@special{#1}%
- \expandafter
- \xdef\csname cc\string#1\endcsname{\the\catcode`#1}%
- \begingroup
- \catcode`\~\active \lccode`\~`#1%
- \lowercase{%
- \global\expandafter\let
- \csname ac\string#1\endcsname~%
- \gdef~{\verb~}}%
- \endgroup
- \global\catcode`#1\active
- \else
- \typeout{*** \expandafter\@gobble\string#1\space is already a
- short reference for \string\verb \on@line\space ***}%
- \fi}
- \def\DeleteShortVerb#1{%
- \expandafter\ifx\csname cc\string#1\endcsname\relax
- \else
- \typeout{*** Deleted \expandafter\@gobble\string#1\space as short
- reference for \string\verb \on@line\space ***}%
- \rem@special{#1}%
- \global\catcode`#1\csname cc\string#1\endcsname
- \global \expandafter\let \csname cc\string#1\endcsname \relax
- \ifnum\catcode`#1=\active
- \begingroup
- \catcode`\~\active \lccode`\~`#1%
- \lowercase{%
- \global\expandafter\let\expandafter~%
- \csname ac\string#1\endcsname}%
- \endgroup \fi \fi}
- \def\add@special#1{%
- \rem@special{#1}%
- \expandafter\gdef\expandafter\dospecials\expandafter
- {\dospecials \do #1}%
- \expandafter\gdef\expandafter\@sanitize\expandafter
- {\@sanitize \@makeother #1}}
- \def\rem@special#1{%
- \def\do##1{%
- \ifnum`#1=`##1 \else \noexpand\do\noexpand##1\fi}%
- \xdef\dospecials{\dospecials}%
- \begingroup
- \def\@makeother##1{%
- \ifnum`#1=`##1 \else \noexpand\@makeother\noexpand##1\fi}%
- \xdef\@sanitize{\@sanitize}%
- \endgroup}
- \def\MakeShortverb{\typeout{*** Switch to \noexpand\MakeShortVerb
- syntax, this is obsolete ***}\MakeShortVerb}
- \def\DeleteShortverb{\typeout{*** Switch to \noexpand\DeleteShortVerb
- syntax, this is obsolete ***}\DeleteShortVerb}
- \def\init@checksum{\relax
- \global\bslash@cnt\z@}
- \def\check@checksum{\relax
- \ifnum\check@sum=\z@
- \typeout{**********************************}%
- \typeout{* This macro file has no checksum!}%
- \typeout{* The checksum should be \the\bslash@cnt!}%
- \typeout{**********************************}%
- \else
- \ifnum\check@sum=\bslash@cnt
- \typeout{*******************}%
- \typeout{* Checksum passed *}%
- \typeout{*******************}%
- \else
- \PackageError{doc}{Checksum not passed
- (\the\check@sum<>\the\bslash@cnt)}%
- {The file currently documented seems to be wrong.^^J%
- Try to get a correct version.}%
- \fi
- \fi
- \global\check@sum\z@}
- \newcount\check@sum \check@sum = \z@
- \newcount\bslash@cnt \bslash@cnt = \z@
- \def\CheckSum#1{\@bsphack\global\check@sum#1\relax\@esphack}
- \def\step@checksum{\global\advance\bslash@cnt\@ne}
- \def\CharacterTable{\begingroup \CharTableChanges \character@table}
- \begingroup
- \catcode`\~=11
- \gdef\character@table#1{\def\used~table{#1}%
- \ifx\used~table\default~table
- \typeout{***************************}%
- \typeout{* Character table correct *}%
- \typeout{***************************}%
- \else
- \PackageError{doc}{Character table corrupted}
- {\the\wrong@table}
- \show\default~table
- \show\used~table
- \fi
- \endgroup}
- \global\let\CharTableChanges\@empty
- \makeatother
- \gdef\default~table
- {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z
- Lower-case \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z
- Digits \0\1\2\3\4\5\6\7\8\9
- Exclamation \! Double quote \" Hash (number) \#
- Dollar \$ Percent \% Ampersand \&
- Acute accent \' Left paren \( Right paren \)
- Asterisk \* Plus \+ Comma \,
- Minus \- Point \. Solidus \/
- Colon \: Semicolon \; Less than \<
- Equals \= Greater than \> Question mark \?
- Commercial at \@ Left bracket \[ Backslash \\
- Right bracket \] Circumflex \^ Underscore \_
- Grave accent \` Left brace \{ Vertical bar \|
- Right brace \} Tilde \~}
- \endgroup
- \newhelp\wrong@table{Some of the ASCII characters are corrupted.^^J
- I now \string\show\space you both tables for comparison.}
- \newif\ifcodeline@index \codeline@indexfalse
- \let\CodelineNumbered\codeline@indextrue
- \def\codeline@wrindex#1{\if@filesw
- \immediate\write\@indexfile
- {\string\indexentry{#1}%
- {\number\c@CodelineNo}}\fi}
- \let\special@index = \@gobble
- \def\CodelineIndex{\makeindex
- \codeline@indextrue
- \let\special@index\codeline@wrindex}
- \def\PageIndex{\makeindex
- \codeline@indexfalse
- \let\special@index\index}
- \newcount\c@CodelineNo \c@CodelineNo\z@
- \@ifundefined{theCodelineNo}
- {\ifx\selectfont\undefined
- \def\theCodelineNo{\rmfamily\scriptsize\arabic{CodelineNo}}%
- \else
- \def\theCodelineNo{\reset@font\scriptsize\arabic{CodelineNo}}%
- \fi}
- {}
- \tolerance=1000\relax
- { \catcode`\"=12
- \global\mathcode`\\="705C \global\mathcode`\@="7040 }
- \@ifundefined{DocstyleParms}{}{}
- \DocstyleParms \let\DocstyleParms\relax
- \@ifundefined{AmSTeX}
- {\def\AmSTeX{\leavevmode\hbox{$\mathcal A\kern-.2em\lower.376ex%
- \hbox{$\mathcal M$}\kern-.2em\mathcal S$-\TeX}}}{}
- \@ifundefined{BibTeX}
- {\def\BibTeX{{\rmfamily B\kern-.05em%
- \textsc{i\kern-.025em b}\kern-.08em%
- T\kern-.1667em\lower.7ex\hbox{E}\kern-.125emX}}}{}
- \@ifundefined{SliTeX}
- {\def\SliTeX{{\rmfamily S\kern-.06emL\kern-.18em\raise.32ex\hbox
- {\scshape i}\kern -.03em\TeX}}}{}
- \@ifundefined{PlainTeX}{\def\PlainTeX{\textsc{Plain}\kern2pt\TeX}}{}
- \@ifundefined{Web}{\def\Web{\textsc{Web}}}{}
- \def\MakePercentIgnore{\catcode`\%9\relax}
- \def\MakePercentComment{\catcode`\%14\relax}
- \def\DocInput#1{\MakePercentIgnore\input{#1}\MakePercentComment}
- \def\GetFileInfo#1{%
- \def\filename{#1}%
- \def\@tempb##1 ##2 ##3\relax##4\relax{%
- \def\filedate{##1}%
- \def\fileversion{##2}
- \def\fileinfo{##3}}%
- \edef\@tempa{\csname ver@#1\endcsname}%
- \expandafter\@tempb\@tempa\relax? ? \relax\relax}
- \endinput
- %%
- %% End of file `doc.sty'.
-