リスト内の新しい(項目化されていない)段落がまったくインデントされない(つまり、メイン テキストの左余白に揃えられる)インデントされたリストを作成したいと考えています。下の画像を参照してください。
私はenumitem
以下のオプションでパッケージを使用しています:
labelsep=8pt,
labelindent=0.5\parindent,
itemindent=0pt,
leftmargin=*,
listparindent=-\leftmargin
(*は他のパラメータと自動的に計算されたラベル幅からの値を計算するために使われるはずです\leftmargin
)。しかし、これは期待通りの結果にはなりません(下のMWEを参照)。代わりに
leftmargin=3cm
listparindent=-\leftmargin
意図したとおりに動作します(ただし、左余白を特定の値に設定したいわけではなく、固定値\labelindent
とが必要です\labelsep
)。
\noindent\hskip-\leftmargin
問題のある段落の冒頭に を追加する方法も有効ですが、あまり体系的ではありません。enumerate
目的を達成するには、オプションをどのように設定すればよいでしょうか?
ムウェ
\documentclass{article}
\usepackage{enumitem}
\setlist[enumerate]{%
labelsep=8pt,%
labelindent=0.5\parindent,%
itemindent=0pt,%
leftmargin=*,%
listparindent=-\leftmargin%
}
\begin{document}
A normal paragraph of text just to show where
the left margin lies, for comparison. New paragraphs
inside enumerate should start at that left margin.
\begin{enumerate}[label=Case \arabic*:]
\item By setting the enumerate options in a
(I think) sensible manner, I don't achieve what I want
This paragraph shouldn't be indented at all!
\item I want to set the options so that new paragraphs
behave like the following one
\noindent\hskip-\leftmargin
This paragraph is indeed not indented at all!
\end{enumerate}
\begin{enumerate}[resume*,leftmargin=3cm,listparindent=-\leftmargin]
\item Setting a specific value for leftmargin also works\dots
But this is not what I want :-(
\end{enumerate}
\end{document}
すべての環境でこれを行うことは避けenumerate
、このために新しいリストを定義します。
答え1
なぜこれをやりたいのかは分かりません。しかし、方法は次のとおりです。
\documentclass{article}
\usepackage{showframe}
\usepackage{enumitem}
\setlist[enumerate]{
labelsep=8pt,
labelindent=0.5\parindent,
itemindent=0pt,
leftmargin=*,
before=\setlength{\listparindent}{-\leftmargin},
}
\begin{document}
A normal paragraph of text just to show where
the left margin lies, for comparison. New paragraphs
inside enumerate should start at that left margin.
\begin{enumerate}[label=Case \arabic*:]
\item By setting the enumerate options in a
(I think) sensible manner, I don't achieve what I want
This paragraph shouldn't be indented at all!
\item I want to set the options so that new paragraphs
behave like the following one
This paragraph is indeed not indented at all!
\end{enumerate}
\begin{enumerate}[resume*,leftmargin=3cm,listparindent=-\leftmargin]
\item Setting a specific value for leftmargin also works\dots
This is what I want.
\end{enumerate}
This is what I want. % just to show the left margin
\end{document}
\listparindent
の値\leftmargin
が決定したら設定を遅らせる必要があります。
答え2
それとも、単純にこうなるのではないでしょうか (最初の段落の左余白がゼロでなく、項目内の後続の段落の左余白がゼロというのは、あまり見栄えがよくないと思います):
\documentclass{article}
\usepackage{enumitem}
\setlist[enumerate]{%
wide =0.5\parindent,
listparindent=0pt%
}%
\begin{document}
A normal paragraph of text just to show where the left margin lies, for comparison. New paragraphs
inside enumerate should start at that left margin.
\begin{enumerate}[label=Case \arabic*:]
\item By setting the enumerate options in a
(I think) sensible manner, I don't achieve what I want
This paragraph shouldn't be indented at all! This paragraph shouldn't be indented at all!
\item I want to set the options so that new paragraphs
behave like the following one.
This paragraph is indeed not indented at all!
\item Setting a specific value for leftmargin also works\dots
But is this what you want?
\end{enumerate}
\end{document}