diff options
Diffstat (limited to 'Master/texmf-dist/tex/latex/projlib/PJLthm.sty')
-rw-r--r-- | Master/texmf-dist/tex/latex/projlib/PJLthm.sty | 67 |
1 files changed, 65 insertions, 2 deletions
diff --git a/Master/texmf-dist/tex/latex/projlib/PJLthm.sty b/Master/texmf-dist/tex/latex/projlib/PJLthm.sty index 36f7d640682..22caa085b79 100644 --- a/Master/texmf-dist/tex/latex/projlib/PJLthm.sty +++ b/Master/texmf-dist/tex/latex/projlib/PJLthm.sty @@ -17,7 +17,7 @@ %% \NeedsTeXFormat{LaTeX2e}[2020-10-01] \ProvidesPackage{PJLthm} - [2021/05/19 Theorem setup and configuration] + [2021/05/20 Theorem setup and configuration] \RequirePackage{kvoptions} \RequirePackage{etoolbox} \SetupKeyvalOptions{% @@ -25,7 +25,12 @@ prefix = @PJLthm@ } \DeclareBoolOption[false]{nothms} +\DeclareBoolOption[false]{fast} +\DeclareBoolOption[false]{regionalref} \ProcessKeyvalOptions*\relax +\if@PJLthm@fast + \@PJLthm@regionalreftrue +\fi \RequirePackage{PJLlang} \RequirePackage{amsmath,amsthm} @@ -47,6 +52,63 @@ {\expandafter\PassFirstToSecond% \expandafter{\temp}{\endgroup\InnerCreateTheorem{#1}}}% }% +\if@PJLthm@regionalref +\NewDocumentCommand{\InnerCreateTheorem}{mmmod<>d()}{% + \IfBooleanTF{#1}{% + \IfValueTF{#4} + {\@firstoftwo} + {\IfValueTF{#5}{\@firstoftwo}{\@secondoftwo}}% + }{% + \IfValueTF{#4} + {\IfValueTF{#5}{\@firstoftwo}{\@secondoftwo}}{ + \@secondoftwo} + }% + {% + \GenericError{}% + {\string\CreateTheorem\space syntax error\on@line}{% + You cannot call the starred variant with optional argument,\MessageBreak + nor call the unstarred variant with several optional arguments.}% + {}% + }{% + \IfValueTF{#6}{% + \IfBooleanTF{#1}{% + \ifcsmacro{#2#3}% + {\renewenvironment{#2#3}{\begin{#6*}}{\end{#6*}}}% + {\newenvironment{#2#3}{\begin{#6*}}{\end{#6*}}}% + }{% + \ifcsmacro{#2#3}% + {\renewenvironment{#2#3}{\begin{#6}}{\end{#6}}}% + {\newenvironment{#2#3}{\begin{#6}}{\end{#6}}}% + } + }{% + \IfBooleanTF{#1}{% + \newtheorem*{#2#3}{\csname#2name\csname\languagename ABBR\endcsname\endcsname} + }{% + \IfValueTF{#5}{% + \newtheorem{PJL#2#3}{\csname#2name\csname\languagename ABBR\endcsname\endcsname}[#5]% + \newaliascnt{#2#3}{PJL#2#3}% + }{% + \IfValueTF{#4}{% + \newtheorem{PJL#2#3}[#4]{\csname#2name\csname\languagename ABBR\endcsname\endcsname} + }{% + \newtheorem{PJL#2#3}{\csname#2name\csname\languagename ABBR\endcsname\endcsname} + \newaliascnt{#2#3}{PJL#2#3}% + }% + }% + \crefname{PJL#2#3}% + {\csname#2name\csname\languagename ABBR\endcsname\endcsname}% + {\csname#2name\csname\languagename ABBR\endcsname\endcsname}% + \Crefname{PJL#2#3}% + {\csname#2name\csname\languagename ABBR\endcsname\endcsname}% + {\csname#2name\csname\languagename ABBR\endcsname\endcsname}% + \NewDocumentEnvironment{#2#3}{} + {\begin{PJL#2#3}} + {\end{PJL#2#3}} + }% + }% + }% +}% +\else \NewDocumentCommand{\InnerCreateTheorem}{mmmod<>d()}{% \IfBooleanTF{#1}{% \IfValueTF{#4} @@ -107,7 +169,7 @@ \NewDocumentEnvironment{#2#3}{} {\csname#2\csname\languagename ABBR\endcsname#3\endcsname}% {\csname end#2\csname\languagename ABBR\endcsname#3\endcsname}% - } + }% }% }% \NewDocumentCommand{\CreateTheoremNumberedLikeAliasCounter}{mmm}{% @@ -121,6 +183,7 @@ {\csname#1name#2\endcsname}% {\csname#1name#2\endcsname}% }% +\fi %% English theorems names \def\theoremnameEN{Theorem} |