返回enumeration 列表enumeration 列表和 itemize 相比,有更清晰的嵌套逻辑和展示效果。适合嵌套层次多的列表或者单纯的数字不能满足编号需求的情况。
enumeration 使用前需要先使用\defineenumeration创建,创建以后会自动生成子条目的命令。比如使用\defineenumeration[question]以后,一共 4 个 question 的层级会被创建: question,subquestion,subsubquestion,subsubsubquestion。
我们可以直接使用\question开始一个列表项,或者\startquestion …… \stopquestion包裹长文本列表项。使用方法也依次类推到其他层级: \subquestion, \startsubquestion, \stopsubquestion……
\defineenumeration[question]
\startquestion 地理常识题.
\stopquestion
\startsubquestion
河北省会是?
\stopsubquestion
\startsubquestion
安徽省会是?
\stopsubquestion
列表项自动使用\startNAME命令中的NAME来扩展编号,并且区分层级。
样式和文字的修改
样式和列表项文字的更改用到\setupenumeration。
alternative 可以调整列表项数字编号和文字的排列位置,left,right,text分别规定了数字编号的左,右,最前方的文字。
通过定义方法,可以更改编号的颜色样式等。
\define[1]\colorEnum{\darkgreen{#1}}
\setupenumeration[question][alternative=top,left=第,right=题,text=大题,inbetween={\blank[none]},after=\blank]
\setupenumeration[subquestion][alternative=serried,width=fit,text=小题,color=darkblue,margin=10mm,headcommand=\colorEnum]
列表标题
可以设置title=yes,对enumeration添加额外的标题。
\defineenumeration[question][title=yes,titleleft=(,titleright=)]
\startquestion [title={共十分}]
地理常识题.
\stopquestion
如果不想要左右括号,设置[title=yes,titleleft=,titleright=]
计数的更改
\nextsubquestion可以对当前enumeration的编号+1,下一列表项的编号将会跳过一个号码
\startsubquestion
河北省会是?
\stopsubquestion
\startsubquestion
安徽省会是?
\stopsubquestion
\nextsubquestion
\startsubquestion
河南省会是?
\stopsubquestion
\resetsubquestion可以对 enumeration 的编号重置回 1,下一列表项的编号将会从 1 重新开始。
\startsubquestion
河北省会是?
\stopsubquestion
\startsubquestion
安徽省会是?
\stopsubquestion
\resetsubquestion
\startsubquestion
河南省会是?
\stopsubquestion