我在控制每行缩进的同时保持每个级别的悬挂缩进时遇到了麻烦。这对我来说有点难以描述,所以我认为用图片会更清楚:
有两件事让它变得困难:
- 有很多长行,所以必须有悬挂缩进
- 有很多地方的层次缩进有 3 或 4 个级别,因此每个悬挂缩进都落在同一个位置是不可行的。
我最接近的方法是使用自带的环境patverse
,但这只允许我偏移每个新缩进部分的第一行;所有换行的文本都以一种无法缩进两次或更多次的方式排列:verse
memoir
我考虑过使用嵌套description
环境,但我希望行间距与常规文本相同。这可能可以修复,但实际使用起来似乎有点麻烦,所以我想知道在尝试让它工作之前是否有更好的方法。
最后一件事:目前,我计划使用包memoir
。如果这会使这个缩进方案过于复杂而难以标记,我愿意放弃它,但理想情况下,我希望有一个可以很好地与 配合使用的解决方案memoir
。
答案1
itemize
这是一个仅使用使用该包创建的具有最少设置的环境的版本enumitem
。无需使用description
环境,因为您根本没有标签,所以这itemize
是最合适的。您可以随意调整设置以获得所需的间距。我已使用键nosep
从列表中删除所有垂直间距,并将顶级边距设置为与其余文本齐平。
\documentclass{memoir}
\usepackage{enumitem}
\newlist{nolabel}{itemize}{4}
\setlist[nolabel]{label={},nosep,labelwidth=0pt,labelsep=0pt}
\setlist*[nolabel,1]{leftmargin=*}
\usepackage{lipsum}
\begin{document}
\lipsum[1]
\begin{nolabel}
\item This is a line at the first level of the list. Here’s how it wraps when the line is very long:
\begin{nolabel}
\item This is a line at the second level of the list.
\item This is another line at the second level.
\begin{nolabel}
\item This is a third level item.
\item This a another third level item.
\end{nolabel}
\item This is a third second level item.
\end{nolabel}
\item This is a final first level item.
\end{nolabel}
\lipsum[1]
\end{document}