From 7baf1a01a1780b9132b8e1f6fc11a9f80c8961cd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Maximilian=20Ke=C3=9Fler?= Date: Sun, 23 Jan 2022 00:47:39 +0100 Subject: [PATCH] document latex3 interface --- doc/environments/groupthm/groupthm.dtx | 190 +++++++++---------------- 1 file changed, 67 insertions(+), 123 deletions(-) diff --git a/doc/environments/groupthm/groupthm.dtx b/doc/environments/groupthm/groupthm.dtx index 0841436..0d03166 100644 --- a/doc/environments/groupthm/groupthm.dtx +++ b/doc/environments/groupthm/groupthm.dtx @@ -683,8 +683,8 @@ % \groupthm_declare_group:nVVVV % } % \begin{syntax} -% \cs{groupthm_new_group:nnnnn}\marg{theorem group}\marg{prefix tl} -% \marg{suffix tl}\marg{mapname clist}\marg{thmtools clist} +% \cs{groupthm_new_group:nnnnn}\marg{theorem group}\marg{prefix} +% \marg{suffix}\marg{mapname clist}\marg{thmtools clist} % \end{syntax} % % Non-keyval versions of @@ -710,170 +710,114 @@ % % \end{function} % +% +% +% \begin{function}{\groupthm_add_parent:nn} +% \begin{syntax} +% \cs{groupthm_add_parent:nn}\marg{theorem group_1}\marg{theorem group_2} +% \end{syntax} +% +% \LaTeX3 version of \cs{AddTheoremGroupParent}. +% +% \end{function} % +% +% +% \begin{function}{\groupthm_append_to_group:nn} +% \begin{syntax} +% \cs{groupthm_append_to_group:nn}\marg{key=value list}\marg{theorem group} +% \end{syntax} +% +% \LaTeX3 version of \cs{AppendToTheoremGroup}. +% +% \end{function} % \subsection{Grouped theorems} % -% \begin{function}{\groupthm_new_grouped_theorem_from_keys:nn, \groupthm_provide_grouped_theorem_from_keys:nn} -% \begin{syntax} -% \cs{groupthm_provide_grouped_theorem_from_keys:nn}\marg{key=value list}\marg{environment name} -% \end{syntax} +% \begin{function}{\groupthm_new_theorem:nnnn, \groupthm_provide_theorem:nnnn} +% \begin{syntax} +% \cs{groupthm_new_theorem:nnnn}\marg{grouped theorem}\marg{groups} +% \marg{name}\marg{thmtools keys} +% \end{syntax} +% % -% \LaTeX3 version of \cs{NewGroupedTheorem}, \cs{ProvideGroupedTheorem} -% % % \end{function} +% \begin{function}{\groupthm_new_theorem:nnn, \groupthm_provide_theorem:nnn} +% \begin{syntax} +% \cs{groupthm_new_theorem:nnn}\marg{key=value list}\marg{theorem group}\marg{bool} +% \end{syntax} % -% \begin{function} -% { -% \groupthm_new_grouped_theorem_star_from_keys:nn, -% \groupthm_provide_grouped_theorem_star_from_keys:nn -% } -% \begin{syntax} -% \cs{groupthm_new_grouped_theorem_star_from_keys:nn}\marg{key=value list}\marg{environment name} -% \end{syntax} -% -% -% \LaTeX3 version of \cs{NewGroupedTheorem*}, \cs{ProvideGroupedTheorem*} -% +% \LaTeX3 version of \cs{NewGroupedTheorem}. The given \meta{bool} indicates the presence of +% the \enquote{*}, i.e.~if it is true, the new theorem will be additionally added to the +% \texttt{unnumbered} group. % % \end{function} % % -% -% \begin{function}{\groupthm_new_theorem_from_keys:nn, \groupthm_provide_theorem_from_keys:nn} -% \begin{syntax} -% \cs{groupthm_provide_theorem_from_keys:nn}\marg{key=value list}\marg{environment name} -% \end{syntax} -% -% \LaTeX3 version of \cs{NewTheorem}, \cs{ProvideTheorem} -% -% -% \end{function} -% -% \begin{function}{\groupthm_new_theorem_star_from_keys:nn, \groupthm_provide_theorem_star_from_keys:nn} -% \begin{syntax} -% \cs{groupthm_new_theorem_star_from_keys:nn}\marg{key=value list}\marg{environment name} -% \end{syntax} -% -% \LaTeX3 version of \cs{NewTheorem*}, \cs{ProvideTheorem*} -% -% \end{function} -% -% -% \begin{function} -% { -% \groupthm_new_grouped_theorem:nnnn, -% \groupthm_provide_grouped_theorem:nnnn, -% \groupthm_new_grouped_theorem_star:nnnn, -% \groupthm_provide_grouped_theorem_star:nnnn, -% \groupthm_new_theorem:nnnn, -% \groupthm_provide_theorem:nnnn, -% \groupthm_new_theorem_star:nnnn, -% \groupthm_provide_theorem_star:nnnn -% } -% \begin{syntax} -% \cs{groupthm_new_theorem:nnnn}\marg{environment name}\marg{groups clist} -% \marg{theorem name}\marg{thmtools keys} -% \end{syntax} -% -% Non-keyval versions of above macros. -% -% \end{function} -% -% % \subsection{Theorem families} % % -% \begin{function} -% { -% \groupthm_new_grouped_theorem_family_from_keys:nn, -% \groupthm_provide_grouped_theorem_family_from_keys:nn -% } +% \begin{function}{\groupthm_new_family:nnn, \groupthm_provide_family:nnn} % \begin{syntax} -% \cs{groupthm_new_grouped_theorem_family_from_keys:nn}\marg{key=value list}\marg{theorem family} +% \cs{groupthm_new_family:nnn}\marg{key=value list}\marg{theorem family}\marg{bool} % \end{syntax} % -% The \LaTeX3 versions of \cs{NewGroupedTheoremFamily} and \cs{ProvideGroupedTheoremFamily} +% \LaTeX3 version of \cs{NewGroupedTheoremFamily}. The given \meta{bool} indicates the presence of +% the \enquote{*}, i.e.~if it is true, the new theorem will be additionally added to the +% \texttt{unnumbered} group. % % \end{function} -% -% -% + % \begin{function} -% { -% \groupthm_new_grouped_theorem_family_star_from_keys:nn, -% \groupthm_provide_grouped_theorem_family_star_from_keys:nn -% } +{ +\groupthm_new_family:nnnnn, \groupthm_provide_family:nnnnn, +\groupthm_new_family:nVVVV, \groupthm_provide_family:nVVVV +} % \begin{syntax} -% \cs{groupthm_new_grouped_theorem_family_star_from_keys:nn}\marg{key=value list}\marg{theorem family} +% \cs{groupthm_new_family:nnnnn}\marg{theorem family}\marg{groups_1}\marg{name} +% \marg{thmtools clist}\marg{groups_2} % \end{syntax} % -% The \LaTeX3 versions of \cs{NewGroupedTheoremFamily*} and \cs{ProvideGroupedTheoremFamily*} +% Non-keyval version of \cs{groupthm_new_family:nnn}. +% The \meta{groups_2} will be added to each generated variant, i.e.~we generate a variant +% for the union of (the powerset of \meta{groups_1}) and \meta{groups_2}. % % \end{function} -% -% % -% \begin{function} -% { -% \groupthm_new_theorem_family_from_keys:nn, -% \groupthm_provide_theorem_family_from_keys:nn -% } +% +% +% \begin{function}{\groupthm_add_theorem_to_group:n} % \begin{syntax} -% \cs{groupthm_new_theorem_family_from_keys:nn}\marg{key=value list}\marg{theorem family} +% \cs{groupthm_add_theorem_to_group:n}\marg{theorem group} % \end{syntax} % -% The \LaTeX3 versions of \cs{NewTheoremFamily} and \cs{ProvideTheoremFamily} +% \LaTeX3 version of \cs{AddTheoremToGroup} % % \end{function} -% -% -% -% \begin{function} -% { -% \groupthm_new_theorem_family_star_from_keys:nn, -% \groupthm_provide_theorem_family_star_from_keys:nn -% } -% \begin{syntax} -% \cs{groupthm_new_theorem_family_star_from_keys:nn}\marg{key=value list}\marg{theorem family} -% \end{syntax} % -% The \LaTeX3 versions of \cs{NewTheoremFamily*} and \cs{ProvideTheoremFamily*} -% -% \end{function} +% \end{documentation} % % % \begin{function} % { -% \groupthm_new_grouped_theorem_family:nnnn, -% \groupthm_provide_grouped_theorem_family:nnnn, -% \groupthm_new_grouped_theorem_family_star:nnnn, -% \groupthm_provide_grouped_theorem_family_star:nnnn, -% \groupthm_new_theorem_family:nnnn, -% \groupthm_provide_theorem_family:nnnn, -% \groupthm_new_theorem_family_star:nnnn, -% \groupthm_provide_theorem_family_star:nnnn +% \groupthm_new_family_options:nnnn, +% \groupthm_renew_family_options:nnnn, +% \groupthm_provide_family_options:nnnn, +% \groupthm_declare_family_options:nnnn, % } % \begin{syntax} -% \cs{groupthm_new_grouped_theorem_family:nnnn}\marg{theorem family} -% \marg{groups}\marg{name}\marg{thmtools clist} +% \cs{groupthm_new_family_options}\marg{theorem family}\marg{arg spec} +% \marg{selection body}\marg{groups} % \end{syntax} % -% The non-key-value versions of the prior macros. +% \LaTeX3 version of \cs{NewGroupedTheoremFamilyOptions}. +% The \meta{groups} is a comma separated list of groups that will always be added +% to the variants called. +% +% So, \cs{NewGroupedTheoremFamilyOptions*} will e.g.~add \texttt{unnumbered} to this list. % % \end{function} % -% \end{documentation} -% -% -% -% -% -% -% -% -% -% % % %