如何在 itemize 中从第 2 级开始项目(或消除列表中项目的边距)

如何在 itemize 中从第 2 级开始项目(或消除列表中项目的边距)

你好,我想要一个从项目列表中的第 2 级直接开始的项目。

原因是我在列表内使用了 lstlistings,并且我希望它们没有边距,因此我做了如下事情:

\begin{itemize}
    \item Top level
    \begin{itemize}
        \item Second level
    \end{itemize}
\end{itemize}
\lstinputlisting{somefile}
\begin{itemize}
    \begin{itemize}
        \item Second level
    \end{itemize}
\end{itemize}
\lstinputlisting{someotherfile}

...但 Latex 抱怨说第一级的第二个列表中没有项目:

! LaTeX Error: Something's wrong--perhaps a missing \item.

我该如何解决这个问题?对我来说,一个可能的选择是如果列表在列表中,则删除列表的边距(但我也没有找到解决方案)。

因此,类似这样的内容没有列表的余地:

\begin{itemize}
    \item Top level
    \begin{itemize}
        \item Second level
        \lstinputlisting{somefile}
        \item Second level
        \lstinputlisting{someotherfile}
    \end{itemize}
\end{itemize}

答案1

您的错误实际上说明了如何解决它:您必须将一个项目放入 itemize 环境中。由于您不想看到它,但想要缩进,您可以简单地使用\item[]。您的 itemize 将如下所示:

\begin{itemize}
    \item Top level
    \begin{itemize}
        \item Second level
    \end{itemize}
\end{itemize}
\lstinputlisting{somefile}
\begin{itemize}
    \item[]\begin{itemize}
        \item Second level
    \end{itemize}
\end{itemize}

正如评论所说:如果您想切换到枚举,您应该看看enumitemresume选项。

相关内容