我重新定义了证明环境,通过改编代码使标题变为粗体amsthm 文档(第 11 页)。实际上我只是删除了内容\itshape
并输入了内容\bfseries
,其他内容没有改变。
(笔记:甚至无论将斜体改为粗体都无关紧要,将提供的代码从文档直接复制到文档中时也会出现同样的问题。)
遗憾的是,列表现在从第二行开始,而不是从标题后立即开始。可以修复这个问题吗?
\documentclass[]{article}
\usepackage{amsthm, lipsum}
\makeatletter
\renewenvironment{proof}[1][\proofname]{\par
\pushQED{\qed}%
\normalfont \topsep6\p@\@plus6\p@\relax
\trivlist
\item\relax
{\bfseries
#1\@addpunct{.}}\hspace\labelsep\ignorespaces
}{%
\popQED\endtrivlist\@endpefalse
}
\makeatother
\begin{document}
\begin{proof}
\begin{enumerate}
\item \lipsum[66]
\item \lipsum[66]
\end{enumerate}
\end{proof}
\end{document}
答案1
您有两个错误:
[...]
之后应该有\item
,而你有{...}
\hskip\labelsep
应该放在可选参数内
\makeatletter
\renewenvironment{proof}[1][\proofname]{\par
\pushQED{\qed}%
\normalfont \topsep6\p@\@plus6\p@\relax
\trivlist
\item[\hskip\labelsep\bfseries#1\@addpunct{.}]\ignorespaces
}{%
\popQED\endtrivlist\@endpefalse
}
\makeatother
不幸的是,文档中显示的代码是错误的。:(
这是原始定义amsthm.sty
\newenvironment{proof}[1][\proofname]{\par
\pushQED{\qed}%
\normalfont \topsep6\p@\@plus6\p@\relax
\trivlist
\item[\hskip\labelsep
\itshape
#1\@addpunct{.}]\ignorespaces
}{%
\popQED\endtrivlist\@endpefalse
}
你可能想做
\usepackage{amsthm}
\usepackage{xpatch}
\xpatchcmd{\proof}{\itshape}{\bfseries}{}{}
这样就无需查找代码。