无缩进的嵌套列表

无缩进的嵌套列表

我想在文本中创建一个嵌套列表,看起来像这里的文本

Lorem ipsum dolor sit amet
1. consectetur adipiscing elit
1.1 sed do eiusmod tempor incididunt ut labore et dolore magna aliqua
1.1.1 Ut enim ad minim veniam
1.1.1.1 quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat

目前,我正在使用enumitem

我尝试设置leftmargin=0pt,但是这会反转缩进并使标签向左扩展到边距,直到宽度超出边距并最终被切断。

我怎样才能使所有标签与文本齐平缩进?

\documentclass[a4paper]{article}
\usepackage[utf8]{inputenc}

\usepackage[a4paper,
            left=1cm,
            right=1cm,
            top=2cm,
            bottom=2cm,
            footskip=.5cm]{geometry}
\usepackage{enumitem}

\usepackage{blindtext}

\newlist{legal}{enumerate}{10}
\setlist[legal]{label*=\arabic*., leftmargin=0pt}

\begin{document}

\noindent \blindtext
\begin{legal}
  \item \blindtext
  \begin{legal}
    \item \blindtext
    \begin{legal}
      \item \blindtext
        \begin{legal}
          \item \blindtext
        \end{legal}
    \end{legal}
  \end{legal}
\end{legal}

\end{document}

五段包含 lorem ipsum 占位符文本,其中最后四段左侧的标签为“1.”、“1.1”、“1.1.1”、“1.1.1”,一直延伸到页边距

答案1

您可以使用wide键使标签成为列表文本的一部分。

\documentclass[a4paper]{article}

\usepackage[a4paper,
            left=1cm,
            right=1cm,
            top=2cm,
            bottom=2cm,
            footskip=.5cm]{geometry}
\usepackage{enumitem}

\usepackage{blindtext}

\newlist{legal}{enumerate}{10}
\setlist[legal]{label*=\arabic*., wide=0pt}

\begin{document}

\noindent \blindtext
\begin{legal}
  \item \blindtext
  \begin{legal}
    \item \blindtext
    \begin{legal}
      \item \blindtext
        \begin{legal}
          \item \blindtext
        \end{legal}
    \end{legal}
  \end{legal}
\end{legal}

\end{document}

代码输出

如果您希望列表项缩进,标签左对齐,则需要为标签创建固定宽度,以允许其向左扩展。以下是示例:

\documentclass[a4paper]{article}

\usepackage[a4paper,
            left=1cm,
            right=1cm,
            top=2cm,
            bottom=2cm,
            footskip=.5cm]{geometry}
\usepackage{enumitem}
\usepackage{calc}
\usepackage{blindtext}
\newlength{\maxwidth}
\setlength{\maxwidth}{\widthof{1.1.1.1.1.1.1.}}
\newlist{legal}{enumerate}{10}
\setlist[legal]{label*=\arabic*.,labelwidth=\maxwidth, align=left,leftmargin=0pt}
\setlist[legal,1]{wide = 0pt,labelwidth = \maxwidth, leftmargin =!, label=\arabic*.}





\begin{document}

\noindent \blindtext
\begin{legal}
  \item \blindtext
  \begin{legal}
    \item \blindtext
    \begin{legal}
      \item \blindtext
        \begin{legal}
          \item \blindtext
        \end{legal}
    \end{legal}
  \end{legal}
\end{legal}

\end{document}

第二个代码的输出

相关内容