Qui ci sono delle spiegazioni sulla definizione di \l@chapter.I pacchetti tocloft e titletoc permettono di cambiare agevolmente il layout dell’indice.
A ogni modo una soluzione può essere:`\documentclass{book}
\makeatletter
\renewcommand*\l@chapter[2]{%
\ifnum \c@tocdepth >\m@ne
\addpenalty{-\@highpenalty}%
\vskip 1.0em \@plus\p@
\setlength\@tempdima{1.5em}%
\begingroup
\parindent \z@ \rightskip \@pnumwidth
\parfillskip -\@pnumwidth
\leavevmode \bfseries
\advance\leftskip\@tempdima
%\hskip -\leftskip
#1\nobreak\hfil \nobreak\hb@xt@\@pnumwidth{\hss #2}\par
\penalty\@highpenalty
\endgroup
\fi}
\renewcommand*\l@section{\@dottedtocline{1}{3em}{2.3em}}
\makeatother
\begin{document}
\tableofcontents
\chapter{primo}
\section{bla bla}
\section{bla ll}
\chapter{secondo}
\section{eee}
\end{document}`
Se invece vogliamo usare i pacchetti:`\documentclass{book}
\usepackage{titletoc}
\titlecontents{chapter}
[3.0em]
{\vspace{\baselineskip}}
{\bfseries\contentslabel{1.5em}}
{\hspace*{-2.3em}}
{\titlerule*[1em]{.}\contentspage}
%
\titlecontents{section}
[5.3em]
{}
{\contentslabel{2.3em}}
{\hspace*{-2.3em}}
{\titlerule*[1em]{.}\contentspage}
\begin{document}
\tableofcontents
\chapter{primo}
\section{bla bla}
\section{bla ll}
\chapter{secondo}
\section{eee}
\end{document}`
Fran