我一直在尝试创建一个列表环境来生成执行以下操作的内容:
它有一个计数器(如枚举环境)。
每项内容的第一行是该项的概述(可能以粗体显示)。
有些项目除了第一行之外没有其他内容,而其他项目则有更多描述。描述与其上方的标题对齐。
以下是我的尝试:
\newcounter{numberdesc}
\newenvironment{numberdescription}{\begin{list}{}{%
\renewcommand{\makelabel}{\textbf{\thenumberdesc.\hfill}}}}{%
\end{list}}
\newcommand{\descitem}[1]{\stepcounter{numberdesc}\item\textbf{#1}\newline}
\begin{numberdescription}
\descitem{First item}
has some description below it
\descitem{Second item does not}
\descitem{Third item}
also has description
\end{numberdescription}
但我知道这相当粗糙(尤其是\newline
在替换的定义中\item
)。
之前有人建议我这个enumitem
包可以满足我的要求,但据我所知,它并没有按照我想要的方式对齐描述文本。具体来说:每个项目都有一个编号和一个标题,项目的文本应该与标题对齐,而不是与编号对齐。
我希望它产生类似以下的东西(以更粗糙的方式产生):
答案1
\par
一个简单的解决方案是在标题后添加。您可以按如下方式构建它:
\documentclass{article}
\newcounter{numberdesc}
\newenvironment{numberdescription}{\begin{list}{}{%
\renewcommand{\makelabel}{\textbf{\thenumberdesc.\hfill}}}}{%
\end{list}}
\newcommand{\descitem}[1]{\stepcounter{numberdesc}{\item\textbf{#1}\par}}
\begin{document}
\noindent Text to show alignment.
\begin{numberdescription}
\descitem{First item}
has some description below it
\descitem{Second item does not}
\descitem{Third item}
also has description
\descitem{Fourth item}
has some description below it
\descitem{Fifth item does not}
\descitem{Sixth item}
also has description
\descitem{Seventh item}
has some description below it
\descitem{Eight item does not}
\descitem{Ninth item is so long that it fills more than one line, but
that doesn't give us problems}
also has description
\descitem{Tenth item}
has some description below it
\end{numberdescription}
\end{document}