write all definitions of theorems to aux file at end of document
This commit is contained in:
parent
32daab8d20
commit
f878e66cdf
1 changed files with 51 additions and 16 deletions
|
@ -851,6 +851,16 @@
|
||||||
{
|
{
|
||||||
\tl_log:n { Declaring ~ thmtools ~ theorem ~ #2 }
|
\tl_log:n { Declaring ~ thmtools ~ theorem ~ #2 }
|
||||||
\declaretheorem [ #1 ] { #2 }
|
\declaretheorem [ #1 ] { #2 }
|
||||||
|
\bool_if:NT \g_@@_cache_bool
|
||||||
|
{
|
||||||
|
\hook_gput_code:nnn { enddocument / afterlastpage } { groupthm }
|
||||||
|
{
|
||||||
|
\iow_now:cn { @auxout }
|
||||||
|
{
|
||||||
|
\declaretheorem [ #1 ] { #2 }
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
\cs_generate_variant:Nn \@@_thmtools_declare_theorem:nn { V n }
|
\cs_generate_variant:Nn \@@_thmtools_declare_theorem:nn { V n }
|
||||||
% \end{macrocode}
|
% \end{macrocode}
|
||||||
|
@ -858,6 +868,7 @@
|
||||||
%
|
%
|
||||||
%
|
%
|
||||||
%
|
%
|
||||||
|
%
|
||||||
% It also comes in handy to have a stronger version of the
|
% It also comes in handy to have a stronger version of the
|
||||||
% hook role setting mechanism:
|
% hook role setting mechanism:
|
||||||
% \begin{macro}{\@@_hook_gset_rule_foreach:nNnn}
|
% \begin{macro}{\@@_hook_gset_rule_foreach:nNnn}
|
||||||
|
@ -2657,25 +2668,49 @@
|
||||||
%
|
%
|
||||||
% \begin{macrocode}
|
% \begin{macrocode}
|
||||||
\hook_gput_code:nnn { begindocument } { groupthm }
|
\hook_gput_code:nnn { begindocument } { groupthm }
|
||||||
{
|
{
|
||||||
\bool_if:nTF
|
\bool_if:nTF
|
||||||
{
|
{
|
||||||
\g_@@_cache_bool
|
\g_@@_cache_bool
|
||||||
&&
|
&&
|
||||||
\int_compare_p:n
|
\int_compare_p:n
|
||||||
{
|
{
|
||||||
\g_@@_cache_version_aux_int < \g_@@_cache_version_document_int
|
\g_@@_cache_version_aux_int < \g_@@_cache_version_document_int
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
{
|
{
|
||||||
\hook_use_once:n { @@ / define lazy }
|
\hook_use_once:n { @@ / define lazy }
|
||||||
}
|
}
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
% \end{macrocode}
|
% \end{macrocode}
|
||||||
%
|
%
|
||||||
%
|
%
|
||||||
|
% \begin{macro}{\@@_fake_declare_theorem:w}
|
||||||
|
% \begin{syntax}
|
||||||
|
%
|
||||||
|
% \end{syntax}
|
||||||
|
%
|
||||||
|
% This is a fake version of the \cs{declaretheorem} macro
|
||||||
|
% that accepts the arguments but does nothing.
|
||||||
|
%
|
||||||
|
% \begin{macrocode}
|
||||||
|
\NewDocumentCommand { \@@_fake_declare_theorem:w }{ o m }
|
||||||
|
{
|
||||||
|
\relax
|
||||||
|
}
|
||||||
|
% \end{macrocode}
|
||||||
|
% \end{macro}
|
||||||
|
%
|
||||||
|
%
|
||||||
|
%
|
||||||
|
% \begin{macrocode}
|
||||||
|
\hook_gput_code:nnn { enddocument / afterlastpage } { groupthm }
|
||||||
|
{
|
||||||
|
\let \declaretheorem \@@_fake_declare_theorem:w
|
||||||
|
}
|
||||||
|
% \end{macrocode}
|
||||||
%
|
%
|
||||||
%
|
%
|
||||||
% \begin{macrocode}
|
% \begin{macrocode}
|
||||||
|
|
Loading…
Reference in a new issue