我正在根据该课程编写一份文档scrbook
(但我相信我的问题适用于许多其他课程)。
枚举和列表方面的一个小问题令我困扰。
如果我有一个嵌套在另一个列表中的列表,则外部项目以点作为符号,内部项目以破折号作为符号:
\begin{itemize}
\item Outer element
\begin{itemize}
\item Inner element
\end{itemize}
\end{itemize}
呈现为:
* Outer element
- Inner element
现在,如果我有一个嵌套在枚举中的列表,则外部项有编号,内部项带有点:
\begin{enumerate}
\item Outer element
\begin{itemize}
\item Inner element
\end{itemize}
\end{enumerate}
呈现为:
1. Outer element
* Inner element
由于枚举中的列表项是第二级项,我希望它们具有与嵌套在另一个列表中的第二级项相同的符号。
相反,嵌套枚举和列表的计数器保持分开,并且嵌套在枚举中的列表计为第一级列表。
实际上,我们用*
而不是-
。
我花了整整半个小时寻找解决方案,但没有找到任何解决方案(可能是我没有找到正确的关键字集来找到任何地方)然后我玩了一下,\def\labelitemi{*}
但\def\labelitemii{-}
没有运气。
我看到在我描述问题之后,编辑器上方的空间填充了链接,但它们似乎都不相关。
我想知道是否有已知的解决方案可以解决这个问题,或者是否有人可以帮助解决这个问题。我相信一种方法是将列表和枚举级别的计数器相加,然后使用结果数字来选择\labelitem*
,但我不知道从哪里开始。
提前感谢任何指点或帮助!
我刚刚意识到我可以将其指定--
为我的内在参数\item
:
\begin{enumerate}
\item Outer element
\begin{itemize}
\item[--] Inner element
\end{itemize}
\end{enumerate}
呈现为:
1. Outer element
- Inner element
尽管它产生了预期的结果,但它确实感觉像是一个永久的解决方案,因为每次我有嵌套列表和枚举时,我都必须记住使用此技巧。任何帮助都将不胜感激!
答案1
您可以使用
\makeatletter
\let\@enumdepth\@itemdepth
\makeatother
这使得计数器相同,因此增加一个计数器也会增加另一个计数器,而不是仅仅将一个计数器设置为另一个计数器的值。
因此在此之后,逐项列举中的枚举将使用 2 级设置,枚举中的逐项列举也将使用 2 级设置。