可以在 thmtools 中设置全局数字吗?

可以在 thmtools 中设置全局数字吗?

我希望所有类似定理的环境都像定理一样进行编号。thmtools我可以使用如下代码来实现这一点:

\usepackage{amsthm}
\usepackage{thmtools}
\declaretheorem[numberwithin=section]{theorem}
\declaretheorem[numberlike=theorem]{corollary}
\declaretheorem[numberlike=theorem]{lemma}
\declaretheorem[numberlike=theorem, style=definition]{definition}

是否有一个全局包选项可以设置numberlike新声明的定理的默认行为?例如,是否有一个选项允许这样的代码:

\usepackage{amsthm}
\usepackage[numberlike=theorem]{thmtools}
\declaretheorem[numberwithin=section]{theorem}
\declaretheorem{corollary}
\declaretheorem{lemma}
\declaretheorem[style=definition]{definition}

答案1

虽然这可能有点过分,但你可以使用xpatch修复以下键的设置\declaretheorem

\usepackage{amsthm,thmtools}% http://ctan.org/pkg/{amsthm,thmtools}
\declaretheorem[numberwithin=section]{theorem}
\usepackage{xpatch}% http://ctan.org/pkg/xpatch
\xpatchcmd{\declaretheorem}{{thmdef}{#1}}{{thmdef}{numberlike=theorem,#1}}{}{}
\declaretheorem{corollary}
\declaretheorem{lemma}
\declaretheorem[style=definition]{definition}
\begin{document}

上面只是添加到了numberlike=theorem可选参数提供的键列表中\declaretheorem[<options>]

相关内容