从 paralist 过渡到 enumitem 包的建议

从 paralist 过渡到 enumitem 包的建议

根据建议使用 paralist 与 enumitem 有什么区别,我正在从使用过渡到paralist使用enumitem,并且遇到了一些问题。

  1. 有几个地方我使用了段落模式列表inparaenum,所以想知道我是否可以同时加载两个包,并用于enumitemenumerateitemize环境description,但仍然可以inparaenumparalist包中使用?加载两个包有什么问题吗?似乎paralist加载 enumitem

  2. 我注意到这两个包之间的间距至少有一个小差异。标准enumerate在项目标签之前的左侧留出了一点额外的空间。这只是我注意到的一件事,可能还有其他我尚未遇到的间距问题。那么,我可以使用哪些设置让 {enumitem} 产生的间距尽可能与 {paralist} 产生的间距相同。或者其他人是否遇到过这个问题并想出了一堆设置来做到这一点?这可以通过切换注释掉的列表环境来查看。

梅威瑟:

\documentclass{article}

\usepackage{paralist}
%\usepackage[shortlabels]{enumitem}

\begin{document}
\begin{enumerate}[(a)]
    \item One
    \item Two
\end{enumerate}
\end{document}

答案1

关于你的第一个问题(段落模式列表),我建议等待enumitem3.0 版本的发布,该版本将于下周. 来自 README3.0alpha2

运行列表中有三种新列表类型:枚举*、逐项列举*和说明*。可以使用\newlist和 创建新列表\setlist

使用包选项 runin,定义了三个列表:enumerate*、itemize* 和 description*(不要与相应的类型混淆)。它们模拟 paralist 和 shortlst 的行为,其中标签和设置分别与显示(即“正常”)列表 enumerate、itemize 和 description 共享(但是,恢复是基于环境名称,而不是列表类型)。

格式通过键“afteritem”(默认为空格)和“afterlabel”(默认为\nobreakspace,即~)设置。

关于您的第二个问题:enumitem 没有“paralist 间距模拟模式”,但应该可以深入研究paralist.sty、提取精确的间距行为并相应地调整 enumitem 的设置。

编辑:以下设置至少应该相当接近 paralist:

\documentclass{article}

\usepackage[english]{babel}
\usepackage{blindtext}

\usepackage{paralist}
\usepackage[shortlabels]{enumitem}
\setlist{align=left,leftmargin=1.778em,labelwidth=1.278em}

\begin{document}

\blindtext

\begin{enumerate}[(a)]
    \item One
    \item Two
\end{enumerate}

\blindtext

\end{document}

相关内容