From 1769d3d8842ef66919943128931e647de9756adb Mon Sep 17 00:00:00 2001 From: Norbert Preining Date: Wed, 2 Mar 2022 03:03:38 +0000 Subject: CTAN sync 202203020303 --- .../contrib/create-theorem/create-theorem-doc.pdf | Bin 111285 -> 112139 bytes .../contrib/create-theorem/create-theorem-doc.tex | 19 +++++++--- .../contrib/create-theorem/create-theorem.sty | 39 ++++++++++++++------- 3 files changed, 40 insertions(+), 18 deletions(-) (limited to 'macros/latex/contrib/create-theorem') diff --git a/macros/latex/contrib/create-theorem/create-theorem-doc.pdf b/macros/latex/contrib/create-theorem/create-theorem-doc.pdf index 52d4bd1e93..99b8e7290c 100644 Binary files a/macros/latex/contrib/create-theorem/create-theorem-doc.pdf and b/macros/latex/contrib/create-theorem/create-theorem-doc.pdf differ diff --git a/macros/latex/contrib/create-theorem/create-theorem-doc.tex b/macros/latex/contrib/create-theorem/create-theorem-doc.tex index c077649309..749b345a2a 100644 --- a/macros/latex/contrib/create-theorem/create-theorem-doc.tex +++ b/macros/latex/contrib/create-theorem/create-theorem-doc.tex @@ -89,8 +89,8 @@ \title{\createtheorempackage{}\\\smallskip\itshape Initializing theorem-like environments with multilingual support} \author{Jinwen XU} -\thanks{Corresponding to: \texttt{\createtheorempackage{} 2022/02/27}} -\date{February 2022, in Paris} +\thanks{Corresponding to: \texttt{\createtheorempackage{} 2022/03/01}} +\date{March 2022, in Paris} \maketitle @@ -208,7 +208,7 @@ Supported keys are: The syntax of \lstinline|\CreateTheorem| is as follows: \begin{code} -\CreateTheorem{(*\meta{name of environment}*)}{(*\meta{key-value configuration}*)} +\CreateTheorem{(*\meta{list of the name of environments}*)}{(*\meta{key-value configuration}*)} \end{code} Supported keys are: @@ -265,7 +265,16 @@ Supported keys are: \medskip -Please note that, by default, an normal environment \meta{env} and its starred relative \meta{env}\texttt{*} do not share the same set of names, for the sake of generality. However, with proper usage of \commandoption{create starred version} and \commandoption{copy existed}, you are already able to produce all of the following combinations that shares the same set of names: 1$)$ numbered \meta{env}, numbered \meta{env}\texttt{*} ; 2$)$ numbered \meta{env}, unnumbered \meta{env}\texttt{*} ; 3$)$ unnumbered \meta{env}, numbered \meta{env}\texttt{*} ; and 4$)$ unnumbered \meta{env}, unnumbered \meta{env}\texttt{*}. I left it as an easy exercise for you ;-) +Please note that, by default, an normal environment \meta{env} and its starred relative \meta{env}\texttt{*} do \emph{not} share the same set of names, for the sake of generality. However, with proper usage of \commandoption{create starred version} and \commandoption{copy existed}, you are already able to produce all of the following combinations that shares the same set of names: 1$)$ numbered \meta{env}, numbered \meta{env}\texttt{*} ; 2$)$ numbered \meta{env}, unnumbered \meta{env}\texttt{*} ; 3$)$ unnumbered \meta{env}, numbered \meta{env}\texttt{*} ; and 4$)$ unnumbered \meta{env}, unnumbered \meta{env}\texttt{*}. I left it as an easy exercise for you ;-) + +% \subsection[Configuring theorem-like environments]{Configuring theorem-like environments with \texttt{\textbackslash\textcolor{maintheme}{SetTheorem}}} + +% Even after defining the environments, you can still configure them with \lstinline|\SetTheorem|. The syntax of which is as follows: + +% \begin{code} +% \SetTheorem{(*\meta{list of the name of environments}*)}{(*\meta{key-value configuration}*)} +% \end{code} + \section{Examples} @@ -319,7 +328,7 @@ Next we shall deal with the numbering problem. Let's continue to use this enviro \subsection{Let's play with numbering} -Remember the exercise I left to you at the end of the previous section? Let's do this together. +Remember the exercise I left you at the end of the previous section? Let's do it together now. \subsubsection{Numbered \texttt{idea} and numbered \texttt{idea*}} diff --git a/macros/latex/contrib/create-theorem/create-theorem.sty b/macros/latex/contrib/create-theorem/create-theorem.sty index 22e89a8d8d..e966ff9752 100644 --- a/macros/latex/contrib/create-theorem/create-theorem.sty +++ b/macros/latex/contrib/create-theorem/create-theorem.sty @@ -13,7 +13,7 @@ \RequirePackage{l3keys2e} \ProvidesExplPackage {create-theorem} - {2022/02/27} {} + {2022/03/01} {} {Initializing theorem-like environments with multilingual support} \keys_define:nn { create-theorem } @@ -280,7 +280,7 @@ { % Patch the cref formats so that definite articles are placed outside the hyperlinks \bool_if:NT \l__crthm_nameinlink_bool { % Use the definite article of the original language, with name's casing depends on the preposition and the article - \crefthe_patch_format:nnnnn { 2 } { #4 ref@ #1 @format } { #4 ref@ #1 @name } + \crefthe_patch_format:nnnn { #4 ref@ #1 @format } { #4 ref@ #1 @name } { \tl_use:c { g_crthm_name_ #4 ref_article_singular_ #2 _ #3 _tl } } { \bool_if:NTF \g__crefthe_has_prep_bool @@ -291,7 +291,7 @@ \tl_use:c { g_crthm_name_ #4 ref_singular_ #2 _ #3 _tl } } } - \crefthe_patch_format:nnnnn { 2 } { #4 ref@ #1 @format@first } { #4 ref@ #1 @name@plural } + \crefthe_patch_format:nnnn { #4 ref@ #1 @format@first } { #4 ref@ #1 @name@plural } { \tl_use:c { g_crthm_name_ #4 ref_article_plural_ #2 _ #3 _tl } } { \bool_if:NTF \g__crefthe_has_prep_bool @@ -302,7 +302,7 @@ \tl_use:c { g_crthm_name_ #4 ref_plural_ #2 _ #3 _tl } } } - \crefthe_patch_format:nnnnn { 3 } { #4 refrange@ #1 @format } { #4 ref@ #1 @name@plural } + \crefthe_patch_format:nnnn { #4 refrange@ #1 @format } { #4 ref@ #1 @name@plural } { \tl_use:c { g_crthm_name_ #4 ref_article_plural_ #2 _ #3 _tl } } { \bool_if:NTF \g__crefthe_has_prep_bool @@ -313,7 +313,7 @@ \tl_use:c { g_crthm_name_ #4 ref_plural_ #2 _ #3 _tl } } } - \crefthe_patch_format:nnnnn { 3 } { #4 refrange@ #1 @format@first } { #4 ref@ #1 @name@plural } + \crefthe_patch_format:nnnn { #4 refrange@ #1 @format@first } { #4 ref@ #1 @name@plural } { \tl_use:c { g_crthm_name_ #4 ref_article_plural_ #2 _ #3 _tl } } { \bool_if:NTF \g__crefthe_has_prep_bool @@ -325,29 +325,29 @@ } } %% Use the definite article of the original language, with name's casing correspond to the article - % \crefthe_patch_format:nnnnn { 2 } { #4 ref@ #1 @format } { #4 ref@ #1 @name } + % \crefthe_patch_format:nnnn { #4 ref@ #1 @format } { #4 ref@ #1 @name } % { \tl_use:c { g_crthm_name_ #4 ref_article_singular_ #2 _ #3 _tl } } % { \tl_use:c { g_crthm_name_ #4 ref_singular_ #2 _ #3 _tl } } - % \crefthe_patch_format:nnnnn { 2 } { #4 ref@ #1 @format@first } { #4 ref@ #1 @name@plural } + % \crefthe_patch_format:nnnn { #4 ref@ #1 @format@first } { #4 ref@ #1 @name@plural } % { \tl_use:c { g_crthm_name_ #4 ref_article_plural_ #2 _ #3 _tl } } % { \tl_use:c { g_crthm_name_ #4 ref_plural_ #2 _ #3 _tl } } - % \crefthe_patch_format:nnnnn { 3 } { #4 refrange@ #1 @format } { #4 ref@ #1 @name@plural } + % \crefthe_patch_format:nnnn { #4 refrange@ #1 @format } { #4 ref@ #1 @name@plural } % { \tl_use:c { g_crthm_name_ #4 ref_article_plural_ #2 _ #3 _tl } } % { \tl_use:c { g_crthm_name_ #4 ref_plural_ #2 _ #3 _tl } } - % \crefthe_patch_format:nnnnn { 3 } { #4 refrange@ #1 @format@first } { #4 ref@ #1 @name@plural } + % \crefthe_patch_format:nnnn { #4 refrange@ #1 @format@first } { #4 ref@ #1 @name@plural } % { \tl_use:c { g_crthm_name_ #4 ref_article_plural_ #2 _ #3 _tl } } % { \tl_use:c { g_crthm_name_ #4 ref_plural_ #2 _ #3 _tl } } %% Use the definite article of the current language, with name's casing correspond to the article - % \crefthe_patch_format:nnnnn { 2 } { #4 ref@ #1 @format } { #4 ref@ #1 @name } + % \crefthe_patch_format:nnnn { #4 ref@ #1 @format } { #4 ref@ #1 @name } % { \tl_use:c { g_crthm_name_ #4 ref_article_singular_ #2 _ \languagename _tl } } % { \tl_use:c { g_crthm_name_ #4 ref_singular_ #2 _ #3 _tl } } - % \crefthe_patch_format:nnnnn { 2 } { #4 ref@ #1 @format@first } { #4 ref@ #1 @name@plural } + % \crefthe_patch_format:nnnn { #4 ref@ #1 @format@first } { #4 ref@ #1 @name@plural } % { \tl_use:c { g_crthm_name_ #4 ref_article_plural_ #2 _ \languagename _tl } } % { \tl_use:c { g_crthm_name_ #4 ref_plural_ #2 _ #3 _tl } } - % \crefthe_patch_format:nnnnn { 3 } { #4 refrange@ #1 @format } { #4 ref@ #1 @name@plural } + % \crefthe_patch_format:nnnn { #4 refrange@ #1 @format } { #4 ref@ #1 @name@plural } % { \tl_use:c { g_crthm_name_ #4 ref_article_plural_ #2 _ \languagename _tl } } % { \tl_use:c { g_crthm_name_ #4 ref_plural_ #2 _ #3 _tl } } - % \crefthe_patch_format:nnnnn { 3 } { #4 refrange@ #1 @format@first } { #4 ref@ #1 @name@plural } + % \crefthe_patch_format:nnnn { #4 refrange@ #1 @format@first } { #4 ref@ #1 @name@plural } % { \tl_use:c { g_crthm_name_ #4 ref_article_plural_ #2 _ \languagename _tl } } % { \tl_use:c { g_crthm_name_ #4 ref_plural_ #2 _ #3 _tl } } } @@ -355,6 +355,11 @@ } \NewDocumentCommand \NameTheorem { m m } + { + \crthm_name_theorem:nn { #1 } { #2 } + } + +\cs_new:Nn \crthm_name_theorem:nn { \tl_set:Nn \l__crthm_current_env_tl { #1 } \newcounter { #1 } @@ -427,6 +432,14 @@ } \NewDocumentCommand \CreateTheorem { m m } + { + \clist_map_inline:nn { #1 } + { + \crthm_create_theorem:nn { ##1 } { #2 } + } + } + +\cs_new:Nn \crthm_create_theorem:nn { \tl_set:Nn \l__crthm_current_env_tl { #1 } \bool_set_false:N \l__crthm_creating_apply_style_bool -- cgit v1.2.3