我想使用 amsbook 对目录中的水平间距进行小幅调整。我发现“第 1 章”与其标题之间的水平间距太大,章节和小节与其编号和标题之间的水平间距也太大。如何修改此间距。在我的 MWE 中,我对目录做了一些其他小幅调整,这些调整是我在此网站上找到的。
\documentclass[12pt]{amsbook}
\usepackage{etoolbox}
\setcounter{secnumdepth}{3}
\setcounter{tocdepth}{3}
% Uppercase 'CHAPTER' label in toc
\patchcmd{\tocchapter}{#1}{\MakeUppercase{#1}}{}{}
\makeatletter
% dots leading to the page number in toc
\renewcommand\@pnumwidth{1em}
\patchcmd{\@tocline}
{\hfil}
{\leaders\hbox{\,.\,}\hfil}
{}{}
% modify spacing in toc
\def\l@chapter{\@tocline{3}{5pt plus1pt}{0pc}{0pt}{}}
\def\l@section{\@tocline{2}{1pt plus1pt}{1.5pc}{0pt}{}}
\def\l@subsection{\@tocline{1}{1pt plus1pt}{4.5pc}{0pt}{}}
\makeatother
\renewcommand{\thesection}{\thechapter.\arabic{section}}
\begin{document}
\frontmatter
\title{My Book}
\author{Me}
% \date{}
\maketitle
\tableofcontents
\mainmatter
\chapter{Preliminaries}
\section{Section One}
\subsection{Subsection One}
\section{Section Two}
\subsection{Subsection One}
\subsection{Subsection Two}
\chapter{Results}
\section{Section One}
\subsection{Subsection One}
\subsection{Subsection Two}
\section{Section Two}
\subsection{Subsection One}
\subsection{Subsection Two}
\end{document}
'''
答案1
你可以得到一个正常的单词间空格,而不是通过以下方式\quad
插入amsbook
\patchcmd{\tocchapter}{\quad}{ }{}{}
\patchcmd{\tocsection}{\quad}{ }{}{}
\patchcmd{\tocsubsection}{\quad}{ }{}{}
您还可以尝试
\patchcmd{\tocchapter}{\quad}{\enspace}{}{}
\patchcmd{\tocsection}{\quad}{\enspace}{}{}
\patchcmd{\tocsubsection}{\quad}{\enspace}{}{}
或\hspace{<whatever you like>}
代替\enspace
。