![枚举/平行列表标签中的上标](https://linux22.com/image/361277/%E6%9E%9A%E4%B8%BE%2F%E5%B9%B3%E8%A1%8C%E5%88%97%E8%A1%A8%E6%A0%87%E7%AD%BE%E4%B8%AD%E7%9A%84%E4%B8%8A%E6%A0%87.png)
当设置标签类型(如\begin{inparaenum}[a)]
在 paralist 中)时,它会将a
, 1
,i
视为特殊字符,并相应地增加其值只要它不在一个{}
组中。我希望标签为直立上标 a、b、c,例如:
a第一件事 b第二件事 c和另一件事
我不能使用 enumitem(我知道它可以做到这一点)。如果您在enumerate
或paralist
包中(或enumitems
与oldenum
)尝试它,您会遇到问题,\textsuperscript
等等。将 放在a
括号中,因此它不会递增,并且使用 mathmode 类似$^a$
工作(斜体),但尝试使用\text
或\mathrm
会出现同样的问题。
如何paralist
使用上标直立标签?
这里有两次失败的尝试和一个可行的示例,但使用了禁止的enumitems
。
\documentclass{article}
\usepackage{paralist}
\usepackage[inline]{enumitem}
\begin{document}
\medskip{}
\begin{inparaenum}[a)]
\item one
\item two
\item three
\end{inparaenum}
\medskip{}
\begin{inparaenum}[$^a$]
\item one
\item two
\item three
\end{inparaenum}
\medskip{}
\begin{enumerate*}[label=\textsuperscript{\alph*}]
\item one
\item two
\item three
\end{enumerate*}
\end{document}
这使:
答案1
这里是:
\documentclass{article}
\usepackage{paralist}
\begin{document}
\begin{inparaenum}[\expandafter\textsuperscript a ]
\item First item,
\item Second item.
\end{inparaenum}
\bigskip
\begin{asparaenum}[\expandafter\textsuperscript a ]
\item First item
\item Second item
\end{asparaenum}
\begin{enumerate}[\expandafter\textsuperscript a ]
\item First item
\item Second item
\end{enumerate}
\end{document}
答案2
如果没有这样的东西paralist
,为什么你不定义你的?
\documentclass{article}
\usepackage{paralist}
\makeatletter
\def\inparaenumsup{%
\ifnum\@enumdepth>\thr@@
\@toodeep
\else
\advance\@enumdepth\@ne
\edef\@enumctr{enum\romannumeral\the\@enumdepth}%
\fi
\@ifnextchar[{\@enumlabel@{\@inparaenum@sup}[}{\@inparaenum@sup}}
\def\@inparaenum@sup{%
\usecounter{\@enumctr}%
\def\@itemlabel{\csname label\@enumctr\endcsname}%
\let\@item\pl@item
\def\makelabel##1{\textsuperscript{##1}}%
\ignorespaces}
\makeatother
\pagenumbering{gobble}
\begin{document}
The superscript version (bare):
\begin{inparaenumsup}[a]
\item first thing
\item second thing
\item and another thing
\end{inparaenumsup}
The superscript version (with parenthesis):
\begin{inparaenumsup}[(a)]
\item first thing
\item second thing
\item and another thing
\end{inparaenumsup}
And the original version is untouched:
\begin{inparaenum}[a]
\item first thing
\item second thing
\item and another thing
\end{inparaenum}
\end{document}
怎么运行的?
我们正在inparaenumsup
通过侵入 的内部结构来创建一种名为 的新类型的列表paralist
。
实际上,我们触及了的定义
\makelabel
,并将其从更改
\def\makelabel##1{##1}
为
\def\makelabel##1{\textsuperscript{##1}}