Skip to main content
code formatting
Source Link
Gonzalo Medina
  • 519.4k
  • 74
  • 1.7k
  • 1.9k

What follows is the definition of \tableofcontents\tableofcontents in svmult.clssvmult.cls. I only understand it halfway, and thats not enough in this case. Where would I need to fix the problem, so that there always is enough space between section number and section header in the ToC?

What follows is the definition of \tableofcontents in svmult.cls. I only understand it halfway, and thats not enough in this case. Where would I need to fix the problem, so that there always is enough space between section number and section header in the ToC?

What follows is the definition of \tableofcontents in svmult.cls. I only understand it halfway, and thats not enough in this case. Where would I need to fix the problem, so that there always is enough space between section number and section header in the ToC?

added 577 characters in body; edited tags
Source Link
yo'
  • 52.7k
  • 13
  • 163
  • 273
 ## Heading ##\def\tableofcontents\def\tableofcontents{\chapter*{\contentsname\markboth{{\contentsname}}% {{\contentsname}}} \def\authcount##1{\setcounter{auco}{##1}\setcounter{@auth}{1}} \def\lastand{\ifnum\value{auco}=2\relax \unskip{} \andname  \else \unskip \lastandname  \fi}% \def\and{\stepcounter{@auth}\relax \ifnum\value{@auth}=\value{auco}% \lastand \else \unskip, \fi}% \@starttoc{toc}\if@restonecol\twocolumn\fi} \setcounter{tocdepth}{0} \def\l@part#1#2{\addpenalty{\@secpenalty}% \addvspace{2em \@plus\p@}% \begingroup \parindent \z@ \rightskip \z@ \@plus 5em \hrule\vskip5\p@ \bfseries\boldmath \leavevmode #1\par \vskip5\p@ \hrule \vskip\p@ \nobreak \endgroup} \def\@dotsep{2} \def\addnumcontentsmark#1#2#3{% \addtocontents{#1}{\protect\contentsline{#2}{\protect\numberline {\thechapter}#3}{\thepage}}} \def\addcontentsmark#1#2#3{% \addtocontents{#1}{\protect\contentsline{#2}{#3}{\thepage}}} \def\addcontentsmarkwop#1#2#3{% \addtocontents{#1}{\protect\contentsline{#2}{#3}{0}}} \def\@adcmk[#1]{\ifcase #1 \or \def\@gtempa{\addnumcontentsmark}% \or \def\@gtempa{\addcontentsmark}% \or \def\@gtempa{\addcontentsmarkwop}% \fi\@gtempa{toc}{chapter}} \def\addtocmark{\@ifnextchar[{\@adcmk}{\@adcmk[3]}} \def\l@chapter#1#2{\par\addpenalty{-\@highpenalty} \addvspace{1.0em \@plus \p@} \@tempdima \tocchpnum \begingroup \parindent \z@ \rightskip \@tocrmarg \advance\rightskip by \z@ \@plus 2cm \parfillskip -\rightskip \pretolerance=10000 \leavevmode \advance\leftskip\@tempdima \hskip -\leftskip {\bfseries\boldmath#1}\ifx0#2\hfil\null \else \nobreak \leaders\hbox{$\m@th \mkern \@dotsep mu\hbox{.}\mkern \@dotsep mu$}\hfill \nobreak\hbox to\@pnumwidth{\hss #2}% \fi\par \penalty\@highpenalty \endgroup} \newcommand{\tocauthorstyle}{\itshape} \newcommand{\toctitlestyle}{\bfseries} \def\l@title#1#2{\addpenalty{-\@highpenalty} \addvspace{8\p@ \@plus \p@} \@tempdima \z@ \tocchpnum \z@ \calctocindent \begingroup \parindent \z@ \rightskip \@tocrmarg \advance\rightskip by \z@ \@plus 2cm \pretolerance=10000 %\parfillskip -\@tocrmarg \leavevmode \advance\leftskip\@tempdima \hskip -\leftskip {\toctitlestyle#1}%\nobreak %\leaders\hbox{$\m@th \mkern \@dotsep mu.\mkern %\@dotsep mu$}\hfill %\nobreak\hbox to\@pnumwidth{\hss #2}\par \par \penalty\@highpenalty \endgroup} \newcommand{\tocaftauthskip}{\z@} \def\l@author#1#2{%\addpenalty{\@highpenalty} \@tempdima \z@ \begingroup \pretolerance=10000 \parindent \z@ \rightskip \@tocrmarg \advance\rightskip by \z@ \@plus 2cm \parfillskip -\@tocrmarg \leavevmode \advance\leftskip\@tempdima \hskip -\leftskip {\tocauthorstyle#1}\nobreak \leaders\hbox{$\m@th \mkern \@dotsep mu.\mkern \@dotsep mu$}\hfill \nobreak\hbox to\@pnumwidth{\hss #2}\par \penalty\@highpenalty \addvspace{\tocaftauthskip}\endgroup} \newdimen\tocchpnum \newdimen\tocsecnum \newdimen\tocsectotal \newdimen\tocsubsecnum \newdimen\tocsubsectotal \newdimen\tocsubsubsecnum \newdimen\tocsubsubsectotal \newdimen\tocparanum   \newdimen\tocparatotal \newdimen\tocsubparanum \tocchpnum=\z@ % no chapter numbers \tocsecnum=18\p@ % section 88. plus 2.222pt \tocsubsecnum=23\p@ % subsection 88.8 plus 2.222pt \tocsubsubsecnum=27\p@ % subsubsection 88.8.8 plus 1.444pt \tocparanum=35\p@ % paragraph 88.8.8.8 plus 1.666pt \tocsubparanum=43\p@ % subparagraph 88.8.8.8.8 plus 1.888pt \def\calctocindent{% \tocsectotal=\tocchpnum \advance\tocsectotal by\tocsecnum \tocsubsectotal=\tocsectotal \advance\tocsubsectotal by\tocsubsecnum \tocsubsubsectotal=\tocsubsectotal \advance\tocsubsubsectotal by\tocsubsubsecnum \tocparatotal=\tocsubsubsectotal \advance\tocparatotal by\tocparanum} \calctocindent \def\@dottedtocline#1#2#3#4#5{% \ifnum #1>\c@tocdepth#1>\c@tocdepth \else \vskip \z@ \@plus.2\p@ {\leftskip #2\relax \rightskip \@tocrmarg \advance\rightskip by \z@ \@plus 2cm \parfillskip -\rightskip \pretolerance=10000 \parindent #2\relax\@afterindenttrue \interlinepenalty\@M \leavevmode \@tempdima #3\relax \advance\leftskip \@tempdima \null\nobreak\hskip -\leftskip {#4}\nobreak \leaders\hbox{$\m@th \mkern \@dotsep mu\hbox{.}\mkern \@dotsep mu$}\hfill \nobreak \hb@xt@\@pnumwidth{\hfil\normalfont \normalcolor #5}% \par}% \fi} % \def\l@section{\@dottedtocline{1}{\tocchpnum}{\tocsecnum}} \def\l@subsection{\@dottedtocline{2}{\tocsectotal}{\tocsubsecnum}} \def\l@subsubsection{\@dottedtocline{3}{\tocsubsectotal}{\tocsubsubsecnum}} \def\l@paragraph{\@dottedtocline{4}{\tocsubsubsectotal}{\tocparanum}} \def\l@subparagraph{\@dottedtocline{5}{\tocparatotal}{\tocsubparanum}}   
  
 ## Heading ##\def\tableofcontents{\chapter*{\contentsname\markboth{{\contentsname}}% {{\contentsname}}} \def\authcount##1{\setcounter{auco}{##1}\setcounter{@auth}{1}} \def\lastand{\ifnum\value{auco}=2\relax \unskip{} \andname \else \unskip \lastandname \fi}% \def\and{\stepcounter{@auth}\relax \ifnum\value{@auth}=\value{auco}% \lastand \else \unskip, \fi}% \@starttoc{toc}\if@restonecol\twocolumn\fi} \setcounter{tocdepth}{0} \def\l@part#1#2{\addpenalty{\@secpenalty}% \addvspace{2em \@plus\p@}% \begingroup \parindent \z@ \rightskip \z@ \@plus 5em \hrule\vskip5\p@ \bfseries\boldmath \leavevmode #1\par \vskip5\p@ \hrule \vskip\p@ \nobreak \endgroup} \def\@dotsep{2} \def\addnumcontentsmark#1#2#3{% \addtocontents{#1}{\protect\contentsline{#2}{\protect\numberline {\thechapter}#3}{\thepage}}} \def\addcontentsmark#1#2#3{% \addtocontents{#1}{\protect\contentsline{#2}{#3}{\thepage}}} \def\addcontentsmarkwop#1#2#3{% \addtocontents{#1}{\protect\contentsline{#2}{#3}{0}}} \def\@adcmk[#1]{\ifcase #1 \or \def\@gtempa{\addnumcontentsmark}% \or \def\@gtempa{\addcontentsmark}% \or \def\@gtempa{\addcontentsmarkwop}% \fi\@gtempa{toc}{chapter}} \def\addtocmark{\@ifnextchar[{\@adcmk}{\@adcmk[3]}} \def\l@chapter#1#2{\par\addpenalty{-\@highpenalty} \addvspace{1.0em \@plus \p@} \@tempdima \tocchpnum \begingroup \parindent \z@ \rightskip \@tocrmarg \advance\rightskip by \z@ \@plus 2cm \parfillskip -\rightskip \pretolerance=10000 \leavevmode \advance\leftskip\@tempdima \hskip -\leftskip {\bfseries\boldmath#1}\ifx0#2\hfil\null \else \nobreak \leaders\hbox{$\m@th \mkern \@dotsep mu\hbox{.}\mkern \@dotsep mu$}\hfill \nobreak\hbox to\@pnumwidth{\hss #2}% \fi\par \penalty\@highpenalty \endgroup} \newcommand{\tocauthorstyle}{\itshape} \newcommand{\toctitlestyle}{\bfseries} \def\l@title#1#2{\addpenalty{-\@highpenalty} \addvspace{8\p@ \@plus \p@} \@tempdima \z@ \tocchpnum \z@ \calctocindent \begingroup \parindent \z@ \rightskip \@tocrmarg \advance\rightskip by \z@ \@plus 2cm \pretolerance=10000 %\parfillskip -\@tocrmarg \leavevmode \advance\leftskip\@tempdima \hskip -\leftskip {\toctitlestyle#1}%\nobreak %\leaders\hbox{$\m@th \mkern \@dotsep mu.\mkern %\@dotsep mu$}\hfill %\nobreak\hbox to\@pnumwidth{\hss #2}\par \par \penalty\@highpenalty \endgroup} \newcommand{\tocaftauthskip}{\z@} \def\l@author#1#2{%\addpenalty{\@highpenalty} \@tempdima \z@ \begingroup \pretolerance=10000 \parindent \z@ \rightskip \@tocrmarg \advance\rightskip by \z@ \@plus 2cm \parfillskip -\@tocrmarg \leavevmode \advance\leftskip\@tempdima \hskip -\leftskip {\tocauthorstyle#1}\nobreak \leaders\hbox{$\m@th \mkern \@dotsep mu.\mkern \@dotsep mu$}\hfill \nobreak\hbox to\@pnumwidth{\hss #2}\par \penalty\@highpenalty \addvspace{\tocaftauthskip}\endgroup} \newdimen\tocchpnum \newdimen\tocsecnum \newdimen\tocsectotal \newdimen\tocsubsecnum \newdimen\tocsubsectotal \newdimen\tocsubsubsecnum \newdimen\tocsubsubsectotal \newdimen\tocparanum \newdimen\tocparatotal \newdimen\tocsubparanum \tocchpnum=\z@ % no chapter numbers \tocsecnum=18\p@ % section 88. plus 2.222pt \tocsubsecnum=23\p@ % subsection 88.8 plus 2.222pt \tocsubsubsecnum=27\p@ % subsubsection 88.8.8 plus 1.444pt \tocparanum=35\p@ % paragraph 88.8.8.8 plus 1.666pt \tocsubparanum=43\p@ % subparagraph 88.8.8.8.8 plus 1.888pt \def\calctocindent{% \tocsectotal=\tocchpnum \advance\tocsectotal by\tocsecnum \tocsubsectotal=\tocsectotal \advance\tocsubsectotal by\tocsubsecnum \tocsubsubsectotal=\tocsubsectotal \advance\tocsubsubsectotal by\tocsubsubsecnum \tocparatotal=\tocsubsubsectotal \advance\tocparatotal by\tocparanum} \calctocindent \def\@dottedtocline#1#2#3#4#5{% \ifnum #1>\c@tocdepth \else \vskip \z@ \@plus.2\p@ {\leftskip #2\relax \rightskip \@tocrmarg \advance\rightskip by \z@ \@plus 2cm \parfillskip -\rightskip \pretolerance=10000 \parindent #2\relax\@afterindenttrue \interlinepenalty\@M \leavevmode \@tempdima #3\relax \advance\leftskip \@tempdima \null\nobreak\hskip -\leftskip {#4}\nobreak \leaders\hbox{$\m@th \mkern \@dotsep mu\hbox{.}\mkern \@dotsep mu$}\hfill \nobreak \hb@xt@\@pnumwidth{\hfil\normalfont \normalcolor #5}% \par}% \fi} % \def\l@section{\@dottedtocline{1}{\tocchpnum}{\tocsecnum}} \def\l@subsection{\@dottedtocline{2}{\tocsectotal}{\tocsubsecnum}} \def\l@subsubsection{\@dottedtocline{3}{\tocsubsectotal}{\tocsubsubsecnum}} \def\l@paragraph{\@dottedtocline{4}{\tocsubsubsectotal}{\tocparanum}} \def\l@subparagraph{\@dottedtocline{5}{\tocparatotal}{\tocsubparanum}}   
 
