4

I want to remove vertical space between two chapters in table of contents. I can remove the vertical space between chapter and a section by using

\usepackage[titles,subfigure]{tocloft}
\renewcommand\cftchapafterpnum{\vskip -2pt}

But i dont know how to remove the spaces between two chapters. Please help me to figure it out.

1
  • 1
    Have you tried adjusting \cftbeforechapskip? Maybe try \setlength{cftbeforechapskip}{0pt}. Also it would be easier to help you if you could provide an MWE next time.
    – Max
    Commented Jan 3, 2013 at 15:08

1 Answer 1

5

This removes the space between 2 chapters only when they are just next to each other.

\documentclass{book}

\usepackage[titles]{tocloft}

\makeatletter
\newskip\old@cftbeforechapskip
\old@cftbeforechapskip\cftbeforechapskip
\let\old@l@chapter\l@chapter
\let\old@l@section\l@section
\def\l@chapter#1#2{\old@l@chapter{#1}{#2}\cftbeforechapskip3pt}% set your value here
\def\l@section#1#2{\old@l@section{#1}{#2}\cftbeforechapskip\old@cftbeforechapskip}
\makeatother

\begin{document}

\tableofcontents

\chapter{AAA}
\section{sss}

\chapter{BBB}
\section{ttt}

\chapter{CCC}

\chapter{DDD}

\end{document}

If you want to remove all the vertical spaces, you simply say the following instead of the long code in preamble:

\setlength{\cftbeforechapskip}{0pt}

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .