我想为枚举项添加额外的空间。我目前使用以下代码。
\documentclass{article}
\let\oldenumerate\enumerate
\let\oldendenumerate\endenumerate
\renewenvironment{enumerate}%
% Beginning of environment
{\begin{flushleft}
\list{}{\rightmargin.0\textwidth\leftmargin3em}
\item{}
\oldenumerate
}
% end of environment
{\oldendenumerate
\endlist
\end{flushleft}
}
\begin{document}
Some text for reference.
\begin{enumerate}
\item The first level enumerate is indented properly.
\begin{enumerate}
\item The second level is indented too much.
\end{enumerate}
\item another first level item
\end{enumerate}
\end{document}
正如我在 MWE 中所说,枚举环境的第一级正是我想要的。但第二级相对于第一级的缩进量与第一级相对于左边距的缩进量一样多。我想避免这种情况。相反,我希望第二级与第一级的缩进关系与正常枚举环境中的缩进关系相同。
谢谢!
编辑:我知道 enumitem 包,但是由于各种原因,我不想使用它。
答案1
使用enumitem
:
\documentclass{article}
\usepackage{enumitem}
\setlist[enumerate,1]{leftmargin=3em}
\begin{document}
\noindent\rule{3em}{1pt}Some text for reference.
\begin{enumerate}
\item The first level enumerate is indented properly.
\begin{enumerate}
\item The second level is indented too much.
\end{enumerate}
\item another first level item
\end{enumerate}
\end{document}
该规则表明缩进符合要求。
使用较低级别的代码也可以获得同样的效果。
\documentclass{article}
\AtBeginDocument{\setlength{\leftmargini}{3em}}
\begin{document}
\noindent\rule{3em}{1pt}Some text for reference.
\begin{enumerate}
\item The first level enumerate is indented properly.
\begin{enumerate}
\item The second level is indented too much.
\end{enumerate}
\item another first level item
\end{enumerate}
\end{document}