我在 subsubsubsection 中有一些定义和定理。当 latex 生成定理列表时,subsubsubsection 的最后一位数字与定理、定义等名称的首字母重叠。当我使用 thmtools 包的 \listoftheorem 生成定理列表时,如何调整定义编号与其标签之间的间距
谢谢,
以下是示例:
\documentclass{article}
\usepackage{amsthm}
\usepackage{thmtools}
\usepackage{xcolor}
\declaretheoremstyle[
spaceabove=6pt,
spacebelow=6pt,
headfont=\normalfont\bfseries,
notefont=\mdseries, %da ainda para incluir outros argumentos, como \color{red},
notebraces={(}{)},
bodyfont=\normalfont\itshape,
postheadspace=\newline,
numberwithin=subsubsection,
shaded={rulecolor=black,
rulewidth=.4pt,
bgcolor=grey!20}]{defStyle}
\declaretheorem[name=Definition,style=defStyle]{definition}
%=================================================
\begin{document}
\listoftheorems
\section{First}
\subsection{First}
\subsubsection{First}
\end{subsection}
\subsubsection{Second}
\begin{definition}[name]
adslkjafhsldfkh asdfhkh adfadsfa $f(x)$
\end{definition}
\end{subsection}
\end{subsection}
\end{subsubsection}
\end{section}
\end{document}
答案1
为排版分段单元号预留的宽度由 控制 \thmt@listnumwidth
,默认值为2.3em
。您可以根据需要增加此值(我3.5em
在下面的示例中使用了 ):
\documentclass{article}
\usepackage{amsthm}
\usepackage{thmtools}
\usepackage{xcolor}
\declaretheoremstyle[
spaceabove=6pt,
spacebelow=6pt,
headfont=\normalfont\bfseries,
notefont=\mdseries,
notebraces={(}{)},
bodyfont=\normalfont\itshape,
postheadspace=\newline,
numberwithin=subsubsection,
shaded={rulecolor=black,
rulewidth=.4pt,
bgcolor=gray!20}]{defStyle}
\declaretheorem[name=Definition,style=defStyle]{definition}
%=================================================
\makeatletter
\renewcommand\thmt@listnumwidth{3.5em}
\makeatother
\begin{document}
\listoftheorems
\section{First}
\subsection{First}
\subsubsection{First}
\subsubsection{Second}
\begin{definition}[Test]
Test
\end{definition}
\end{document}
顺便说一句,没有诸如、等等之类的东西\end{section}
。\end{subsection}
我从你的代码中删除了它们(否则,会出现错误)。