diff --git a/src/environments/groupthm.pysty3 b/src/environments/groupthm.pysty3 index ac80dda..8a9fa6a 100644 --- a/src/environments/groupthm.pysty3 +++ b/src/environments/groupthm.pysty3 @@ -19,6 +19,9 @@ __HEADER__(Grouping theorems for easier customization.) \newcounter{insection}[section] \newcounter{insubsection}[subsection] +\renewcommand\theinsection { \thesection.\arabic{insection} } +\newcommand\theinsubection { \thessubection.\arabic{insubsection} } + %%% LaTeX3 Wrappers around external commands @@ -342,6 +345,7 @@ __HEADER__(Grouping theorems for easier customization.) \clist_put_left:Nn \l_groupthm_group_clist { #1 } } +% envname, signature, definition, starred? \cs_new:Npn \__new_theorem_variant_parser_aux:nnnn #1 #2 #3 #4 { \exp_args:Nx\NewDocumentEnvironment @@ -437,6 +441,13 @@ __HEADER__(Grouping theorems for easier customization.) [ ]{ all } +\NewTheoremGroup +[ + thmtools = { numbered = no } +] { starred } + +%% + \NewTheoremGroup [ thmtools = { sibling = insection } @@ -444,7 +455,7 @@ __HEADER__(Grouping theorems for easier customization.) \NewTheoremGroup [ - postname = { $\dagger$ }, + postname = { $^{\dagger}$ }, thmtools = { sibling = insubsection } ] { dagger } @@ -459,10 +470,6 @@ __HEADER__(Grouping theorems for easier customization.) postname = { * }, ] { star } -\NewTheoremGroup -[ - thmtools = { numbered = no } -] { starred } \DeclareTheoremGroupRule { big } { incompatible-error } { small } @@ -475,5 +482,3 @@ __HEADER__(Grouping theorems for easier customization.) \DeclareTheoremGroupRule { starred } { higher } { small } \DeclareTheoremGroupRule { starred } { higher } { dagger } \DeclareTheoremGroupRule { starred } { higher } { star } - -\DeclareTheoremGroupRule { starred } { higher } { starred} diff --git a/tests/environments/groupthm/test.tex b/tests/environments/groupthm/test.tex index 89dcfc4..dd73f85 100644 --- a/tests/environments/groupthm/test.tex +++ b/tests/environments/groupthm/test.tex @@ -1,34 +1,27 @@ \documentclass{article} \usepackage[enable-debug]{expl3} -\usepackage[default styles]{mkessler-thmstyle} - \ExplSyntaxOn \debug_on:n { all } \ExplSyntaxOff +\usepackage[default styles]{mkessler-thmstyle} \usepackage{mkessler-groupthm} - -\mdfdefinestyle{green}{ - linecolor=green, - linewidth = 2pt, - leftmargin = 0cm, - rightmargin=0cm, - rightline=false, - topline=false, - bottomline=false -} - -\declaretheoremstyle[ - mdframed={style=green} -]{green} +\usepackage[ ]{verbatim} \GenerateTheoremVariants [ group = {star, dagger}, - thmtools = { style = thmgreenmargin } + thmtools = { style = thmgreenmargin }, + name = Beispiel ]{example} +\GenerateTheoremVariants +[ + group = {star, dagger}, + thmtools = { style = thmorangemarginandfill } +]{lemma} + \DeclareTheoremVariants{example} { !s !t+ } { \IfBooleanT{#1} @@ -41,8 +34,21 @@ } } +\DeclareTheoremVariants{lemma} { !s !t+ } +{ + \IfBooleanT{#1} + { + \AddTheoremToGroup { star } + } + \IfBooleanT{#2} + { + \AddTheoremToGroup { dagger } + } +} + \begin{document} +\section{a} \begin{example} test @@ -56,6 +62,8 @@ test \end{example} +\section{b} + \begin{example}*+ test \end{example} @@ -64,5 +72,59 @@ test \end{example*} - +\begin{lemma}+ + test +\end{lemma} + +\begin{verbatim} + \NewTheoremGroup[keys]{name} + \ProvideTheoremGroup + \RenewTheoremGroup + \DeclareTheoremGroup + + \AppendToTheoremGroup[keys]{name}[before / after ? ] + + \NewTheoremFamily + \ProvideTheoremFamily + + \DeclareTheoremFamilyOptions + \ProvideTheoremFamilyOptions + \RenewTheoremFamilyOptions + \NewTheoremFamilyOptions + + \AddTheoremGroupParent{child}{parent} + + \NewTheorem -> starred + unstarred family + options + \ProvideTheorem + + \NewFancyTheoremFamily[mdframed = , group, name, thmtools, style = ] wrapped \NewTheoremFamily + + \DeclareStandardTheoremFamilyOptions + \ProvideStandardTheoremFamilyOptions + \NewStandardTheoremFamilyOptions + \RenewStandardTheoremFamilyOptions + + \NewFancyTheorem[mdframed =, thmtools = , name = , group = ]{name} + +\end{verbatim} + +\section{TODO} + +\begin{itemize} + \item style = parsen +\end{itemize} + +\begin{verbatim} + +\usepackage +[ + big = { document, section, subsection, no }, + small = { document, section, subsection, no }, + tiny = { document, section, subsection, no }, + notheorems +] { fancythm } + + + +\end{verbatim} \end{document}