我正在尝试创建以下类似列表(description
)的环境(不幸的是,我还没有任何 MWE...):
'left' part 'counter' 'right' part
Some label textA 1.1. Description of label textA
Some longer label textA Description of longer label textA
Some label textB 1.2. Description of label textB
Some longer label textB Description of longer label textB
'Counter'enumerate
类似于计数器,左/右部分是多行文本(右/左对齐),其中 'left' 部分的宽度是固定的。所有文本都不同,并且此环境在文档中多次使用。
我尝试使用包定义这样的环境enumitem
,但没有成功;(
非常感谢您的任何帮助或想法!
此致,
卢博斯
答案1
您可以按照以下方式进行操作。以下定义定义了一个环境descenum
和一个\descenumitem
要使用的命令,如下所示:
\begin{descenum}
\descenumitem{...label1...}{...description1...}
\descenumitem{...label2...}{...description2...}
...
\end{descenum}
将以下几行添加到你的序言中。
\newcounter{descenum}
\renewcommand\thedescenum{\arabic{section}.\arabic{descenum}}
\newlength\descenumwidth
\newenvironment{descenum}[1][0.3\linewidth]%
{\setcounter{descenum}{0}%
\setlength\descenumwidth{#1}%
\parindent0mm%
\medskip
}%
{}
\newcommand\descenumitem[2]%
{\refstepcounter{descenum}%
\par
\parbox[t]{\descenumwidth}{\raggedleft#1}%
\makebox[3em]{\thedescenum}%
\parbox[t]{\dimexpr\linewidth-\descenumwidth-3em}{#2}%
\bigskip
\par
}
环境descenum
有一个可选参数,用于指定左列的宽度。默认值为0.3\linewidth
。您也可以使用\label
以符号形式引用项目。
\documentclass{article}
\newcounter{descenum}
\renewcommand\thedescenum{\arabic{section}.\arabic{descenum}}
\newlength\descenumwidth
\newenvironment{descenum}[1][0.3\linewidth]%
{\setcounter{descenum}{0}%
\setlength\descenumwidth{#1}%
\parindent0mm%
\medskip
}%
{}
\newcommand\descenumitem[2]%
{\refstepcounter{descenum}%
\par
\parbox[t]{\descenumwidth}{\raggedleft#1}%
\makebox[3em]{\thedescenum}%
\parbox[t]{\dimexpr\linewidth-\descenumwidth-3em}{#2}%
\bigskip
\par
}
\usepackage{lipsum}
\begin{document}
\section{First section}
\lipsum[2]
\begin{descenum}
\descenumitem
{Some label textA\\Some longer label textA%
\label{xxx}%
}%
{Description of label textA\\Description of longer label textA}
\descenumitem
{Some label textB\\Some longer label textB%
\label{yyy}%
}%
{Description of label textB\\Description of longer label textB}
\end{descenum}
\lipsum[2]
See items \ref{xxx} and \ref{yyy}.
\section{Second section}
\lipsum[2]
\begin{descenum}[0.4\linewidth]
\descenumitem
{Some label textA\\Some longer label textA}%
{Description of label textA\\Description of longer label textA}
\descenumitem
{Some label textB\\Some longer label textB}%
{Description of label textB\\Description of longer label textB}
\end{descenum}
\end{document}