我正在使用 enumitem 包在 LaTeX 中创建一个列表,但在设置列表中某项的对齐方式时遇到了问题。对于那一项,我想删除标签和减少缩进,以便项目与前一个项目的标签对齐。
这是我目前正在使用的代码:
\usepackage{enumitem}
\begin{enumerate}
\item Item 1
\item Item 2
\item Item 3
\item Item 4
\item[] Item 5
\end{enumerate}
看起来像这样:
1. Item 1
2. Item 2
3. Item 3
4. Item 4
Item 5
但我想要的是这个:
1. Item 1
2. Item 2
3. Item 3
4. Item 4
Item 5
创建新段落不起作用,因为 LaTeX 会自动在列表后创建空格,而第 5 项需要成为列表的一部分。
提前致谢!
答案1
稍微改变你的语法(只是为了添加更多功能),你可以使用\item*
:
\documentclass{article}
\usepackage{enumitem,xparse}
\setlength{\parindent}{0pt}% Just for this example
\let\oldenumerate\enumerate
\let\endoldenumerate\endenumerate
\RenewDocumentEnvironment{enumerate}{O{}}
{\begin{oldenumerate}[#1]
\let\olditem\item
\RenewDocumentCommand{\item}{s}{%
\IfBooleanTF{##1}
{\olditem[]\hspace*{\dimexpr-\labelindent-\labelwidth-\labelsep}\ignorespaces}
{\olditem}}
}
{\end{oldenumerate}}
\begin{document}
Some reference text.
\begin{enumerate}
\item Item 1
\item Item 2
\item Item 3
\item Item 4
\item[] Item 5
\end{enumerate}
Some reference text.
\begin{enumerate}[label=\roman*]
\item Item 1
\item Item 2
\item Item 3
\item Item 4
\item* Item 5
\end{enumerate}
Some reference text.
\end{document}
上述enumerate
环境的重新定义保留了以下提供的可选参数功能:enumitem
同时改变了功能方式\item
;它添加了带星号的\item*
版本。此*
版本将常规\item[]
和退格设置为边距。