fixed bugs, working version again
This commit is contained in:
parent
0e1a802995
commit
e3d3d9ba0f
1 changed files with 32 additions and 26 deletions
|
@ -23,6 +23,7 @@ __HEADER__(Grouping theorems for easier customization.)
|
|||
{
|
||||
\declaretheorem [ #2 ] { #1 }
|
||||
}
|
||||
|
||||
\cs_generate_variant:Nn \declaretheorem:nn { n V }
|
||||
|
||||
|
||||
|
@ -30,12 +31,12 @@ __HEADER__(Grouping theorems for easier customization.)
|
|||
|
||||
\msg_new:nnn { groupthm } { unknown ~ key }
|
||||
{
|
||||
\msg_error_text:n { groupthm } Unknown key #1 supplied \msg_line_context:
|
||||
Unknown ~ key ~ #1 ~ supplied ~ \msg_line_context:
|
||||
}
|
||||
|
||||
\msg_new:nnn { groupthm } { unknown ~ group }
|
||||
{
|
||||
\msg_error_text:n { groupthm} Unknown group #1 supplied \msg_line_context:
|
||||
Unknown ~ group ~ #1 ~ supplied ~ \msg_line_context:
|
||||
}
|
||||
|
||||
%%% Variables
|
||||
|
@ -68,13 +69,13 @@ __HEADER__(Grouping theorems for easier customization.)
|
|||
postname .default:n = \c_empty_tl,
|
||||
postname .groups:n = { theoremgroup },
|
||||
group .clist_set:N = \l_groupthm_key_group_clist,
|
||||
group .default:n = \c_empty_clist,
|
||||
group .default:n = {},
|
||||
group .groups:n = { groupedtheorem },
|
||||
mapname .clist_set:N = \l_groupthm_mapname_clist,
|
||||
mapname .default:n = \c_empty_clist,
|
||||
mapname .default:n = {},
|
||||
mapname .groups:n = { theoremgroup },
|
||||
thmtools .clist_set:N = \l_groupthm_thmtools_clist,
|
||||
thmtools .default:n = \c_empty_clist,
|
||||
thmtools .default:n = {},
|
||||
thmtools .groups:n = { theoremgroup, groupedtheorem, theoremvariants }
|
||||
}
|
||||
|
||||
|
@ -100,7 +101,7 @@ __HEADER__(Grouping theorems for easier customization.)
|
|||
}
|
||||
\AddToHook { groupthm / thmtools } [ #1 ]
|
||||
{
|
||||
\clist_put_right:Nn \l_groupthm_thmtools_clist) { #5 }
|
||||
\clist_put_right:Nn \l_groupthm_thmtools_clist { #5 }
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -130,7 +131,7 @@ __HEADER__(Grouping theorems for easier customization.)
|
|||
{
|
||||
\cs_if_exist_use:cF { group_use_#1: }
|
||||
{
|
||||
\msg_error:nnn { groupthm } { unknown ~ group }
|
||||
\msg_error:nnn { groupthm } { unknown ~ group } { #1 }
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -148,26 +149,26 @@ __HEADER__(Grouping theorems for easier customization.)
|
|||
\RemoveFromHook { groupthm / postname }[*]
|
||||
\RemoveFromHook { groupthm / mapname }[*]
|
||||
\RemoveFromHook { groupthm / thmtools }[*]
|
||||
|
||||
\clist_map_function:nN { #2 } \group_use:n
|
||||
|
||||
\clist_map_function:nN { #1 } \group_use:n
|
||||
|
||||
\hook_use:n { groupthm / prename }
|
||||
\hook_use:n { groupthm / postname }
|
||||
\hook_use:n { groupthm / mapname }
|
||||
%% this next line fails somehow
|
||||
\hook_use:n { groupthm / thmtools }
|
||||
|
||||
\clist_put_right:Nx \l_groupthm_thmtools_tl
|
||||
\clist_put_right:Nx \l_groupthm_thmtools_clist
|
||||
{
|
||||
name = \tl_use:N \l_groupthm_prename_tl
|
||||
\tl_use:N \l_groupthm_name_tl
|
||||
\tl_use:N \l_groupthm_postname_tl
|
||||
}
|
||||
|
||||
\declaretheorem:Vn
|
||||
{
|
||||
\l_groupthm_thmtools_clist
|
||||
}
|
||||
{ #2 }
|
||||
\declaretheorem:nV
|
||||
{ #1 }
|
||||
\l_groupthm_thmtools_clist
|
||||
}
|
||||
\cs_generate_variant:Nn \new_grouped_theorem:nnnn { n V V V }
|
||||
|
||||
|
@ -175,14 +176,14 @@ __HEADER__(Grouping theorems for easier customization.)
|
|||
\cs_new:Npn \new_grouped_theorem_from_keys:nn #1 #2
|
||||
{
|
||||
\keys_set_groups:nnn { groupthm } { groupedtheorem } { name, group, thmtools }
|
||||
\keys_set_groups:nnn { groupthm } { groupedtheorem } { #1 }
|
||||
\keys_set_groups:nnn { groupthm } { groupedtheorem } { #2 }
|
||||
|
||||
% Construct name
|
||||
\tl_if_eq:NnTF \l_groupthm_key_name_tl { \c_novalue_tl }
|
||||
{
|
||||
\tl_set:Nx \l_groupthm_name_tl
|
||||
{
|
||||
\text_titlecase_first:n {#2}
|
||||
\text_titlecase_first:n {#1}
|
||||
}
|
||||
}
|
||||
{
|
||||
|
@ -203,28 +204,33 @@ __HEADER__(Grouping theorems for easier customization.)
|
|||
|
||||
%%% Default groups available
|
||||
|
||||
\NewTheoremGroup { all }
|
||||
\NewTheoremGroup
|
||||
[
|
||||
]
|
||||
]{ all }
|
||||
|
||||
\NewTheoremGroup { big }
|
||||
\NewTheoremGroup
|
||||
[
|
||||
thmtools = { sibling = insection }
|
||||
]
|
||||
] { big }
|
||||
|
||||
\NewTheoremGroup { dagger }
|
||||
\NewTheoremGroup
|
||||
[
|
||||
postname = { $\dagger$ },
|
||||
thmtools = { sibling = insubsection }
|
||||
]
|
||||
] { dagger }
|
||||
|
||||
\NewTheoremGroup { small }
|
||||
\NewTheoremGroup
|
||||
[
|
||||
thmtools = { sibling = insubsection }
|
||||
]
|
||||
] { small }
|
||||
|
||||
\NewTheoremGroup { star }
|
||||
\NewTheoremGroup
|
||||
[
|
||||
thmtools = { sibling = insubsection },
|
||||
postname = { * }
|
||||
]
|
||||
] { star }
|
||||
|
||||
\NewTheoremGroup
|
||||
[
|
||||
thmtools = { numbered = no }
|
||||
] { starred }
|
||||
|
|
Loading…
Reference in a new issue