\def\tableofcontents{\chapter*{\contentsname\markboth{{\contentsname}}% {{\contentsname}}} \def\authcount##1{\setcounter{auco}{##1}\setcounter{@auth}{1}} \def\lastand{\ifnum\value{auco}=2\relax \unskip{} \andname  \else \unskip \lastandname  \fi}% \def\and{\stepcounter{@auth}\relax \ifnum\value{@auth}=\value{auco}% \lastand \else \unskip, \fi}% \@starttoc{toc}\if@restonecol\twocolumn\fi} \setcounter{tocdepth}{0} \def\l@part#1#2{\addpenalty{\@secpenalty}% \addvspace{2em \@plus\p@}% \begingroup \parindent \z@ \rightskip \z@ \@plus 5em \hrule\vskip5\p@ \bfseries\boldmath \leavevmode #1\par \vskip5\p@ \hrule \vskip\p@ \nobreak \endgroup} \def\@dotsep{2} \def\addnumcontentsmark#1#2#3{% \addtocontents{#1}{\protect\contentsline{#2}{\protect\numberline {\thechapter}#3}{\thepage}}} \def\addcontentsmark#1#2#3{% \addtocontents{#1}{\protect\contentsline{#2}{#3}{\thepage}}} \def\addcontentsmarkwop#1#2#3{% \addtocontents{#1}{\protect\contentsline{#2}{#3}{0}}} \def\@adcmk[#1]{\ifcase #1 \or \def\@gtempa{\addnumcontentsmark}% \or \def\@gtempa{\addcontentsmark}% \or \def\@gtempa{\addcontentsmarkwop}% \fi\@gtempa{toc}{chapter}} \def\addtocmark{\@ifnextchar[{\@adcmk}{\@adcmk[3]}} \def\l@chapter#1#2{\par\addpenalty{-\@highpenalty} \addvspace{1.0em \@plus \p@} \@tempdima \tocchpnum \begingroup \parindent \z@ \rightskip \@tocrmarg \advance\rightskip by \z@ \@plus 2cm \parfillskip -\rightskip \pretolerance=10000 \leavevmode \advance\leftskip\@tempdima \hskip -\leftskip {\bfseries\boldmath#1}\ifx0#2\hfil\null \else \nobreak \leaders\hbox{$\m@th \mkern \@dotsep mu\hbox{.}\mkern \@dotsep mu$}\hfill \nobreak\hbox to\@pnumwidth{\hss #2}% \fi\par \penalty\@highpenalty \endgroup} \newcommand{\tocauthorstyle}{\itshape} \newcommand{\toctitlestyle}{\bfseries} \def\l@title#1#2{\addpenalty{-\@highpenalty} \addvspace{8\p@ \@plus \p@} \@tempdima \z@ \tocchpnum \z@ \calctocindent \begingroup \parindent \z@ \rightskip \@tocrmarg \advance\rightskip by \z@ \@plus 2cm \pretolerance=10000 %\parfillskip -\@tocrmarg \leavevmode \advance\leftskip\@tempdima \hskip -\leftskip {\toctitlestyle#1}%\nobreak %\leaders\hbox{$\m@th \mkern \@dotsep mu.\mkern %\@dotsep mu$}\hfill %\nobreak\hbox to\@pnumwidth{\hss #2}\par \par \penalty\@highpenalty \endgroup} \newcommand{\tocaftauthskip}{\z@} \def\l@author#1#2{%\addpenalty{\@highpenalty} \@tempdima \z@ \begingroup \pretolerance=10000 \parindent \z@ \rightskip \@tocrmarg \advance\rightskip by \z@ \@plus 2cm \parfillskip -\@tocrmarg \leavevmode \advance\leftskip\@tempdima \hskip -\leftskip {\tocauthorstyle#1}\nobreak \leaders\hbox{$\m@th \mkern \@dotsep mu.\mkern \@dotsep mu$}\hfill \nobreak\hbox to\@pnumwidth{\hss #2}\par \penalty\@highpenalty \addvspace{\tocaftauthskip}\endgroup} \newdimen\tocchpnum \newdimen\tocsecnum \newdimen\tocsectotal \newdimen\tocsubsecnum \newdimen\tocsubsectotal \newdimen\tocsubsubsecnum \newdimen\tocsubsubsectotal \newdimen\tocparanum   \newdimen\tocparatotal \newdimen\tocsubparanum \tocchpnum=\z@ % no chapter numbers \tocsecnum=18\p@ % section 88. plus 2.222pt \tocsubsecnum=23\p@ % subsection 88.8 plus 2.222pt \tocsubsubsecnum=27\p@ % subsubsection 88.8.8 plus 1.444pt \tocparanum=35\p@ % paragraph 88.8.8.8 plus 1.666pt \tocsubparanum=43\p@ % subparagraph 88.8.8.8.8 plus 1.888pt \def\calctocindent{% \tocsectotal=\tocchpnum \advance\tocsectotal by\tocsecnum \tocsubsectotal=\tocsectotal \advance\tocsubsectotal by\tocsubsecnum \tocsubsubsectotal=\tocsubsectotal \advance\tocsubsubsectotal by\tocsubsubsecnum \tocparatotal=\tocsubsubsectotal \advance\tocparatotal by\tocparanum} \calctocindent \def\@dottedtocline#1#2#3#4#5{% \ifnum #1>\c@tocdepth \else \vskip \z@ \@plus.2\p@ {\leftskip #2\relax \rightskip \@tocrmarg \advance\rightskip by \z@ \@plus 2cm \parfillskip -\rightskip \pretolerance=10000 \parindent #2\relax\@afterindenttrue \interlinepenalty\@M \leavevmode \@tempdima #3\relax \advance\leftskip \@tempdima \null\nobreak\hskip -\leftskip {#4}\nobreak \leaders\hbox{$\m@th \mkern \@dotsep mu\hbox{.}\mkern \@dotsep mu$}\hfill \nobreak \hb@xt@\@pnumwidth{\hfil\normalfont \normalcolor #5}% \par}% \fi} % \def\l@section{\@dottedtocline{1}{\tocchpnum}{\tocsecnum}} \def\l@subsection{\@dottedtocline{2}{\tocsectotal}{\tocsubsecnum}} \def\l@subsubsection{\@dottedtocline{3}{\tocsubsectotal}{\tocsubsubsecnum}} \def\l@paragraph{\@dottedtocline{4}{\tocsubsubsectotal}{\tocparanum}} \def\l@subparagraph{\@dottedtocline{5}{\tocparatotal}{\tocsubparanum}}  
Source Link
user17106
  • 917
  • 10
  • 20

Table of Contents - section numbers and section headers too close

I'm using Springers svmult templated for a book with editor. There is a problem with the TableOfContents (ToC):

When the section number only includes digits 1-9, everything looks ok, e.g.

  1. Header

1.1 Subheader

1.2.9 SubSubheader

but when section count goes past 10, the header text and the section number are way too close in the ToC, they even start to overlap. This looks ugly (worse than here):

  1. Header

1.10Subheader

1.3.10SubSubheader

12.2.3SubSubheader

What follows is the definition of \tableofcontents in svmult.cls. I only understand it halfway, and thats not enough in this case. Where would I need to fix the problem, so that there always is enough space between section number and section header in the ToC?

 ## Heading ##\def\tableofcontents{\chapter*{\contentsname\markboth{{\contentsname}}% {{\contentsname}}} \def\authcount##1{\setcounter{auco}{##1}\setcounter{@auth}{1}} \def\lastand{\ifnum\value{auco}=2\relax \unskip{} \andname \else \unskip \lastandname \fi}% \def\and{\stepcounter{@auth}\relax \ifnum\value{@auth}=\value{auco}% \lastand \else \unskip, \fi}% \@starttoc{toc}\if@restonecol\twocolumn\fi} \setcounter{tocdepth}{0} \def\l@part#1#2{\addpenalty{\@secpenalty}% \addvspace{2em \@plus\p@}% \begingroup \parindent \z@ \rightskip \z@ \@plus 5em \hrule\vskip5\p@ \bfseries\boldmath \leavevmode #1\par \vskip5\p@ \hrule \vskip\p@ \nobreak \endgroup} \def\@dotsep{2} \def\addnumcontentsmark#1#2#3{% \addtocontents{#1}{\protect\contentsline{#2}{\protect\numberline {\thechapter}#3}{\thepage}}} \def\addcontentsmark#1#2#3{% \addtocontents{#1}{\protect\contentsline{#2}{#3}{\thepage}}} \def\addcontentsmarkwop#1#2#3{% \addtocontents{#1}{\protect\contentsline{#2}{#3}{0}}} \def\@adcmk[#1]{\ifcase #1 \or \def\@gtempa{\addnumcontentsmark}% \or \def\@gtempa{\addcontentsmark}% \or \def\@gtempa{\addcontentsmarkwop}% \fi\@gtempa{toc}{chapter}} \def\addtocmark{\@ifnextchar[{\@adcmk}{\@adcmk[3]}} \def\l@chapter#1#2{\par\addpenalty{-\@highpenalty} \addvspace{1.0em \@plus \p@} \@tempdima \tocchpnum \begingroup \parindent \z@ \rightskip \@tocrmarg \advance\rightskip by \z@ \@plus 2cm \parfillskip -\rightskip \pretolerance=10000 \leavevmode \advance\leftskip\@tempdima \hskip -\leftskip {\bfseries\boldmath#1}\ifx0#2\hfil\null \else \nobreak \leaders\hbox{$\m@th \mkern \@dotsep mu\hbox{.}\mkern \@dotsep mu$}\hfill \nobreak\hbox to\@pnumwidth{\hss #2}% \fi\par \penalty\@highpenalty \endgroup} \newcommand{\tocauthorstyle}{\itshape} \newcommand{\toctitlestyle}{\bfseries} \def\l@title#1#2{\addpenalty{-\@highpenalty} \addvspace{8\p@ \@plus \p@} \@tempdima \z@ \tocchpnum \z@ \calctocindent \begingroup \parindent \z@ \rightskip \@tocrmarg \advance\rightskip by \z@ \@plus 2cm \pretolerance=10000 %\parfillskip -\@tocrmarg \leavevmode \advance\leftskip\@tempdima \hskip -\leftskip {\toctitlestyle#1}%\nobreak %\leaders\hbox{$\m@th \mkern \@dotsep mu.\mkern %\@dotsep mu$}\hfill %\nobreak\hbox to\@pnumwidth{\hss #2}\par \par \penalty\@highpenalty \endgroup} \newcommand{\tocaftauthskip}{\z@} \def\l@author#1#2{%\addpenalty{\@highpenalty} \@tempdima \z@ \begingroup \pretolerance=10000 \parindent \z@ \rightskip \@tocrmarg \advance\rightskip by \z@ \@plus 2cm \parfillskip -\@tocrmarg \leavevmode \advance\leftskip\@tempdima \hskip -\leftskip {\tocauthorstyle#1}\nobreak \leaders\hbox{$\m@th \mkern \@dotsep mu.\mkern \@dotsep mu$}\hfill \nobreak\hbox to\@pnumwidth{\hss #2}\par \penalty\@highpenalty \addvspace{\tocaftauthskip}\endgroup} \newdimen\tocchpnum \newdimen\tocsecnum \newdimen\tocsectotal \newdimen\tocsubsecnum \newdimen\tocsubsectotal \newdimen\tocsubsubsecnum \newdimen\tocsubsubsectotal \newdimen\tocparanum \newdimen\tocparatotal \newdimen\tocsubparanum \tocchpnum=\z@ % no chapter numbers \tocsecnum=18\p@ % section 88. plus 2.222pt \tocsubsecnum=23\p@ % subsection 88.8 plus 2.222pt \tocsubsubsecnum=27\p@ % subsubsection 88.8.8 plus 1.444pt \tocparanum=35\p@ % paragraph 88.8.8.8 plus 1.666pt \tocsubparanum=43\p@ % subparagraph 88.8.8.8.8 plus 1.888pt \def\calctocindent{% \tocsectotal=\tocchpnum \advance\tocsectotal by\tocsecnum \tocsubsectotal=\tocsectotal \advance\tocsubsectotal by\tocsubsecnum \tocsubsubsectotal=\tocsubsectotal \advance\tocsubsubsectotal by\tocsubsubsecnum \tocparatotal=\tocsubsubsectotal \advance\tocparatotal by\tocparanum} \calctocindent \def\@dottedtocline#1#2#3#4#5{% \ifnum #1>\c@tocdepth \else \vskip \z@ \@plus.2\p@ {\leftskip #2\relax \rightskip \@tocrmarg \advance\rightskip by \z@ \@plus 2cm \parfillskip -\rightskip \pretolerance=10000 \parindent #2\relax\@afterindenttrue \interlinepenalty\@M \leavevmode \@tempdima #3\relax \advance\leftskip \@tempdima \null\nobreak\hskip -\leftskip {#4}\nobreak \leaders\hbox{$\m@th \mkern \@dotsep mu\hbox{.}\mkern \@dotsep mu$}\hfill \nobreak \hb@xt@\@pnumwidth{\hfil\normalfont \normalcolor #5}% \par}% \fi} % \def\l@section{\@dottedtocline{1}{\tocchpnum}{\tocsecnum}} \def\l@subsection{\@dottedtocline{2}{\tocsectotal}{\tocsubsecnum}} \def\l@subsubsection{\@dottedtocline{3}{\tocsubsectotal}{\tocsubsubsecnum}} \def\l@paragraph{\@dottedtocline{4}{\tocsubsubsectotal}{\tocparanum}} \def\l@subparagraph{\@dottedtocline{5}{\tocparatotal}{\tocsubparanum}}