我想添加缩进来格式化我的目录,所以我添加了我在其他帖子中看到的推荐的 tocloft 包。现在缩进是完美的,但在文章的实际正文中,每个部分之间都有一条虚线。例如,它显示:
1.1 方法。
1.1 ..............................................
之前它只会显示第一行,而不会显示第二行、第二组数字和虚线。我该如何去掉它?
\documentclass[11pt]{amsart}
\usepackage{tocloft}
\begin{document}
\setcounter{tocdepth}{4}
\tableofcontents
\newpage
\section{Experiment 1}
\subsection{Method}
\subsubsection{Participants}
\subsubsection{Stimuli}
\subsubsection{Procedure}
\subsection{Results}
\end{document}
答案1
amsart
和tocloft
不兼容。您可以使用其他文档类,或者,如果您想继续使用amsart
,则需要重新定义\l@section
、\l@subsection
、 和\l@subsubsection
、\tocsection
、\tocsubsection
和\tocsubsubsection
;类似以下内容:
\documentclass[11pt]{amsart}
\makeatletter
\def\l@section{\@tocline{1}{0pt}{1pc}{}{}}
\def\l@subsection{\@tocline{2}{0pt}{1pc}{4.6em}{}}
\def\l@subsubsection{\@tocline{3}{0pt}{1pc}{7.6em}{}}
\renewcommand{\tocsection}[3]{%
\indentlabel{\@ifnotempty{#2}{\makebox[2.3em][l]{%
\ignorespaces#1 #2.\hfill}}}#3}
\renewcommand{\tocsubsection}[3]{%
\indentlabel{\@ifnotempty{#2}{\hspace*{2.3em}\makebox[2.3em][l]{%
\ignorespaces#1 #2.\hfill}}}#3}
\renewcommand{\tocsubsubsection}[3]{%
\indentlabel{\@ifnotempty{#2}{\hspace*{4.6em}\makebox[3em][l]{%
\ignorespaces#1 #2.\hfill}}}#3}
\makeatother
\setcounter{tocdepth}{4}
\begin{document}
\tableofcontents
\newpage
\section{Experiment 1}
\subsection{Method}
\subsubsection{Participants}
\subsubsection{Stimuli}
\subsubsection{Procedure}
\subsection{Results}
\end{document}