如果存在定理注释(#3 参数),则在定理头和定理主体之间添加一个断点

如果存在定理注释(#3 参数),则在定理头和定理主体之间添加一个断点

我正在使用该amsthm包进行定理样式设置。我想要这样的风格:

定理 1三角形...

定理2(某人)

一个正方形 ...

也就是说,当定理包含注释时,正文应该在定理头之后以新行开始。

答案1

\documentclass{article}
\usepackage{ntheorem}
\usepackage{marginnote}
\makeatletter
\newtheoremstyle{optbreak}%
  {\item[\hskip\labelsep \theorem@headerfont ##1\ ##2\theorem@separator]}% from plain style
  {\item[\rlap{\vbox{\hbox{\hskip\labelsep \theorem@headerfont
          ##1\ ##2\ (##3)\theorem@separator}\hbox{\strut}}}]} % from break style
\makeatother
\theoremstyle{optbreak}
\newtheorem{thm}{Theorem}
\begin{document}
\begin{thm}
blah blah
\end{thm}
\begin{thm}[Opt]
blah blah
\end{thm}
\end{document}

相关内容