\itemsep
d 環境を使用してリスト項目間の分離を増やしましたitemize
。最小限の労力で内部リストの項目分離に影響を与えないようにするにはどうすればよいですか? 1 つのアドホックな解決策は、\itemsep
内部リストの値を手動で減らすことです。同じ効果を実現するエレガントな方法はありますか?
\documentclass{llncs}
\begin{document}
\begin{itemize} \itemsep2em
\item \textbf{L11}: This is level 1 item
\begin{itemize}
\item \textbf{L21}: This is level 2 item
\item \textbf{L22}: This is level 2 item
\item \textbf{L23}: This is level 2 item
\item \textbf{L24}: This is level 2 item
\end{itemize}
\item \textbf{L12}: This is level 1 item
\item \textbf{L13}: This is level 1 item
\item \textbf{L14}: This is level 1 item
\end{itemize}
\end{document}
答え1
article のような標準クラスでは、\itemsep をリセットするように内部リストのコマンドを定義するため、この効果は見られません。ただし、llncs を使用する場合は、同様の機能を追加できます。
\documentclass{llncs}
\usepackage{etoolbox}
\makeatletter
\appto\@listii{\itemsep=0pt}
\makeatother
\begin{document}
\begin{itemize} \itemsep2em
\item \textbf{L11}: This is level 1 item
\begin{itemize}
\item \textbf{L21}: This is level 2 item
\item \textbf{L22}: This is level 2 item
\item \textbf{L23}: This is level 2 item
\item \textbf{L24}: This is level 2 item
\end{itemize}
\item \textbf{L12}: This is level 1 item
\item \textbf{L13}: This is level 1 item
\item \textbf{L14}: This is level 1 item
\end{itemize}
\end{document}
enumitem を使用して同様の効果を設定することもできます。
\usepackage{enumitem}
\setlist[1]{itemsep=2cm}
\setlist[2]{itemsep=0pt}
答え2
\itemsep
名前を付けて保存\myitemsep
し、内部リストに使用することができます。
\documentclass{llncs}
\usepackage{enumitem}
\newlength{\myitemsep}
\setlength{\myitemsep}{\itemsep}
\begin{document}
\begin{itemize}[itemsep=2em]
\item \textbf{L11}: This is level 1 item
\begin{itemize}[itemsep=\myitemsep]
\item \textbf{L21}: This is level 2 item
\item \textbf{L22}: This is level 2 item
\item \textbf{L23}: This is level 2 item
\item \textbf{L24}: This is level 2 item
\end{itemize}
\item \textbf{L12}: This is level 1 item
\item \textbf{L13}: This is level 1 item
\item \textbf{L14}: This is level 1 item
\end{itemize}
\end{document}