itemsep
所以我想知道子项是否有等价物,特别是在description
环境中。我知道我可以将多个环境嵌套在另一个环境中,但这看起来很丑陋。
例如:
\begin{description}\itemsep2ex
\item[first item] \hfill\\
\subitem \hfill\vspace{-1ex}\\
some text
\subitem \hfill\vspace{-1ex}\\
some more text
\subitem \hfill\vspace{-1ex}\\
more text
\item[second item]
\subitem some text
\end{description}
这给了我想要的,但是有没有办法用\vspace{-1ex}
适用于所有环境的通用命令替换子项后面的 3 个?
谢谢!
答案1
在枚举项包,为列表中不同层次的项目标签设置不同的字体和字体形状很简单description
。以下 MWE 保留了 1 级描述项目标签的默认设置(粗体),但使用非粗体斜体用于 2 级描述项的标签。(如果您想使用普通的非斜体作为 2 级描述项的标签,只需省略该\itshape
指令。)希望您能找到一些不会让您觉得难看的字体形状和粗细组合……
\documentclass{article}
\usepackage{enumitem}
\setlist[description,2]{font=\normalfont\itshape} % non-bold italics
\begin{document}
\section{Hello}
\begin{description}
\item[First item] Initial thoughts \ldots
\begin{description}
\item[Preliminaries] The quick brown fox jumps \ldots
\item[Further stuff] \ldots\ over the lazy dog.
\end{description}
\item[Second item] Further thoughts \ldots
\end{description}
\end{document}
答案2
那么,你可以定义一个自定义的\MySubitem
:
\def\MySubitem{\subitem \hfill\vspace{-1ex}\\ }
然后\MySubitem
在需要的时候使用应用,在需要的时候使用\hfill\vspace{-1ex}\\
常规\subitem
不希望它能得到应用(就像你上次使用的那样)。因此,使用下面的 MWE,你将获得作为示例的输出:
笔记:
如果你总是想要相同的行为,你可以重新定义
\subitem
:\let\OldSubItem\subitem \def\subitem{\OldSubItem \hfill\vspace{-1ex}\\ }
我原本是这样做的,但后来发现您没有将您的调整应用到您上次的使用中
\subitem
。
警告:
- 这是对 的滥用
\subitem
。正如 egreg 在下面评论的那样,\subitem
这是一个用于排版索引的内部命令,并不打算以这种方式使用。
代码:
\documentclass{article}
\def\MySubitem{\subitem \hfill\vspace{-1ex}\\ }
% If you want to redefine \subitem uncomment the following:
% \let\OldSubItem\subitem%
% \def\subitem{\OldSubItem \hfill\vspace{-1ex}\\ }
\begin{document}
\begin{description}\itemsep2ex
\item[first item] \hfill\\
\subitem \hfill\vspace{-1ex}\\
some text
\subitem \hfill\vspace{-1ex}\\
some more text
\subitem \hfill\vspace{-1ex}\\
more text
\item[second item]
\subitem some text
\end{description}
\end{document}