我在我的个人.sty
文件中使用它来更改标准枚举方案(当我做作业时,它更好地匹配文本/ MSWord 中的编号方案):
\usepackage{enumerate}
% Change enumerate numbering scheme
\renewcommand{\theenumi}{(\alph{enumi})}
\renewcommand{\labelenumi}{\theenumi}
\renewcommand{\theenumii}{{(}\roman{enumii}{)}}
\renewcommand{\labelenumii}{\theenumii}
但是前几天我创建了一个 beamer 演示文稿(没有调用 enumerate 包)并且我一直收到这些错误:
/etc/texmf/tex/latex/herron.sty|7 error| \labelenumi undefined.
/etc/texmf/tex/latex/herron.sty|9 error| \labelenumii undefined.
它编译得很好,我对它生成的内容没有任何抱怨.pdf
,但我想了解为什么会发生这种情况(并让错误消失,主要是因为我正在使用 Vim 和 vimlatexsuite,处理分离出来的窗格有点痛苦)。
谢谢!
答案1
我的猜测是,beamer 类没有定义\labelenumi
等,然后\renewcommand
会报错,但仍然定义了命令,因此实际上没有区别。一种可能的解决方案是使用 TeX 原语\def
,它可以创建或覆盖命令而无需检查:
\def\labelenumi{\theenumi}
答案2
使用 beamer 类,enumerate
可以按照所需的方式定制标签:
\setbeamertemplate{enumerate item}{(\alph{enumi})}
\setbeamertemplate{enumerate subitem}{(\roman{enumii})}