众所周知,列表环境分为项目符号和项目内容,例如LaTeX
默认提供的enumitem
环境,键入\item A
,得到一个序号和小数点的组合,一个字母A
,以及一些空白距离,包括垂直的和水平的。略去这些空白距离,只谈“有效信息”,即序号和小数点的组合(项目符号)和字母A
(项目内容),当项目内容较多的时候,就会产生悬挂效果,并且默认是支持换页和分栏的。
但是这里面有一些我不满意的点,参照enumitem
宏包的图:
label
默认不是顶格排的,其实是居右的,这就导致label
盒子的左端留出些许水平空白,我想让label
顶格,我知道可以通过align=left
来实现,此时是居左的,但是此时又导致其二,label
盒子的右端留出了许多空白。然而,实际上在label
两边的水平空白,我都不想要,但仍然需要在label
即1.
后面留出大约2pt
的水平空白,以将项目符号和项目内容分隔开。
刚好为0pt
,看起来似乎是当itemindent=labelsep=0pt
时leftmargin-labelwidth
的值。
verse
环境实现吗?或者其他的封装方法?