使用 amsthm 的嵌套自定义定理

使用 amsthm 的嵌套自定义定理

我在嵌套自定义定理环境时遇到了麻烦,因为内部环境不会继承外部环境的特征(例如 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 的用户界面,因此它不会明确清除许多变量。

相关内容