diff options
author | Norbert Preining <norbert@preining.info> | 2022-06-09 03:01:00 +0000 |
---|---|---|
committer | Norbert Preining <norbert@preining.info> | 2022-06-09 03:01:00 +0000 |
commit | 16559ce13a74c7a182875559b379cac00b07efda (patch) | |
tree | 6ee63e6aadfabf9a7334e6667fa32646fd812667 /macros/latex/base/doc-v3beta.sty | |
parent | b3aac3ae7b628835121d1f485fd49998308170e7 (diff) |
CTAN sync 202206090300
Diffstat (limited to 'macros/latex/base/doc-v3beta.sty')
-rw-r--r-- | macros/latex/base/doc-v3beta.sty | 1241 |
1 files changed, 0 insertions, 1241 deletions
diff --git a/macros/latex/base/doc-v3beta.sty b/macros/latex/base/doc-v3beta.sty deleted file mode 100644 index eeac71568c..0000000000 --- a/macros/latex/base/doc-v3beta.sty +++ /dev/null @@ -1,1241 +0,0 @@ -%% -%% This is file `doc-v3beta.sty', -%% generated with the docstrip utility. -%% -%% The original source files were: -%% -%% doc.dtx (with options: `package,beta') -%% -%% This is a generated file. -%% -%% The source is maintained by the LaTeX Project team and bug -%% reports for it can be opened at https://latex-project.org/bugs.html -%% (but please observe conditions on bug reports sent to that address!) -%% -%% -%% Copyright 1993-2018 -%% The LaTeX3 Project and any individual authors listed elsewhere -%% in this file. -%% -%% This file was generated from file(s) of the LaTeX base system. -%% -------------------------------------------------------------- -%% -%% It may be distributed and/or modified under the -%% conditions of the LaTeX Project Public License, either version 1.3c -%% of this license or (at your option) any later version. -%% The latest version of this license is in -%% https://www.latex-project.org/lppl.txt -%% and version 1.3c or later is part of all distributions of LaTeX -%% version 2005/12/01 or later. -%% -%% This file has the LPPL maintenance status "maintained". -%% -%% This file may only be distributed together with a copy of the LaTeX -%% base system. You may however distribute the LaTeX base system without -%% such generated files. -%% -%% The list of all files belonging to the LaTeX base distribution is -%% given in the file `manifest.txt'. See also `legal.txt' for additional -%% information. -%% -%% The list of derived (unpacked) files belonging to the distribution -%% and covered by LPPL is defined by the unpacking scripts (with -%% extension .ins) which are part of the distribution. -\NeedsTeXFormat{LaTeX2e}[1994/12/01] - -\providecommand\DeclareRelease[3]{} -\providecommand\DeclareCurrentRelease[2]{} - -\DeclareRelease{v2}{2016-02-15.sty} - {doc-2016-02-15.sty} -\DeclareCurrentRelease{v3}{2018-04-16} - -\ProvidesPackage{doc-v3beta} - [2021/02/07 v3.0e - Standard LaTeX documentation package V3 (FMi)] -%% -%% Package `doc' to use with LaTeX 2e -%% Copyright (C) 1989-2018 Frank Mittelbach, all rights reserved. - - - - - -\@ifundefined{macro@cnt}{}{\endinput} -\catcode`\^^A=14 -\AtBeginDocument{\catcode`\^^A=14\relax} -\RequirePackage{kvoptions} -\SetupKeyvalOptions{family=doc,prefix=doc@} -\DeclareBoolOption{noprint} -\DeclareBoolOption{noindex} -\DeclareBoolOption[true]{hyperref} -\DeclareBoolOption[true]{multicol} -\DeclareBoolOption[false]{debugshow} -\DeclareBoolOption[true]{toplevel} -\DeclareComplementaryOption{notoplevel}{toplevel} -\DeclareBoolOption{macrolike} -\DeclareComplementaryOption{envlike}{macrolike} -\DeclareStringOption{idxtype} -\DeclareStringOption{idxgroup} -\DeclareStringOption{printtype} -\DeclareBoolOption[false]{outer} -\ProcessKeyvalOptions* -\newif\ifscan@allowed \scan@allowedtrue -\def\SetupDoc#1{% - \setkeys{doc}{#1}% - \edef\doc@noprintdefault{\ifdoc@noprint true\else false\fi}% - \ifdoc@noindex - \def\doc@noindexdefault{true}% - \scan@allowedfalse - \else - \def\doc@noindexdefault{false}% - \fi -} -\SetupDoc{} % just save the default values -\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}{% - \if@compatibility - \def\MacroFont{\small - \usefont\encodingdefault - \ttdefault - \mddefault - \updefault - }% - \else - \def\MacroFont{\fontencoding\encodingdefault - \fontfamily\ttdefault - \fontseries\mddefault - \fontshape\updefault - \small}% - \fi - }{} -\@ifundefined{AltMacroFont}{% - \if@compatibility - \def\AltMacroFont{\small - \usefont\encodingdefault - \ttdefault - \mddefault - \sldefault - }% - \else - \def\AltMacroFont{\fontencoding\encodingdefault - \fontfamily\ttdefault - \fontseries\mddefault - \fontshape\sldefault - \small - }% - \fi - }{} -\AtBeginDocument{\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} -\gdef\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\ifx <\next - \percentchar - \else - \let\next\pm@module - \fi\fi\fi\fi\fi - \next} -\endgroup -\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 - \mathcode`\-="702D \mathcode`\+="702B - \mathcode`\:="703A \mathcode`\=="703D } -\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 - -\reversemarginpar -\setlength\marginparpush{0pt} \setlength\marginparwidth{8pc} -\setlength\marginparsep{\labelsep} -{\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 -\newskip\MacroTopsep \MacroTopsep = 7pt plus 2pt minus 2pt -\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} -\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} -\begingroup -\catcode`\&=12 -\gdef\short@macro#1{\begingroup - \uccode`\&=\expandafter`\string#1% - \uppercase{\def\x{\def\macro@namepart{&}}}% - \expandafter\endgroup\x - \maybe@index@short@macro\macro@namepart - \scan@allowedfalse#1% - \scan@allowedtrue } -\endgroup -\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 - \maybe@index@macro \macro@namepart -} - -\RequirePackage{expl3} -\ExplSyntaxOn -\seq_new:N \l__doc_donotindex_seq -\prop_new:N \g__doc_idxtype_prop -\cs_new:Npn\__doc_trace:x { - \ifdoc@debugshow - \expandafter \iow_term:x - \else - \expandafter \use_none:n - \fi -} -\cs_new:Npn \doc_dont_index:n { - \group_begin: - \MakePrivateLetters - \__doc_dont_index:n -} -\cs_new:Npn \__doc_dont_index:n #1 { - \group_end: - \__doc_trace:x{Disable~ indexing~ for~ '\tl_to_str:n{#1}' } - \clist_map_function:nN {#1} \__doc_dont_index_aux:n -} -\cs_new:Npn \__doc_dont_index_aux:n #1 { - \seq_put_right:Nx \l__doc_donotindex_seq {\expandafter\@gobble \string#1} -} -\cs_set_eq:NN \DoNotIndex \doc_dont_index:n -\def \ShowIndexingState { - \__doc_trace:x{Show~ doc~ indexing~ state:} - \seq_show:N \l__doc_donotindex_seq - \prop_show:N \g__doc_idxtype_prop -} - -\cs_new:Npn \__doc_idxtype_put:Nn #1#2 { - \exp_args:Nx \__doc_idxtype_put:nn { \cs_to_str:N #1 }{#2} - \protected@write\@auxout{} - {\string\RecordIndexTypeAux {\string#1 }{#2} } -} -\cs_new:Npn \RecordIndexTypeAux #1#2 { - \exp_args:Nx \__doc_idxtype_put:nn { \cs_to_str:N #1 }{#2} -} -\AtEndDocument{ - \cs_set_eq:NN \RecordIndexTypeAux \use_none:nn -} -\cs_set_eq:NN \RecordIndexType \__doc_idxtype_put:Nn -\cs_new:Npn \__doc_idxtype_put_scan:nn #1#2 { - \exp_args:Nf \__doc_idxtype_put:nn { \tl_to_str:n {#1} }{#2} - \protected@write\@auxout{} - {\string\RecordIndexTypeAux {\bslash #1 }{#2} } -} -\cs_generate_variant:Nn \__doc_idxtype_put_scan:nn {o} -\cs_set_eq:NN \record@index@type@save \__doc_idxtype_put_scan:on -\cs_new:Npn \__doc_idxtype_put:nn #1#2 { - \exp_args:NNf - \seq_if_in:NnTF \l__doc_donotindex_seq {\tl_to_str:n{#1}} - { - \__doc_trace:x{Not~ recording~ index~ type~ for~ '\bslash #1' } - } - { - \__doc_trace:x{Recording~ index~ type~ for~ '\bslash #1' ~ as~ #2 } - \prop_gput:Nnn \g__doc_idxtype_prop {#1}{#2} - } -} -\cs_new:Npn \exp_args:co #1#2 - { \cs:w #1 \exp_after:wN \cs_end:\exp_after:wN {#2} } -\cs_generate_variant:Nn \tl_to_str:n {o} - -\cs_new:Npn \__doc_maybe_index:o #1 { - \exp_args:Nf \__doc_maybe_index_aux:nN { \tl_to_str:o {#1} } - \SpecialIndex -} -\cs_set_eq:NN \maybe@index@macro \__doc_maybe_index:o -\cs_new:Npn \__doc_maybe_index_short:o #1 { - \exp_args:Nf \__doc_maybe_index_aux:nN { \tl_to_str:o {#1} } - \SpecialShortIndex -} -\cs_set_eq:NN \maybe@index@short@macro \__doc_maybe_index_short:o -\cs_new:Npn \__doc_maybe_index_aux:nN #1#2 { - \__doc_trace:x{Searching~ for~ '\bslash #1'} - \seq_if_in:NnTF \l__doc_donotindex_seq {#1} - { - \__doc_trace:x{Not~ indexing~ '\bslash #1' } - } - { - \prop_get:NnNTF \g__doc_idxtype_prop {#1} \l__doc_idxtype_tl - { - \exp_args:Ncno \__doc_maybe_index_aux:Nnn - { Code \tl_use:N \l__doc_idxtype_tl Index } - {code} {\bslash #1} - } - { - \__doc_trace:x{Indexing~ '\bslash #1'\space (\string #2)} - \exp_args:No #2 {\bslash #1} - } - } -} -\cs_new:Npn \SpecialShortIndex #1 { - \@SpecialIndexHelper@ #1\@nil - \@bsphack - \ifdoc@noindex \else - \str_case_e:nnF {\@gtempa } - { - {\cs_to_str:N \^^M } {\def\reserved@a{ \string \space \actualchar } - \def\reserved@b { \space } - \let\reserved@c \@empty } - { } {\def\reserved@a{ \string \space \actualchar } - \def\reserved@b { \space } - \let\reserved@c \@empty } - {\c_left_brace_str} { \def\reserved@a{ \bgroup \actualchar } - \def\reserved@b { \c_left_brace_str } - \def\reserved@c { \noexpand\iffalse - \c_right_brace_str - \noexpand\fi } } - {\c_right_brace_str} { \def\reserved@a{ \egroup \actualchar - \noexpand\iffalse - \c_left_brace_str - \noexpand\fi } - \def\reserved@b { \c_right_brace_str } - \let\reserved@c \@empty } - {\verbatimchar} { \def\reserved@a{ \quotechar\verbatimchar - \actualchar } - \let\reserved@b \@empty - \def\reserved@c - { \string\texttt{\string\string\verbatimchar} } } - } - { \def\reserved@a {\quotechar \@gtempa \actualchar } - \def\reserved@b {\quotechar \@gtempa } - \let\reserved@c \@empty } - \special@index { - \reserved@a - \string\verb - \quotechar *\verbatimchar \quotechar \bslash - \reserved@b - \verbatimchar - \reserved@c - \encapchar code} - \fi - \@esphack -} - -\cs_new:Npn \__doc_maybe_index_aux:Nnn #1#2#3 { - \cs_if_exist:NTF #1 - { - \__doc_trace:x{Indexing~ '#3'\space as~ - \tl_use:N \l__doc_idxtype_tl } - #1{#2}{#3} - } - { - \PackageError{doc}{Doc~ element~ - '\tl_use:N \l__doc_idxtype_tl'~ unknown}% - - {When~ using~ '\string\RecordIndexType'~ the~ type~ must~ - be~ known~\MessageBreak - to~ the~ system,~ i.e.,~ declared~ via~ - '\string\NewDocElement'\MessageBreak - before~ it~ can~ be~ used~ in~ indexing.} - } -} -\ExplSyntaxOff -\@ifundefined{actualchar}{\def\actualchar{=}}{} -\@ifundefined{quotechar}{\def\quotechar{!}}{} -\@ifundefined{levelchar}{\def\levelchar{>}}{} -\@ifundefined{encapchar}{\def\encapchar{|}}{} -\@ifundefined{verbatimchar}{\def\verbatimchar{+}}{} -\begingroup - \catcode`\|=0 - \catcode`\\=12 - |gdef|@SpecialIndexHelper@#1#2|@nil{% - |if |noexpand#1\% - |gdef|@gtempa{#2}% - |else - |begingroup - |escapechar|m@ne - |expandafter|gdef|expandafter|@gtempa|expandafter{|string#1#2}% - |endgroup - |fi} -|endgroup -\def\SortIndex#1#2{% - \ifdoc@noindex\else - \index{#1\actualchar#2}% - \fi -} -\@ifundefined{LeftBraceIndex}{\def\LeftBraceIndex{% - \special@index{\bgroup\actualchar - \string\verb% % to fool emacs highlighting - \quotechar*\verbatimchar - \quotechar\bslash{\verbatimchar\string\iffalse}\string\fi}}}{} - -\@ifundefined{RightBraceIndex}{\def\RightBraceIndex{% - \special@index{\egroup\actualchar\string\iffalse{\string\fi - \string\verb% % to fool emacs highlighting - \quotechar*\verbatimchar\quotechar\bslash}\verbatimchar}}}{} -\@ifundefined{PercentIndex} - {\def\PercentIndex{\it@is@a\percentchar}}{} -\def\OldMakeindex{\def\PercentIndex{% - \special@index{\quotechar\percentchar\actualchar - \string\verb% % to fool emacs highlighting - \quotechar*\verbatimchar\quotechar\bslash - \percentchar\percentchar\verbatimchar}}} -{\catcode`\%=12 \gdef\percentchar{%}} -\def\it@is@a#1{\special@index{\quotechar #1\actualchar - \string\verb% % to fool emacs highlighting - \quotechar*\verbatimchar - \quotechar\bslash\quotechar#1\verbatimchar}} - -\newdimen\IndexMin \IndexMin = 80pt -\newcount\c@IndexColumns \c@IndexColumns = 3 -\ifdoc@multicol - \RequirePackage{multicol} - \renewenvironment{theindex} - {\begin{multicols}\c@IndexColumns[\index@prologue][\IndexMin]% - \IndexParms \let\item\@idxitem \ignorespaces}% - {\end{multicols}} -\else - \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}% - Numbers written in italic refer to the page - where the corresponding entry is described; - numbers underlined refer to the - \ifcodeline@index - code line of the - \fi - definition; numbers in roman refer to the - \ifcodeline@index - code lines - \else - pages - \fi - where the entry 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\pfill{\unskip~% - \leaders\hbox to.6em{\hss .\hss}\hfill - \penalty500\strut\nobreak - \leaders\hbox to.6em{\hss .\hss}\hfil - ~\ignorespaces}% -\def\*{\leavevmode\lower.8ex\hbox{$\,\widetilde{\ }\,$}} -\@ifundefined{main}{\def\main#1{\underline{#1}}}{} -\@ifundefined{usage}{\def\usage#1{\textit{#1}}}{} -\@ifundefined{code}{\def\code#1{#1}}{} -\def\PrintIndex{\@input@{\jobname.ind}% - \global\let\PrintIndex\@empty} -\def\changes{\@bsphack\begingroup\@sanitize - \catcode`\\\z@ \catcode`\ 10 \MakePercentIgnore - \changes@} -\def\changes@#1#2#3{% - \protected@edef\@tempa{\noexpand\glossary{#1\levelchar - \ifx\saved@macroname\@empty - \quotechar!% - \actualchar - \generalname - \else - \saved@indexname - \actualchar - \string\verb% % to fool emacs highlighting - \quotechar*% - \verbatimchar\saved@macroname - \verbatimchar - \fi - :\levelchar #3}}% - \@tempa\endgroup\@esphack} -\def\saved@macroname{} -\def\saved@indexname{} -\def\generalname{General} -\let\RecordChanges\makeglossary -\newdimen\GlossaryMin \GlossaryMin = 80pt -\newcount\c@GlossaryColumns \c@GlossaryColumns = 2 -\ifdoc@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 - \expandafter\def\expandafter\GlossaryParms\expandafter{\GlossaryParms - \rightskip 15pt plus 1fil - \parfillskip -15pt plus -1fil\relax} -}{} -\def\PrintChanges{\@input@{\jobname.gls}% - \global\let\PrintChanges\@empty} -\newcommand\AlsoImplementation{% - \long\def\MaybeStopHere##1{\@bsphack\gdef\Finale{##1% - \check@checksum}% - \init@checksum - \@esphack}% - } -\AlsoImplementation -\def\OnlyDescription{\@bsphack\long\def\MaybeStopHere##1{% - ##1\endinput}\@esphack} -\let\Finale\relax -\def\StopEventually{\MaybeStopHere} -\ifx\l@nohyphenation\undefined - \newlanguage\l@nohyphenation -\fi -\DeclareRobustCommand\meta[1]{% - \ensuremath\langle - \ifmmode \expandafter \nfss@text \fi - {% - \meta@font@select - \edef\meta@hyphen@restore - {\hyphenchar\the\font\the\hyphenchar\font}% - \hyphenchar\font\m@ne - \language\l@nohyphenation - #1\/% - \meta@hyphen@restore - }\ensuremath\rangle -} -\def\meta@font@select{\itshape} -\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{% - \@ifstar - {\def\@shortvrbdef{\verb*}\@MakeShortVerb}% - {\def\@shortvrbdef{\verb}\@MakeShortVerb}} -\def\@MakeShortVerb#1{% - \expandafter\ifx\csname cc\string#1\endcsname\relax - \@shortvrbinfo{Made }{#1}\@shortvrbdef - \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~% - \expandafter\gdef\expandafter~\expandafter{\@shortvrbdef~}}% - \endgroup - \global\catcode`#1\active - \else - \@shortvrbinfo\@empty{#1 already}% - {\@empty\verb% % to fool emacs highlighting - (*)}% - \fi} -\def\DeleteShortVerb#1{% - \expandafter\ifx\csname cc\string#1\endcsname\relax - \@shortvrbinfo\@empty{#1 not}% - {\@empty\verb% % to fool emacs highlighting - (*)}% - \else - \@shortvrbinfo{Deleted }{#1 as}% - {\@empty\verb% % to fool emacs - % highlighting - (*)}% - \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\@shortvrbinfo#1#2#3{% - \PackageInfo{doc}{% - #1\expandafter\@gobble\string#2 a short reference - for \expandafter\string#3}} -\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\init@checksum{\relax - \global\bslash@cnt\z@} -\def\check@checksum{\relax - \ifnum\check@sum>\m@ne - \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 - \fi - \global\check@sum\m@ne} -\newcount\check@sum \check@sum = \m@ne -\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 - \begingroup - \set@display@protect - \immediate\write\@indexfile - {\string\indexentry{#1}% - {\number\c@CodelineNo}}% - \endgroup - \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} - -\ifdoc@hyperref - \let\PrintDescribeMacro \@empty - \let\PrintDescribeEnv \@empty - \let\PrintMacroName \@empty - \let\PrintEnvName \@empty - \let\SpecialUsageIndex \@empty - \let\SpecialEnvIndex \@empty - \expandafter\let\expandafter\doc@eoph@@k\csname doc.sty-h@@k\endcsname - \RequirePackage{hypdoc} - \expandafter\let\csname doc.sty-h@@k\endcsname\doc@eoph@@k - \let\PrintDescribeMacro \relax - \let\PrintDescribeEnv \relax - \let\PrintMacroName \relax - \let\PrintEnvName \relax - \def\doc@providetarget{\HD@target} - \def\doc@handleencap#1{\encapchar hdclindex{\the\c@HD@hypercount}{#1}} -\else - \let\doc@providetarget\@empty - \def\doc@handleencap#1{\encapchar #1} - \def\hdclindex#1#2{\ifx\@nil#2\@nil\else\csname #2\expandafter\endcsname\fi} - \def\hdpindex #1{\ifx\@nil#1\@nil\else\csname #1\expandafter\endcsname\fi} -\fi - - -\ExplSyntaxOn - -\long\def\@doc@env#1#2#3{ - \endgroup - \clist_map_inline:nn {#3} { \@doc@env@{#1}{#2}{##1} } -} - -\ExplSyntaxOff -\long\def\@doc@env@#1#2#3{% - \topsep\MacroTopsep - \trivlist - \edef\saved@macroname{\string#3}% - \if #1% - \edef\saved@indexname{\expandafter\@gobble\saved@macroname}% - \expandafter\ifx - \csname Code#2Index\endcsname - \CodeMacroIndex - \else - \record@index@type@save - {\saved@indexname}{#2}% - \fi - \else - \let\saved@indexname\saved@macroname - \fi - \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 - \ifdoc@noprint - \item - \else - \edef\@tempa{% - \noexpand\item[% - \noexpand\doc@providetarget - \noexpand\strut - \noexpand\@nameuse{Print#2Name}{\saved@macroname}]}% - \@tempa - \fi - \ifdoc@noindex\else - \global\advance\c@CodelineNo\@ne - \csname SpecialMain#2Index\expandafter\endcsname - \expandafter{\saved@macroname}\nobreak - \global\advance\c@CodelineNo\m@ne - \fi - \if#1\expandafter\DoNotIndex \expandafter {\saved@macroname}\fi - \ignorespaces} - -\def\doc@env#1#2[#3]{% - \@nameuse{doc@noprint\doc@noprintdefault}% - \@nameuse{doc@noindex\doc@noindexdefault}% - \setkeys{doc}{#3}% - \begingroup - \ifdoc@outer - \catcode`\\12 - \fi - \MakePrivateLetters - \@doc@env{#1}{#2}% -} - -\def\@doc@describe#1#2{% - \ifdoc@noprint\else - \marginpar{\raggedleft - \strut - \doc@providetarget - \@nameuse{PrintDescribe#1}{#2}}% - \fi - \ifdoc@noindex\else - \@nameuse{Special#1Index}{#2}% - \fi - \@esphack - \endgroup - \ignorespaces} -\def\doc@describe#1[#2]{% - \leavevmode\@bsphack - \setkeys{doc}{#2}% - \@doc@describe{#1}} -\@ifundefined{temptokenb}{\newtoks\@temptokenb}{} -\def\doc@createspecialindexes#1#2#3{% - \@temptokena{\space (#2)}% - \@temptokenb{#3:}% - \@nameedef{SpecialMain#1Index}##1{% - \noexpand\@bsphack - \ifdoc@toplevel - \noexpand\special@index{##1\noexpand\actualchar - {\string\ttfamily\space##1}% - \ifx\@nil#2\@nil\else \the\@temptokena \fi - \noexpand\encapchar main}% - \fi - \ifx\@nil#3\@nil\else - \noexpand\special@index{\the\@temptokenb\noexpand\levelchar - ##1\noexpand\actualchar{\string\ttfamily\space##1}% - \noexpand\encapchar main}% - \fi - \noexpand\@esphack}% - \@nameedef{Special#1Index}##1{% - \noexpand\@bsphack - \ifdoc@toplevel - \noexpand\doc@providetarget - \noexpand\index{##1\noexpand\actualchar{\string\ttfamily\space##1}% - \ifx\@nil#2\@nil\else \the\@temptokena \fi - \noexpand\doc@handleencap{usage}}% - \fi - \ifx\@nil#3\@nil\else - \noexpand\index{\the\@temptokenb\noexpand\levelchar - ##1\noexpand\actualchar{\string\ttfamily\space##1}% - \noexpand\doc@handleencap{usage}}% - \fi - \noexpand\@esphack}} -\def\doc@createspecialmacrolikeindexes#1#2#3{% - \@temptokena{\space (#2)}% - \@temptokenb{#3:}% - \@nameedef{Code#1Index}##1##2{% - \noexpand\@SpecialIndexHelper@##2\noexpand\@nil - \noexpand\@bsphack - \noexpand\ifdoc@noindex\noexpand\else - \ifdoc@toplevel - \noexpand\special@index{\noexpand\@gtempa\noexpand\actualchar -\string\verb% % to fool emacs highlighting -\noexpand\quotechar*\noexpand\verbatimchar -\noexpand\bslash\noexpand\@gtempa\noexpand\verbatimchar -\ifx\@nil#2\@nil\else \the\@temptokena \fi -\noexpand\encapchar ##1}% - \fi - \ifx\@nil#3\@nil\else - \noexpand\special@index{\the\@temptokenb\noexpand\levelchar -\noexpand\@gtempa\noexpand\actualchar -\string\verb% % to fool emacs highlighting -\noexpand\quotechar*\noexpand\verbatimchar -\noexpand\bslash\noexpand\@gtempa\noexpand\verbatimchar -\noexpand\encapchar ##1}% - \fi - \noexpand\fi - \noexpand\@esphack}% - \@nameedef{SpecialMain#1Index}##1{% - \expandafter\noexpand\csname Code#1Index\endcsname - {main}{##1}}% - \@nameedef{Special#1Index}##1{% - \noexpand\@SpecialIndexHelper@##1\noexpand\@nil - \noexpand\@bsphack - \noexpand\ifdoc@noindex\noexpand\else - \ifdoc@toplevel - \noexpand\doc@providetarget - \noexpand\index{\noexpand\@gtempa\noexpand\actualchar -\string\verb% % to fool emacs highlighting -\noexpand\quotechar*\noexpand\verbatimchar -\noexpand\bslash\noexpand\@gtempa\noexpand\verbatimchar -\ifx\@nil#2\@nil\else \the\@temptokena \fi -\noexpand\doc@handleencap{usage}}% - \fi - \ifx\@nil#3\@nil\else - \noexpand\index{\the\@temptokenb\noexpand\levelchar -\noexpand\@gtempa\noexpand\actualchar -\string\verb% % to fool emacs highlighting -\noexpand\quotechar*\noexpand\verbatimchar -\noexpand\bslash\noexpand\@gtempa\noexpand\verbatimchar -\noexpand\doc@handleencap{usage}}% - \fi - \noexpand\fi - \noexpand\@esphack}} - -\def\doc@createdescribe#1{% - \@namedef{Describe#1}{% - \begingroup - \MakePrivateLetters - \@ifnextchar[%] - {\doc@describe{#1}}{\doc@describe{#1}[]}}} -\def\doc@createenv#1#2#3{% - \@namedef{#3}{% - \@ifnextchar[%] - {\doc@env{#1}{#2}}{\doc@env{#1}{#2}[]}}% - \@namedef{end#3}{\endtrivlist}% -} - -\def\@nameedef#1{\expandafter\edef\csname #1\endcsname} - - -\def\doc@declareerror#1#2{% - \PackageError{doc}{Doc element '#1/#2' already defined?\@gobble}% - {There is already a definition for - '\string\Print#1Name',\MessageBreak - '\string\PrintDescribe#1' - or the environment '#2'.\MessageBreak - Maybe you are overwriting something by mistake!\MessageBreak - Otherwise use '\string\RenewDocElement' instead.}% -} - -\def\doc@notdeclarederror#1#2{% - \PackageError{doc}{Doc element '#1/#2' unknown}% - {I expected an existing definition for - '\string\Print#1Name',\MessageBreak - '\string\PrintDescribe#1' and - the environment '#2' but\MessageBreak - not all of them are defined.\MessageBreak - Maybe you wanted to use - '\string\NewDocElement'?}% -} -\newcommand\NewDocElement[3][]{% - \@ifundefined{Print#2Name}% - {\@ifundefined{PrintDescribe#2}% - {\@ifundefined{#3}% - {\@ifundefined{end#3}% - {\@NewDocElement{#1}}% - \doc@declareerror - }\doc@declareerror - }\doc@declareerror - }\doc@declareerror - {#2}{#3}% -} -\newcommand\RenewDocElement[3][]{% - \@ifundefined{Print#2Name}\doc@notdeclarederror - {\@ifundefined{PrintDescribe#2}\doc@notdeclarederror - {\@ifundefined{#3}\doc@notdeclarederror - {\@ifundefined{end#3}\doc@notdeclarederror - {\@NewDocElement{#1}}% - }% - }% - }% - {#2}{#3}% -} -\def\@NewDocElement#1#2#3{% - \doc@macrolikefalse - \doc@topleveltrue - \def\doc@idxtype{#3}% - \def\doc@idxgroup{#3s}% - \let\doc@printtype\@empty - \setkeys{doc}{#1}% - \ifx\doc@printtype\@empty - \@temptokena{}% - \else - \@temptokena\expandafter{\expandafter - \textnormal\expandafter{\expandafter - \space\expandafter - (\doc@printtype)}}% - \fi - \@nameedef{Print#2Name}##1{% - {\noexpand\MacroFont - \ifdoc@macrolike - \noexpand\string - \fi - ##1% - \the\@temptokena - }}% - \expandafter\let\csname PrintDescribe#2\expandafter\endcsname - \csname Print#2Name\endcsname - \edef\doc@expr{% - \ifdoc@macrolike - \noexpand\doc@createspecialmacrolikeindexes - \else - \noexpand\doc@createspecialindexes - \fi - {#2}% - }% - \expandafter\expandafter\expandafter - \doc@expr - \expandafter\expandafter\expandafter - {\expandafter\doc@idxtype\expandafter}\expandafter - {\doc@idxgroup}% - \doc@createdescribe{#2}% - \ifdoc@macrolike - \doc@createenv{TT}{#2}{#3}% - \else - \doc@createenv{TF}{#2}{#3}% - \fi -} - - -\NewDocElement[macrolike = true , - idxtype = , - idxgroup = , - printtype = - ]{Macro}{macro} - -\def\SpecialMainIndex{\SpecialMainMacroIndex} - -\def\SpecialUsageIndex{\SpecialMacroIndex} - -\def\SpecialIndex {\CodeMacroIndex{code}} - -\NewDocElement[macrolike = false , - idxtype = env. , - idxgroup = environments , - printtype = \textit{env.} - ]{Env}{environment} - - -\DeclareRobustCommand\cs[1]{\texttt{\bslash #1}} - -\endinput -%% -%% End of file `doc-v3beta.sty'. |