删除简短目录中的空行

删除简短目录中的空行

我正在使用该shorttoc包制作我的书的第二个目录。这是一个简单示例:

\documentclass{scrbook}
\usepackage{shorttoc}
\begin{document}

\shorttoc{Contents at a Glance}{0}

\renewcommand*\contentsname{Table of Contents}
\tableofcontents

\chapter{Foo}
\section{Foo1}
\section{Foo2}
\section{Foo3}
\chapter{Bar}
\section{Bar1}
\section{Bar2}
\chapter{Baz}
\section{Baz1}
\section{Baz2}
\section{Baz3}

\end{document}

这样做很好,只是简短的目录每章后面都有一个空行,这是我不想要的。(这本书大约有 20 章,如果没有空行,它们可以全部放在一页上。)

不过,我确实想保留正常(长)目录的格式。

答案1

按照 cfr 的想法,这里有一个解决方案:这些变化是本地的shorttoc

\documentclass{scrbook}
\usepackage{shorttoc}
\usepackage{etoolbox}
\begin{document}
\makeatletter
{\patchcmd{\l@chapter}{\vskip 1.0em \@plus\p@}{}{}{\errmessage{paching \string\l@chapter fail}}
\patchcmd{\l@chapter}{\addvspace{1.0em \@plus\p@}}{}{}{\errmessage{paching \string\l@chapter fail}}
\shorttoc{Contents at a Glance}{0}}
\makeatother
\renewcommand*\contentsname{Table of Contents}
\tableofcontents

\chapter{Foo}
\section{Foo1}
\section{Foo2}
\section{Foo3}
\chapter{Bar}
\section{Bar1}
\section{Bar2}
\chapter{Baz}
\section{Baz1}
\section{Baz2}
\section{Baz3}

\end{document}

相关内容