因此,我尝试在环境中创建一种简化的列表,以便调用一个命令将创建一个枚举项,而调用另一个命令将创建一个子项。
这是我的代码:
\newcounter{usagenumber}
\newcommand\enumerate{\stepcounter{usagenumber}{\small \arabic{usagenumber}.}}
\newenvironment{usages}
{
\setcounter{usagenumber}{0}
\begin{description*}
\newcommand\itemdef[1]{\item[\enumerate] #1}
\newcommand\itemex[1]
{
\begin{description*}
\item[$\cdot$] #1
\end{description*}
}
}
{
\end{description*}
}
我使用 mdwlist 包修改星号列表,只是为了留出空间。使用 xelatex 排版。
答案1
不确定您的全部意图,但可能是这样的。正如 egreg 在评论中指出的那样,enumerate
已被占用;正如我指出的那样,和#1
的定义中的出现必须改写为,因为它们发生在环境的上下文中。\itemdef
\itemex
##1
usages
\documentclass{article}
\newcounter{usagenumber}
\newcommand\xenumerate{\stepcounter{usagenumber}{\small \arabic{usagenumber}.}}
\newenvironment{usages}
{
\setcounter{usagenumber}{0}
\begin{description}
\newcommand\itemdef[1]{\item[\xenumerate] ##1}
\newcommand\itemex[1]
{
\begin{description}
\item[$\cdot$] ##1
\end{description}
}
}
{
\end{description}
}
\begin{document}
\begin{usages}
\itemdef{define xxx}
\itemdef{define yyy}
\itemex{example of yyy}
\itemdef{define zzz}
\itemex{example of zzz}
\itemdef{define aaa}
\end{usages}
\end{document}