![使用 amsthm 的嵌套自定义定理](https://linux22.com/image/244261/%E4%BD%BF%E7%94%A8%20amsthm%20%E7%9A%84%E5%B5%8C%E5%A5%97%E8%87%AA%E5%AE%9A%E4%B9%89%E5%AE%9A%E7%90%86.png)
我在嵌套自定义定理环境时遇到了麻烦,因为内部环境不会继承外部环境的特征(例如 HEADFONT 等)。
可能是因为我破解了编号段落环境,其中编号在括号中。括号似乎在内部环境中仍然存在。
例子:
\documentclass{article}
\usepackage{amsthm}
\theoremstyle{definition}
\newtheorem{defn}{Definition}[section]
\newtheoremstyle{parag}
{\topsep} % ABOVESPACE
{\topsep} % BELOWSPACE
{} % BODYFONT
{} % INDENT (empty value is the same as 0pt)
{\bfseries(} % HEADFONT
{)} % HEADPUNCT
{ } % HEADSPACE
{} % CUSTOM-HEAD-SPEC
\theoremstyle{parag}
\newtheorem{pp}[defn]{}
\begin{document}
\section{Products}
\begin{defn}
A definition outside the numbered paragraph.
\end{defn}
\begin{pp}
This is a numbered paragraph
\begin{defn}
A definition inside a paragraph has leading open parentheses
\end{defn}
\end{pp}
\end{document}
答案1
您只需自己重新定义定理样式。amsthm.sty
绕过其自己的三个预定义样式 plain、definition 和 remark 的用户界面,因此它不会明确清除许多变量。