列表的最大默认嵌套级别为 4。因此,当我转换文档时收到错误:
LaTeX 错误:嵌套太深。
我也使用 TeXLive,但我不使用它编辑文档。我仅使用 cmd 将 HTML 转换为 PDF。如何才能获得更多级别而不必实际使用 LaTeX 编写?
答案1
您只需增加深度检查中的最大深度,然后为数字声明两个额外的计数器,并为所有级别设置默认间距和标签
\documentclass{article}
\makeatletter
\newcounter{enumv}
\newcounter{enumvi}
\renewcommand\theenumi{\arabic{enumi}}
\renewcommand\theenumii{\arabic{enumi}}
\renewcommand\theenumii{\arabic{enumi}}
\renewcommand\theenumiv{\arabic{enumi}}
\renewcommand\labelenumi{\theenumi.}
\renewcommand\labelenumii{\theenumii.}
\renewcommand\labelenumiii{\theenumii.}
\renewcommand\labelenumiv{\theenumiv.}
\newcommand\labelenumv{\theenumv.}
\newcommand\labelenumvi{\theenumvi.}
\renewcommand\p@enumii{\labelenumi}
\renewcommand\p@enumiii{\labelenumii}
\renewcommand\p@enumiv{\labelenumii}
\renewcommand\p@enumv{\labelenumiv}
\renewcommand\p@enumvi{\labelenumv}
\setlength\leftmargini{1em}
\setlength\leftmarginii{1em}
\setlength\leftmarginiii{1em}
\setlength\leftmarginiv{1em}
\setlength\leftmarginv{1em}
\setlength\leftmarginvi{1em}
\def\enumerate{%
\ifnum \@enumdepth >
%\thr@@
8
\@toodeep\else
\advance\@enumdepth\@ne
\edef\@enumctr{enum\romannumeral\the\@enumdepth}%
\expandafter
\list
\csname label\@enumctr\endcsname
{\usecounter\@enumctr\def\makelabel##1{\hss\llap{##1}}}%
\fi}
\makeatother
\begin{document}
\begin{enumerate}
\item \begin{enumerate}
\item \begin{enumerate}
\item \begin{enumerate}
\item \begin{enumerate}
\item \begin{enumerate}
\item aaa
\item bbb
\end{enumerate}
\end{enumerate}
\end{enumerate}
\end{enumerate}
\end{enumerate}
\item ccc
\end{enumerate}
\end{document}