重新定义环境问题

Redefining environment trouble

我正在尝试更新 "enumerate" 环境,以便在数字后面有一个括号而不是一个点。实际上这里是代码:

\documentclass[a4paper, 14pt]{extarticle}
\usepackage{amsfonts, amsmath, amssymb, amsthm}
\usepackage{enumitem}
\usepackage[top = 1.5cm, right = 1.5cm, bottom = 1.5cm, left = 1.5cm]{geometry}
\usepackage{mathtools} % DeclarePairedDelimiter
\usepackage{nomencl}
\let\originalenumerate\enumerate
\renewenvironment{enumerate}{\begin{originalenumerate}[label={$\left.\arabic*\right)$}]}{\end{originalenumerate}\}
\newtheorem{theorem}{Theorem}
\newtheorem*{corollary*}{Corollary}
\begin{document}
\section*{Theorems}
\begin{theorem}
Let
\begin{enumerate}
\item Condition 1,
\item Condition 2,
\item Condition 3,
\end{enumerate}
then assertion.
\end{theorem}
\begin{proof}
Proof.
\end{proof}
\end{document}

这引起了一个我无法解决的问题google:最后一项总是向左移动。

还有一个麻烦 - 如果我不在 \end{originalenumerate} 之后写 \ 就没有换行符。

如何解决这些烦恼?

问题是因为你只存储了枚举的原始开始的代码,而不是\endenumerate,这意味着\end{originalenumerate}并没有真正做任何事情。在表格环境之外的任何地方写 \ 几乎总是错误的,在你的情况下,如果用 \let\endoriginalenumerate\endenumerate.

正确存储枚举的结尾,它会导致错误

反正比重新定义enumerate环境简单多了,可以用\setlist{label={$\left.\arabic*\right)$}

\documentclass[a4paper, 14pt]{extarticle}
\usepackage{amsfonts, amsmath, amssymb, amsthm}
\usepackage{enumitem}
\usepackage[top = 1.5cm, right = 1.5cm, bottom = 1.5cm, left = 1.5cm]{geometry}
\usepackage{mathtools} % DeclarePairedDelimiter
\usepackage{nomencl}

\setlist{label={$\left.\arabic*\right)$}   

\newtheorem{theorem}{Theorem}
\newtheorem*{corollary*}{Corollary}
\begin{document}
\section*{Theorems}
\begin{theorem}
Let
\begin{enumerate}
\item Condition 1,
\item Condition 2,
\item Condition 3,
\end{enumerate}
then assertion.
\end{theorem}
\begin{proof}
Proof.
\end{proof}
\end{document}