summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/latex/projlib/PJLthm.sty
diff options
context:
space:
mode:
Diffstat (limited to 'Master/texmf-dist/tex/latex/projlib/PJLthm.sty')
-rw-r--r--Master/texmf-dist/tex/latex/projlib/PJLthm.sty67
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}