summaryrefslogtreecommitdiff
path: root/macros/latex/contrib/hyperref/ntheorem-hyper.sty
diff options
context:
space:
mode:
authorNorbert Preining <norbert@preining.info>2021-02-08 03:01:14 +0000
committerNorbert Preining <norbert@preining.info>2021-02-08 03:01:14 +0000
commit314f2cf58d8c42409e06e1c52de09b77d6e5fe09 (patch)
treeaed06f32ad00ff26fb839b9fd650b51b2443a3fb /macros/latex/contrib/hyperref/ntheorem-hyper.sty
parente068841d2fc2976d094b382e4dd5e4d6df455506 (diff)
CTAN sync 202102080301
Diffstat (limited to 'macros/latex/contrib/hyperref/ntheorem-hyper.sty')
-rw-r--r--macros/latex/contrib/hyperref/ntheorem-hyper.sty927
1 files changed, 7 insertions, 920 deletions
diff --git a/macros/latex/contrib/hyperref/ntheorem-hyper.sty b/macros/latex/contrib/hyperref/ntheorem-hyper.sty
index 1db77c3170..dcdd59167e 100644
--- a/macros/latex/contrib/hyperref/ntheorem-hyper.sty
+++ b/macros/latex/contrib/hyperref/ntheorem-hyper.sty
@@ -1,920 +1,7 @@
-%%
-%% This is file `ntheorem.sty',
-%% generated with the docstrip utility.
-%%
-%% The original source files were:
-%%
-%% ntheorem.dtx (with options: `package')
-%%
-%%
-%% ### WARNING: =============================================================
-%%
-%% This file is a patched version that works (it seems) with hyperref.
-%% Hyperref's \contentsline version breaks with ntheorem because it puts 3
-%% arguments in the text field (e.g.: \contentsline{def}{{def}{1}{foo}}{21})
-%%
-%% To work around the problem, the following steps are implemented:
-%% 1/ Don't use hyperref's contentsline: restore the normal definition at the
-%% beginning of \thm@processlist.
-%% 2/ Let the different versions of \thm@@thmline take a 5th argument, the one
-%% provided by hyperref.
-%% 3/ Let \thm@lgobble take a 3rd argument, the one provided by hyperref.
-%% 4/ Do the hyperlinks manually in the different versions of \thm@@thmline
-%%
-%% You'll find comments starting with `%%DV' around my changes in the code.
-%%
-%%
-%% Didier Verna <verna@inf.enst.fr>
-%%
-%% ==========================================================================
-%%
-%% IMPORTANT NOTICE:
-%%
-%% For the copyright see the source file.
-%%
-%% Any modified versions of this file must be renamed
-%% with new filenames distinct from ntheorem.sty.
-%%
-%% For distribution of the original source see the terms
-%% for copying and modification in the file ntheorem.dtx.
-%%
-%% This generated file may be distributed as long as the
-%% original source files, as listed above, are part of the
-%% same distribution. (The sources need not necessarily be
-%% in the same archive or directory.)
-\def\filedate{1998/12/03}
-\def\docdate{1998/12/03}
-\def\fileversion{1.14}
-\def\basename{ntheorem-hyper}
-%% \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 \~}
-\typeout{Style `\basename', Version \fileversion\space <\filedate>}
-\ProvidesPackage{ntheorem-hyper}[\filedate \space\fileversion]
-\newif\if@thmmarks\@thmmarksfalse
-\newif\ifthm@tempif
-\DeclareOption{thmmarks}{%*********************************
-\PackageInfo{\basename}{Option `thmmarks' loaded}%
-\@thmmarkstrue
-\newcounter{endNonectr}
-\newcounter{currNonectr}
-\newif\ifsetendmark\setendmarktrue
-\gdef\endtrivlist{%
- \@endtrivlist{\PotEndMark{\hbox{}\nobreak\hfill\nobreak}}}
-\gdef\@endtrivlist#1{% % from \endtrivlist
- \if@inlabel \indent\fi
- \if@newlist \@noitemerr\fi
- \ifhmode
- \ifdim\lastskip >\z@ #1\unskip \par %<<<<<<<<<<<<<<<<<<<<<<
- \else \unskip \par \fi
- \fi
- \if@noparlist \else
- \ifdim\lastskip >\z@
- \@tempskipa\lastskip \vskip -\lastskip
- \advance\@tempskipa\parskip \advance\@tempskipa -\@outerparskip
- \vskip\@tempskipa
- \fi
- \@endparenv
- \fi}
-\gdef\SetMark@endeqn{\quad}% as default, cf. option leqno
-\gdef\endequation{\eqno \hbox{\@eqnnum \PotEndMark{\SetMark@endeqn}}%
- $$\global\@ignoretrue}
-\gdef\[{%
- \relax\ifmmode
- \@badmath
- \else
- \ifvmode
- \nointerlineskip
- \makebox[.6\linewidth]%
- \fi
- $$\stepcounter{end\InTheoType ctr}%
- \@ifundefined{mark\roman{curr\InTheoType ctr}%
- \InTheoType\roman{end\InTheoType ctr}}{\relax}%
- {\ifx\csname\InTheoType Symbol\endcsname\@empty\else
- \boxmaxdepth=.5ex\begin{array}[b]{l}%
- \boxmaxdepth=\maxdimen\displaystyle\fi}%
- \addtocounter{end\InTheoType ctr}{-1}%
- %%$$ BRACE MATCH HACK
- \fi}
-\gdef\]{%
- \stepcounter{end\InTheoType ctr}%
- \@ifundefined{mark\roman{curr\InTheoType ctr}%
- \InTheoType\roman{end\InTheoType ctr}}{\relax}%
- {\ifx\csname\InTheoType Symbol\endcsname\@empty\else
- \end{array}\fi}%
- \addtocounter{end\InTheoType ctr}{-1}%
- \relax\ifmmode
- \ifinner
- \@badmath
- \else
- \PotEndMark{\eqno}\global\@ignoretrue$$%%$$ BRACE MATCH HACK
- \fi
- \else
- \@badmath
- \fi
- \ignorespaces}
-\gdef\SetMark@endeqnarray#1{\llap{\raisebox{-1.3em}{#1}}}
-\gdef\endeqnarray{%
- \global\let\Oldeqnnum=\@eqnnum
- \gdef\@eqnnum{\Oldeqnnum\PotEndMark{\SetMark@endeqnarray}}%
- \@@eqncr
- \egroup
- \global\advance\c@equation\m@ne
- $$\global\@ignoretrue
- \global\let\@eqnnum\Oldeqnnum}
-\@namedef{endeqnarray*}{%
- % from \@@eqncr:
- \let\reserved@a\relax
- \ifcase\@eqcnt \def\reserved@a{& & &}\or \def\reserved@a{& &}%
- \or \def\reserved@a{&}\else
- \let\reserved@a\@empty
- \@latex@error{Too many columns in eqnarray environment}\@ehc\fi
- \reserved@a {\normalfont \normalcolor \PotEndMark{}}%
- \global\@eqnswtrue\global\@eqcnt\z@\cr
- %
- \egroup
- \global\advance\c@equation\m@ne
- $$\global\@ignoretrue}
-\gdef\endtabbing{%
- \PotEndMark{\`}\@stopline\ifnum\@tabpush >\z@ \@badpoptabs
- \fi\endtrivlist}
-\gdef\endcenter{%
- \@endtrivlist
- {\PotEndMark{\rightskip0pt%
- \settowidth{\leftskip}%
- { \csname mark\roman{curr\InTheoType ctr}\InTheoType
- \roman{end\InTheoType ctr}\endcsname}%
- \advance\leftskip\@flushglue\hskip\@flushglue}}}
-\gdef\@empty{}
-\gdef\@endtheorem{%
- \expandafter
- \ifx\csname\InTheoType Symbol\endcsname\@empty\setendmarkfalse\fi
- \@endtrivlist
- {\ifsetendmark
- \hbox{}\nobreak\hfill\nobreak\csname\InTheoType Symbol\endcsname
- \setendmarkfalse \fi}%
- \ifsetendmark\OrganizeTheoremSymbol\else\global\setendmarktrue\fi}
-\gdef\NoEndMark{\global\setendmarkfalse}
-\gdef\qed{\expandafter\def\csname \InTheoType Symbol\endcsname
- {\the\qedsymbol}}%
-\gdef\PotEndMark#1{\SetEndMark{\InTheoType}{#1}}%
-\gdef\SetEndMark#1#2{%
- \stepcounter{end#1ctr}%
- \@ifundefined{mark\roman{curr#1ctr}#1\roman{end#1ctr}}%
- {\relax}%
- {#2{\csname mark\roman{curr#1ctr}#1\roman{end#1ctr}\endcsname}}}%
-\newskip\mysavskip
-\gdef\@bbsphack{%
- \mysavskip\lastskip
- \unskip}
-\gdef\@eesphack{%
- \ifdim\mysavskip>\z@
- \vskip\mysavskip \else\fi}
-%% \begin{macrocode}
-\gdef\OrganizeTheoremSymbol{%
- \@bbsphack
- \edef\thm@tmp{\expandafter\expandafter\expandafter\thm@meaning
- \expandafter\meaning\csname\InTheoType Symbol\endcsname\relax}%
- \protected@write\@auxout{}%
- {\string\global\string\def\string\mark%
- \roman{curr\InTheoType ctr}\InTheoType \roman{end\InTheoType ctr}%
- {\thm@tmp}}%
- \@eesphack}
-} % end of option [thmmarks]
-\DeclareOption{leqno}{%
- \if@thmmarks
- \PackageInfo{\basename}{Option `leqno' loaded}%
- \gdef\SetMark@endeqn#1{\hss\llap{#1}}
- \gdef\SetMark@endeqnarray#1{\hss\llap{#1}}
- \fi}%
-\DeclareOption{fleqn}{%
-\if@thmmarks
- \PackageInfo{\basename}{Option `fleqn' loaded}%
- \renewcommand\[{\relax
- \ifmmode\@badmath
- \else
- \begin{trivlist}%
- \@beginparpenalty\predisplaypenalty
- \@endparpenalty\postdisplaypenalty
- \item[]\leavevmode
- \hb@xt@\linewidth\bgroup $\m@th\displaystyle %$
- \hskip\mathindent\bgroup
- \stepcounter{end\InTheoType ctr}%
- \@ifundefined{mark\roman{curr\InTheoType ctr}%
- \InTheoType\roman{end\InTheoType ctr}}{\relax}%
- {\ifx\csname\InTheoType Symbol\endcsname\@empty\else
- \boxmaxdepth=.5ex\begin{array}[b]{l}%
- \boxmaxdepth=\maxdimen\displaystyle\fi}%
- \addtocounter{end\InTheoType ctr}{-1}%
- \fi}
- \renewcommand\]{%
- \stepcounter{end\InTheoType ctr}%
- \@ifundefined{mark\roman{curr\InTheoType ctr}%
- \InTheoType\roman{end\InTheoType ctr}}{\relax}%
- {\ifx\csname\InTheoType Symbol\endcsname\@empty\else
- \end{array}\fi}%
- \addtocounter{end\InTheoType ctr}{-1}%
- \relax\ifmmode
- \egroup $\hfil\PotEndMark{}% $
- \egroup
- \end{trivlist}%
- \else \@badmath
- \fi}
-\gdef\endequation{%
- $\hfil % $
- \displaywidth\linewidth\hbox{\@eqnnum \PotEndMark{\SetMark@endeqn}}%
- \egroup
- \endtrivlist}
-\gdef\endeqnarray{%
- \global\let\Oldeqnnum=\@eqnnum
- \gdef\@eqnnum{\Oldeqnnum\PotEndMark{\SetMark@endeqnarray}}%
- \@@eqncr
- \egroup
- \global\advance\c@equation\m@ne$$% $$
- \global\@ignoretrue
- \global\let\@eqnnum\Oldeqnnum}
-\fi}% end of option fleqn
-\DeclareOption{amsmath}{%
-\if@thmmarks
- \PackageInfo{\basename}{Option `amsmath' loaded}%
-\newdimen\thm@amstmpdepth
-\gdef\TagsPlusEndmarks{%
- \global\let\Old@maketag@@@=\maketag@@@
- \global\let\Old@df@tag=\df@tag
- \if@eqnsw\SetTagPlusEndMark\else
- \iftag@\SetTagPlusEndMark
- \else\SetOnlyEndMark
- \fi\fi}
-\gdef\SetOnlyEndMark{%
- \global\tag@true
- \iftagsleft@
- \gdef\df@tag{\hbox
- to \displaywidth{\hss\PotEndMark{\maketag@@@}}}%
- \else
- \gdef\df@tag{\PotEndMark{\maketag@@@}}%
- \fi}
-\gdef\SetTagPlusEndMark{%
- \iftagsleft@
- \gdef\maketag@@@##1{%
- \hbox to \displaywidth{\m@th\normalfont##1%
- \PotEndMark{\hss}}}%
- \else
- \gdef\maketag@@@##1{\hbox{\m@th\normalfont##1%
- \llap{\hss\PotEndMark{\raisebox{-1.3em}}}}}%
- \fi}
-\gdef\RestoreTags{%
- \global\let\maketag@@@=\Old@maketag@@@
- \global\let\df@tag=\Old@df@tag}
-\gdef\endgather{%
- \TagsPlusEndmarks % <<<<<<<<<
- \math@cr
- \black@\totwidth@
- \egroup
- $$%
- \RestoreTags % <<<<<<<<<
- \global\@ignoretrue}
-\expandafter\let\csname endgather*\endcsname\endgather
-\def\endalign{%
- \ifingather@\else % <<<<<<<<<
- \TagsPlusEndmarks\fi % <<<<<<<<<
- \math@cr
- \black@\totwidth@
- \egroup
- \ifingather@
- \restorealignstate@
- \egroup
- \nonumber
- \ifnum0=`{\fi}%
- \else
- $$%
- \RestoreTags % <<<<<<<<<
- \fi
- \global\@ignoretrue}
-\expandafter\let\csname endalign*\endcsname\endalign
-\let\endxalignat\endalign
-\expandafter\let\csname endxalignat*\endcsname\endalign
-\let\endxxalignat\endalign
-\let\endalignat\endalign
-\expandafter\let\csname endalignat*\endcsname\endalign
-\let\endflalign\endalign
-\expandafter\let\csname endflalign*\endcsname\endalign
-\def\lendmultline@{%
- \@eqnswfalse\tag@true\tagsleft@false
- \rendmultline@}
-\def\rendmultline@{%
- \TagsPlusEndmarks % <<<<<<<<<
- \iftag@
- \begingroup
- \ifshifttag@
- \hskip\multlinegap
- \llap{\vtop{%
- \raise@tag
- \normalbaselines
- \setbox\@ne\null
- \dp\@ne\lineht@
- \box\@ne
- \hbox{\strut@\make@display@tag}%
- }}%
- \else
- \hskip\multlinetaggap
- \make@display@tag
- \fi
- \endgroup
- \else
- \hskip\multlinegap
- \fi
- \hfilneg
- \math@cr
- \egroup$$%
- \RestoreTags} % <<<<<<<<<
-\def\[{%
- \relax\ifmmode% \RIfM@ <<<<<<<<<<<<<<<<<<<<<<<<<<<<
- \@badmath
- \else
- \DN@{%
- $$%
- \ingather@true
- \inany@true
- \def\\{\@amsmath@err{\Invalid@@\\}\@eha}%
- \tabskip\@mathmargin
- \halign to \displaywidth\bgroup
- \if@fleqn\else\hfil\fi
- \setboxz@h{$\m@th\displaystyle{####}$}%
- \global\totwidth@\wdz@
- \global\thm@amstmpdepth\dp0% <<<<<<<<<<<<
- \boxz@
- \tabskip 0pt plus 1000pt%<<<<<<<<<<<<<<
- & ####% <<<<<<<<<<<<<<<<<<<<<<<<
- \tabskip 0pt%
- \cr
- }%
- \@xp\next@
- \fi}
-\def\]{%
- \relax\ifmmode% \RIfM@ <<<<<<<<<<
- \DN@{%
- \PotEndMark{&\raisebox{-\thm@amstmpdepth}}% <<<<<<<<<
- \crcr
- \black@\totwidth@
- \egroup
- $$%
- }%
- \@xp\next@
- \else
- \@badmath
- \fi}
-\def\equation{\gather\def\\{\@amsmath@err{\Invalid@@\\}\@eha}}
-\def\endequation{\endgather}
-\renewenvironment{equation*}{\equation}{\nonumber\endequation}
-\else\PackageError{\basename}{Option amsmath cannot be used without
- option thmmarks.}\@eha
-\fi
-}% end of option amsmath
-\let\thm@usestd\@undefined
-\DeclareOption{standard}{\let\thm@usestd\relax}
-\let\thm@noconfig\@undefined
-\DeclareOption{noconfig}{\let\thm@noconfig\relax}
-\gdef\InTheoType{None}
-\def\output@None{None}
-\def\None{None}
-\gdef\newtheoremstyle#1#2#3{%
- \expandafter\@ifundefined{th@#1}%
- {\expandafter\gdef\csname th@#1\endcsname{%
- \def\@begintheorem####1####2{#2}%
- \def\@opargbegintheorem####1####2####3{#3}}}%
- {\PackageError{\basename}{Theorem style #1 already defined}\@eha}}
-\gdef\renewtheoremstyle#1#2#3{%
- \expandafter\@ifundefined{th@#1}%
- {\PackageError{\basename}{Theorem style #1 undefined}\@ehc}%
- {}%
- \expandafter\let\csname th@#1\endcsname\relax
- \newtheoremstyle{#1}{#2}{#3}}
-\newtheoremstyle{plain}%
- {\item[\hskip\labelsep \theorem@headerfont ##1\ ##2\theorem@separator]}%
- {\item[\hskip\labelsep \theorem@headerfont ##1\ ##2\ (##3)\theorem@separator]}
-\newtheoremstyle{break}%
- {\item\hbox to \textwidth{\theorem@headerfont ##1\
- ##2\theorem@separator\hfill}}%
- {\item\hbox to \textwidth{\theorem@headerfont ##1\ ##2\
- (##3)\theorem@separator\hfill}}
-\newtheoremstyle{change}%
- {\item[\hskip\labelsep \theorem@headerfont ##2\ ##1\theorem@separator]}%
- {\item[\hskip\labelsep \theorem@headerfont ##2\ ##1\ (##3)\theorem@separator]}
-\newtheoremstyle{changebreak}%
- {\item\hbox to \textwidth{\theorem@headerfont ##2\
- ##1\theorem@separator\hfill}}%
- {\item\hbox to \textwidth{\theorem@headerfont ##2\ ##1\
- (##3)\theorem@separator\hfill}}
-\newtheoremstyle{margin}%
- {\item[\theorem@headerfont \llap{##2}\hskip\labelsep ##1\theorem@separator]}%
- {\item[\theorem@headerfont \llap{##2}\hskip\labelsep ##1\ (##3)\theorem@separator]}
-\newtheoremstyle{marginbreak}%
- {\item\hbox to \textwidth{\theorem@headerfont \llap{##2}\hskip\labelsep
- ##1\theorem@separator\hfill}}%
- {\item\hbox to \textwidth{\theorem@headerfont
- \llap{##2}\hskip\labelsep
- ##1\ (##3)\theorem@separator\hfill}}
-\newtheoremstyle{nonumberplain}%
- {\item[\theorem@headerfont\hskip\labelsep ##1\theorem@separator]}%
- {\item[\theorem@headerfont\hskip \labelsep ##1\ (##3)\theorem@separator]}
-\newtheoremstyle{nonumberbreak}%
- {\item\hbox to \textwidth{\theorem@headerfont\hskip\labelsep
- ##1\theorem@separator\hfill}}%
- {\item\hbox to \textwidth{\theorem@headerfont\hskip\labelsep
- ##1\ (##3)\theorem@separator\hfill}}
-\newtheoremstyle{empty}%
- {\item~\hfill}%
- {\item\hbox to \textwidth{\theorem@headerfont##3\hfill}}
-\@namedef{th@nonumbermargin}{\th@nonumberplain}
-\@namedef{th@nonumberchange}{\th@nonumberplain}
-\@namedef{th@nonumbermarginbreak}{\th@nonumberbreak}
-\@namedef{th@nonumberchangebreak}{\th@nonumberbreak}
-\@namedef{th@plainNo}{\th@nonumberplain}
-\@namedef{th@breakNo}{\th@nonumberplain}
-\@namedef{th@marginNo}{\th@nonumberplain}
-\@namedef{th@changeNo}{\th@nonumberplain}
-\@namedef{th@marginbreakNo}{\th@nonumberbreak}
-\@namedef{th@changebreakNo}{\th@nonumberbreak}
-\gdef\theoremstyle#1{%
- \@ifundefined{th@#1}{\@warning
- {Unknown theoremstyle `#1'. Using `plain'}%
- \theorem@style{plain}}%
- {\theorem@style{#1}}}
-\newtoks\theorem@style
-\newtoks\theorem@@style
-\global\theoremstyle{plain}
-\newtoks\theorembodyfont
-\global\theorembodyfont{\itshape}
-\newtoks\theoremnumbering
-\global\theoremnumbering{arabic}
-\newskip\theorempreskipamount
-\newskip\theorempostskipamount
-\global\theorempreskipamount\topsep
-\global\theorempostskipamount\topsep
-\newdimen\theoremindent
-\global\theoremindent0cm
-\newdimen\theorem@indent
-\newtoks\theoremheaderfont
-\global\theoremheaderfont{\normalfont\bfseries}
-\def\theorem@headerfont{\normalfont\bfseries}
-\newtoks\theoremseparator
-\global\theoremseparator{}
-\def\theorem@separator{}
-\newtoks\theoremsymbol
-\global\theoremsymbol{}
-\newtoks\qedsymbol
-\global\qedsymbol{}
-\DeclareOption{amsthm}{%
- \PackageInfo{\basename}{Option `amsthm' loaded}%
-\def\swapnumbers{\PackageError{\basename}{swapnumbers not implemented.
- Use theoremstyle change instead.}\@eha}
-
-\gdef\th@plain{%
- \def\theorem@headerfont{\normalfont\bfseries}\itshape%
- \def\@begintheorem##1##2{%
- \item[\hskip\labelsep \theorem@headerfont ##1\ ##2.]}%
- \def\@opargbegintheorem##1##2##3{%
- \item[\hskip\labelsep \theorem@headerfont ##1\ ##2\ (##3).]}}
-\gdef\th@nonumberplain{%
- \def\theorem@headerfont{\normalfont\bfseries}\itshape%
- \def\@begintheorem##1##2{%
- \item[\hskip\labelsep \theorem@headerfont ##1.]}%
- \def\@opargbegintheorem##1##2##3{%
- \item[\hskip\labelsep \theorem@headerfont ##1\ (##3).]}}
-\gdef\th@definition{%
- \th@plain\def\theorem@headerfont{\normalfont\bfseries}\itshape}
-\gdef\th@nonumberdefinition{%
- \th@nonumberplain\def\theorem@headerfont{\normalfont\bfseries}\itshape}
-\gdef\th@remark{%
- \th@plain\def\theorem@headerfont{\itshape}\normalfont}
-\gdef\th@nonumberremark{%
- \th@nonumberplain\def\theorem@headerfont{\itshape}\normalfont}
-\newcounter{proof}%
-\if@thmmarks
- \newcounter{currproofctr}%
- \newcounter{endproofctr}%
-\fi
-\newcommand{\openbox}{\leavevmode
- \hbox to.77778em{%
- \hfil\vrule
- \vbox to.675em{\hrule width.6em\vfil\hrule}%
- \vrule\hfil}}
-\gdef\proofSymbol{\openbox}
-\newcommand{\proofname}{Proof}
-\newenvironment{proof}[1][\proofname]{
- \th@nonumberplain
- \def\theorem@headerfont{\itshape}%
- \normalfont
- \theoremsymbol{\ensuremath{_\blacksquare}}
- \@thm{proof}{proof}{#1}}%
- {\@endtheorem}
-}% end of option amsthm
-\newskip\thm@topsepadd
-\gdef\newtheorem{%
- \@ifstar
- {\edef\@tempa{{nonumber\the\theorem@style}}%
- \expandafter\theorem@@style\@tempa}%
- {\edef\@tempa{{\the\theorem@style}}%
- \expandafter\theorem@@style\@tempa}%
- \@newtheorem}
-
-\gdef\renewtheorem{%
- \@ifstar
- {\edef\@tempa{{nonumber\the\theorem@style}}%
- \expandafter\theorem@@style\@tempa}%
- {\edef\@tempa{{\the\theorem@style}}%
- \expandafter\theorem@@style\@tempa}%
- \@renewtheorem}
-\gdef\@newtheorem#1{%
- \thm@tempiffalse
- \expandafter\@ifdefinable\csname #1\endcsname
- {\expandafter\@ifdefinable\csname #1*\endcsname
- {\thm@tempiftrue
- \thm@definelthm{#1}% for lists
- \if@thmmarks
- \expandafter\@ifundefined{c@curr#1ctr}%
- {\newcounter{curr#1ctr}}{}%
- \expandafter\@ifundefined{c@end#1ctr}%
- {\newcounter{end#1ctr}}{}%
- \fi
- \expandafter\xdef\csname #1Symbol\endcsname{\the\theoremsymbol}%
- \expandafter\gdef\csname#1\endcsname{%
- \let\thm@starredenv\@undefined
- \csname mkheader@#1\endcsname}%
- \expandafter\gdef\csname#1*\endcsname{%
- \let\thm@starredenv\relax
- \csname mkheader@#1\endcsname}%
- \def\@tempa{\expandafter\noexpand\csname end#1\endcsname}%
- \expandafter\xdef\csname end#1*\endcsname{\@tempa}%
- \expandafter\xdef\csname setparms@#1\endcsname
- {\noexpand \def \noexpand \theorem@headerfont
- {\the\theoremheaderfont\noexpand\theorem@checkbold}%
- \noexpand \def \noexpand \theorem@separator
- {\the\theoremseparator}%
- \noexpand \def \noexpand \theorem@indent
- {\the\theoremindent}%
- \the \theorembodyfont
- \noexpand\csname th@\the \theorem@@style \endcsname}}}%
- \@ifnextchar[{\@othm{#1}}{\@nthm{#1}}}% MUST NOT BE IN ANY IF !!!
-\gdef\@renewtheorem#1{%
- \expandafter\@ifundefined{#1}%
- {\PackageError{\basename}{Theorem style #1 undefined}\@ehc}%
- {}%
- \expandafter\let\csname #1\endcsname\relax
- \expandafter\let\csname #1*\endcsname\relax
- \newtheorem{#1}}
-\gdef\@nthm#1#2{%
- \expandafter\xdef\csname num@addtheoremline#1\endcsname{%
- \noexpand\@num@addtheoremline{#1}{#2}}%
- \expandafter\xdef\csname nonum@addtheoremline#1\endcsname{%
- \noexpand\@nonum@addtheoremline{#1}{#2}}%
- \expandafter\xdef\csname output@#1\endcsname{#2}%
- \@ifnextchar[{\@xnthm{#1}{#2}}{\@ynthm{#1}{#2}}}
-\gdef\@othm#1[#2]#3{%
- \@ifundefined{c@#2}{\@nocounterr{#2}}%
- {\ifthm@tempif
- \global\@namedef{the#1}{\@nameuse{the#2}}%
- \expandafter\xdef\csname num@addtheoremline#1\endcsname{%
- \noexpand\@num@addtheoremline{#1}{#3}}%
- \expandafter\xdef\csname nonum@addtheoremline#1\endcsname{%
- \noexpand\@nonum@addtheoremline{#1}{#3}}%
- \expandafter\xdef\csname output@#1\endcsname{#3}%
- \expandafter\gdef\csname mkheader@#1\endcsname
- {\csname setparms@#1\endcsname
- \@thm{#1}{#2}{#3}}%
- \global\@namedef{end#1}{\@endtheorem}\fi}}
-\gdef\@xnthm#1#2[#3]{%
- \ifthm@tempif
- \expandafter\@ifundefined{c@#1}%
- {\@definecounter{#1}}{}%
- \@newctr{#1}[#3]%
- \expandafter\xdef\csname the#1\endcsname{%
- \expandafter\noexpand\csname the#3\endcsname \@thmcountersep
- {\noexpand\csname\the\theoremnumbering\endcsname{#1}}}%
- \expandafter\gdef\csname mkheader@#1\endcsname
- {\csname setparms@#1\endcsname
- \@thm{#1}{#1}{#2}}%
- \global\@namedef{end#1}{\@endtheorem}\fi}
-\gdef\@ynthm#1#2{%
- \ifthm@tempif
- \expandafter\@ifundefined{c@#1}%
- {\@definecounter{#1}}{}%
- \expandafter\xdef\csname the#1\endcsname
- {\noexpand\csname\the\theoremnumbering\endcsname{#1}}%
- \expandafter\gdef\csname mkheader@#1\endcsname
- {\csname setparms@#1\endcsname
- \@thm{#1}{#1}{#2}}%
- \global\@namedef{end#1}{\@endtheorem}\fi}
-\gdef\@thm#1#2#3{%
- \if@thmmarks
- \stepcounter{end\InTheoType ctr}%
- \fi
- \renewcommand{\InTheoType}{#1}%
- \if@thmmarks
- \stepcounter{curr#1ctr}%
- \setcounter{end#1ctr}{0}%
- \fi
- \refstepcounter{#2}%
- \thm@topsepadd \theorempostskipamount % cf. latex.ltx: \@trivlist
- \ifvmode \advance\thm@topsepadd\partopsep\fi
- \trivlist
- \@topsep \theorempreskipamount
- \@topsepadd \thm@topsepadd % used by \@endparenv
- \advance\linewidth -\theorem@indent
- \advance\@totalleftmargin \theorem@indent
- \parshape \@ne \@totalleftmargin \linewidth
- \@ifnextchar[{\@ythm{#1}{#2}{#3}}{\@xthm{#1}{#2}{#3}}}
-\def\@xthm#1#2#3{%
- \@begintheorem{#3}{\csname the#2\endcsname}%
- \ifx\thm@starredenv\@undefined
- \thm@thmcaption{#1}{{#3}{\csname the#2\endcsname}{}}\fi
- \ignorespaces}
-\def\@ythm#1#2#3[#4]{%
- \expandafter\global\expandafter\def\csname#1name\endcsname{#4}%
- \@opargbegintheorem{#3}{\csname the#2\endcsname}{#4}%
- \ifx\thm@starredenv\@undefined
- \thm@thmcaption{#1}{{#3}{\csname the#2\endcsname}{#4}}\fi%
- \ignorespaces}
-\DeclareOption{thref}{%*********************************
- \PackageInfo{\basename}{Option `thref' loaded}%
-\def\label#1{
- \@ifnextchar[%]
- {\label@optarg{#1}}%
- {\label@optarg{#1}%
- [\csname output@\InTheoType\endcsname]}}
-\def\label@optarg#1[#2]{\@bsphack
- \protected@write\@auxout{}%
- {\string\newlabel{#1}{{\@currentlabel}{\thepage}}[#2]}%
- \@esphack}
-\def\@newl@bel#1#2#3{%
- \@ifundefined{#1@#2}%
- \relax
- {\gdef \@multiplelabels {%
- \@latex@warning@no@line{There were multiply-defined labels}}%
- \@latex@warning@no@line{Label `#2' multiply defined}}%
- \global\@namedef{#1@#2}{#3}%
- \@ifnextchar[{\set@labeltype#1#2}{\relax}%]
- }
-\def\set@labeltype#1#2[#3]{\global\@namedef{#1@#2@type}{#3}}
-\@ifpackageloaded{babel}%
- {\message{ntheorem-babel adapation loaded}%
- \def\newlabel#1#2{%
- \@ifnextchar[{\nth@bbl@newlabel{#1}{#2}}%]
- {\nth@bbl@newlabel{#1}{#2}[None]}}%
- \def\nth@bbl@newlabel#1#2[#3]{%
- \@safe@activestrue\bbl@newlabel{#1}{#2}[#3]\@safe@activesfalse}}%
- \relax
-\def\thref#1{%
- \expandafter\ifx\csname r@#1@type\endcsname\None
- \PackageWarning{\basename}{thref: Reference Type of `#1' on page
- \thepage \space undefined}\G@refundefinedtrue
- \else\csname r@#1@type\endcsname~\fi%
- \expandafter\@setref\csname r@#1\endcsname\@firstoftwo{#1}}
-}% end of option thref
-\def\thm@thmcaption#1#2{\thm@@thmcaption{#1}#2}
-\def\thm@@thmcaption#1#2#3#4{%
- \thm@parseforwriting{#4}%
- \edef\thm@t{{#2}{#3}{\thm@tmp}}%
- \addcontentsline{thm}{#1}{\thm@t}}
-\def\theoremlistall{%
- \let\thm@@thmlstart=\relax
- \let\thm@@thmlend=\relax
-%%DV Use a fith argument (supplied by hyperref) and do the links manually
- \def\thm@@thmline##1##2##3##4##5{%
- \ifx\\##5\\%
- \@dottedtocline{-2}{0em}{2.3em}%
- {\protect\numberline{##2}##3}%
- {##4}
- \else
- \ifhy@linktocpage
- \@dottedtocline{-2}{0em}{2.3em}%
- {\protect\numberline{##2}##3}%
- {\hyper@linkstart{link}{##5}{##4}\hyper@linkend}
- \else
- \@dottedtocline{-2}{0em}{2.3em}%
- {\hyper@linkstart{link}{##5}{\protect\numberline{##2}##3}%
- \hyper@linkend}%
- {##4}
- \fi
- \fi}}
-%%DV \def\thm@@thmline##1##2##3##4{%
-%%DV \@dottedtocline{-2}{0em}{2.3em}%
-%%DV {\protect\numberline{##2}##3}%
-%%DV {##4}}}
-\def\theoremlistallname{%
- \let\thm@@thmlstart=\relax
- \let\thm@@thmlend=\relax
-%%DV Use a fith argument (supplied by hyperref) and do the links manually
- \def\thm@@thmline##1##2##3##4##5{%
- \ifx\\##5\\%
- \@dottedtocline{-2}{0em}{2.3em}%
- {##1 \protect\numberline{##2}##3}%
- {##4}
- \else
- \ifhy@linktocpage
- \@dottedtocline{-2}{0em}{2.3em}%
- {##1 \protect\numberline{##2}##3}%
- {\hyper@linkstart{link}{##5}{##4}\hyper@linkend}
- \else
- \@dottedtocline{-2}{0em}{2.3em}%
- {\hyper@linkstart{link}{##5}%
- {##1 \protect\numberline{##2}##3}\hyper@linkend}%
- {##4}
- \fi
- \fi}}
-%%DV \def\thm@@thmline##1##2##3##4{%
-%%DV \@dottedtocline{-2}{0em}{2.3em}%
-%%DV {##1 \protect\numberline{##2}##3}%
-%%DV {##4}}}
-\def\theoremlistoptional{%
- \let\thm@@thmlstart=\relax
- \let\thm@@thmlend=\relax
-%%DV Use a fith argument (supplied by hyperref) and do the links manually
- \def\thm@@thmline##1##2##3##4##5{%
- \ifx\empty ##3%
- \else%
- \ifx\\##5\\%
- \@dottedtocline{-2}{0em}{2.3em}%
- {\protect\numberline{##2}##3}%
- {##4}
- \else
- \ifhy@linktocpage
- \@dottedtocline{-2}{0em}{2.3em}%
- {\protect\numberline{##2}##3}%
- {\hyper@linkstart{link}{##5}{##4}\hyper@linkend}
- \else
- \@dottedtocline{-2}{0em}{2.3em}%
- {\hyper@linkstart{link}{##5}{\protect\numberline{##2}##3}%
- \hyper@linkend}%
- {##4}
- \fi
- \fi
- \fi}}
-%%DV \def\thm@@thmline##1##2##3##4{%
-%%DV \ifx\empty ##3%
-%%DV \else%
-%%DV \@dottedtocline{-2}{0em}{2.3em}%
-%%DV {\protect\numberline{##2}##3}%
-%%DV {##4}%
-%%DV \fi}}
-\def\theoremlistoptname{%
- \let\thm@@thmlstart=\relax
- \let\thm@@thmlend=\relax
-%%DV Use a fith argument (supplied by hyperref) and do the links manually
- \def\thm@@thmline##1##2##3##4##5{%
- \ifx\empty ##3%
- \else
- \ifx\\##5\\%
- \@dottedtocline{-2}{0em}{2.3em}%
- {##1 \protect\numberline{##2}##3}%
- {##4}
- \else
- \ifhy@linktocpage
- \@dottedtocline{-2}{0em}{2.3em}%
- {##1 \protect\numberline{##2}##3}%
- {\hyper@linkstart{link}{##5}{##4}\hyper@linkend}
- \else
- \@dottedtocline{-2}{0em}{2.3em}%
- {\hyper@linkstart{link}{##5}%
- {##1 \protect\numberline{##2}##3}\hyper@linkend}%
- {##4}
- \fi
- \fi
- \fi}}
-%%DV \def\thm@@thmline##1##2##3##4{%
-%%DV \ifx\empty ##3%
-%%DV \else%
-%%DV \@dottedtocline{-2}{0em}{2.3em}%
-%%DV {##1 \protect\numberline{##2}##3}%
-%%DV {##4}%
-%%DV \fi}}
-\theoremlistall
-\def\theoremlisttype#1{%
- \@ifundefined{thm@thml@#1}%
- {\PackageError{\basename}{Listtype #1 not defined}\@eha}
- {\csname thm@thml@#1\endcsname}}
-\def\thm@thml@all{\theoremlistall}
-\def\thm@thml@opt{\theoremlistoptional}
-\def\thm@thml@optname{\theoremlistoptname}
-\def\thm@thml@allname{\theoremlistallname}
-\def\newtheoremlisttype#1#2#3#4{%
- \@ifundefined{thm@thml@#1}%
- {\expandafter\gdef\csname thm@thml@#1\endcsname{%
- \def\thm@@thmlstart{#2}%
- \def\thm@@thmline####1####2####3####4{#3}%
- \def\thm@@thmlend{#4}}%
- }{\PackageError{\basename}{list type #1 already defined}\@eha}}
-\def\renewtheoremlisttype#1#2#3#4{%
- \@ifundefined{thm@thml@#1}%
- {\PackageError{\basename}{List type #1 not defined}\@ehc}{}%
- \expandafter\let\csname thm@thml@#1\endcsname\relax
- \newtheoremlisttype{#1}{#2}{#3}{#4}}
-%%DV Use a third argument (supplied by hyperref)
-\def\thm@thmline#1#2#3{\thm@@thmline#1{#2}{#3}}
-%%DV\def\thm@thmline#1#2{\thm@@thmline#1{#2}}
-%%DV Use a third argument (supplied by hyperref)
-\long\def\thm@lgobble#1#2#3{\ignorespaces}
-%%DV\long\def\thm@lgobble#1#2{\ignorespaces}
-\def\thm@definelthm#1{%
- \expandafter\gdef\csname l@#1\endcsname{\thm@lgobble}%
- \expandafter\gdef\csname thm@listdo#1\endcsname{\thm@lgobble}}
-\long\def\thm@inlistdo#1#2{#2}%
-\def\listtheorems#1{\begingroup%
- \c@tocdepth=-2%
- \def\thm@list{#1}\thm@processlist%
- \endgroup}
-\def\thm@processlist{%
- \begingroup%
- \typeout{** Generating table of \thm@list}%
-%%DV: don't use hyperref's \contentsline !! Use the normal definition.
- \def\contentsline##1{\csname l@##1\endcsname}
- \thm@@thmlstart
- \@for\thm@currentlist:=\thm@list\do{%
- \ifx\thm@currentlist\@empty\else%
- \expandafter\gdef\csname l@\thm@currentlist\endcsname{\thm@thmline}%
- \expandafter\gdef\csname thm@listdo\thm@currentlist\endcsname{\thm@inlistdo}%
- \fi%
- }%
- \@input{\jobname .thm}%
- \thm@@thmlend%
- \@for\thm@currentlist:=\thm@list\do{%
- \ifx\thm@currentlist\@empty\else%
- \expandafter\gdef\csname l@\thm@currentlist\endcsname{\thm@lgobble}%
- \expandafter\gdef\csname thm@listdo\thm@currentlist\endcsname{\thm@lgobble}%
- \fi%
- }%
- \endgroup}
-\def\thm@enablelistoftheorems{%
- \begingroup%
- \makeatletter%
- \if@filesw%
- \expandafter\newwrite\csname tf@thm\endcsname%
- \immediate\openout \csname tf@thm\endcsname \jobname.thm\relax%
- \fi%
- \@nobreakfalse%
- \endgroup}
-\def\addtheoremline{\@ifstar{\nonum@addtheoremline}{\num@addtheoremline}}
-\def\nonum@addtheoremline#1{\csname nonum@addtheoremline#1\endcsname}%
-\def\num@addtheoremline#1{\csname num@addtheoremline#1\endcsname}%
-\def\@nonum@addtheoremline#1#2#3{%
- \thm@parseforwriting{#3}%
- \edef\thm@t{{#2}{}{\thm@tmp}}%
- \addcontentsline{thm}{#1}{\thm@t}}
-\def\@num@addtheoremline#1#2#3{%
- \thm@parseforwriting{#3}%
- \edef\thm@t{{#2}{\csname the#1\endcsname}{\thm@tmp}}%
- \addcontentsline{thm}{#1}{\thm@t}}
-\long\def\addtotheoremfile{%
- \@ifnextchar[{\@@addtotheoremfile}{\@addtotheoremfile}}
-\long\def\@addtotheoremfile#1{%
- \thm@parseforwriting{#1}%
- \protected@write\@auxout%
- {}{\string\@writefile{thm}{\thm@tmp}}}
-\long\def\@@addtotheoremfile[#1]#2{%
- \thm@parseforwriting{#2}%
- \protected@write\@auxout%
- {}{\string\@writefile{thm}{\string\theoremlistdo{#1}{\thm@tmp}}}}
-\long\def\theoremlistdo#1#2{\csname thm@listdo#1\endcsname{#1}{#2}}
-\AtEndDocument{\thm@enablelistoftheorems}
-\def\thm@meaning#1->#2\relax{#2}% remove "macro:->"
-\long\def\thm@parseforwriting#1{%
- \def\thm@tmp{#1}%
- \edef\thm@tmp{\expandafter\thm@meaning\meaning\thm@tmp\relax}}
-\def\theorem@checkbold{\if b\expandafter\@car\f@series\@nil\boldmath\fi}
-\def\@greek#1{\theorem@checkbold%
- \ifcase#1\or$\alpha$\or$\beta$\or$\gamma$\or$\delta$\or$\varepsilon$%
- \or$\zeta$\or$\eta$\or$\vartheta$\or$\iota$\or$\kappa$\or$\lambda$\or$%
- \mu$\or$\nu$\or$\xi$\or$ o$\or$\varpi$\or$\varrho$\or$\varsigma$\or$\tau$%
- \or$\upsilon$\or$\varphi$\or$\chi$\or$\psi$\or$\omega$\else\@ctrerr\fi}
-\def\@Greek#1{\theorem@checkbold%
- \ifcase#1\or A\or B\or$\Gamma$\or$\Delta$\or E%
- \or Z\or H\or$\Theta$\or I\or K\or$\Lambda$\or M%
- \or N\or$\Xi$\or O\or$\Pi$\or P\or$\Sigma$\or T%
- \or$\Upsilon$\or$\Phi$\or X\or$\Psi$\or$\Omega$\else\@ctrerr\fi}
-\def\greek#1{\@greek{\csname c@#1\endcsname}}
-\def\Greek#1{\@Greek{\csname c@#1\endcsname}}
-\ProcessOptions\relax
-\ifx\thm@noconfig\@undefined
-\InputIfFileExists{ntheorem.cfg}%
- {\PackageInfo{\basename}{Local config file ntheorem.cfg used}}%
- {\ifx\thm@usestd\@undefined%
- \else%
- \InputIfFileExists{ntheorem.std}%
- {\PackageInfo{\basename}{Standard config file ntheorem.std used}}{}
- \fi}
-\fi
-\endinput
-%%
-%% End of file `ntheorem.sty'.
+% Copyright 2021 The LaTeX Project
+% Licence LPPL: https://www.latex-project.org/lppl/lppl-1-3c.txt
+\ProvidesPackage{ntheorem-hyper}[2021/02/07]
+\PackageWarningNoLine{ntheorem-hyper}{%
+This package is obsolete,\MessageBreak
+please use ntheorem instead}
+\RequirePackage{ntheorem}