2 %% This is file `tocloft.sty',
3 %% generated with the docstrip utility.
5 %% The original source files were:
7 %% tocloft.dtx (with options: `usc')
9 %% Author: Peter Wilson, Herries Press
10 %% Maintainer: Will Robertson (will dot robertson at latex-project dot org)
11 %% Maintainer: Will Robertson (will dot robertson at latex-project dot org)
12 %% Copyright 1998-2003 Peter R. Wilson
13 %% Copyright 2009 Will Robertson
15 %% This work may be distributed and/or modified under the
16 %% conditions of the LaTeX Project Public License, either
17 %% version 1.3c of this license or (at your option) any
18 %% later version: <http://www.latex-project.org/lppl.txt>
20 %% This work has the LPPL maintenance status "maintained".
21 %% The Current Maintainer of this work is Will Robertson.
23 %% This work consists of the files listed in the README file.
25 \NeedsTeXFormat{LaTeX2e}
26 \ProvidesPackage{tocloft}[2010/10/13 v2.3e parameterised ToC, etc., typesetting]
27 \newcommand{\@cftquit}{}
28 \newif\if@cfthaschapter
31 \@ifclassloaded{scrartcl}{\@cftkomatrue}{}
32 \@ifclassloaded{scrreprt}{\@cftkomatrue}{}
33 \@ifclassloaded{scrbook}{\@cftkomatrue}{}
35 \@ifundefined{chapter}{%
37 \@ifundefined{section}{%
38 \PackageWarning{tocloft}%
39 {I don't recognize any sectional divisions so I'll do nothing}
40 \renewcommand{\@cftquit}{\endinput}
41 }{\PackageInfo{tocloft}{The document has section divisions}}
43 \PackageInfo{tocloft}{The document has chapter divisions}}
45 \newif\if@cfttocbibind
47 \@ifpackageloaded{tocbibind}{\@cfttocbibindtrue}{\@cfttocbibindfalse}
49 \@ifpackagelater{tocbibind}{1998/11/16}{}{%
50 \PackageWarning{tocloft}{%
51 You are using a version of the tocbibind package\MessageBreak
52 that is not compatible with tocloft.\MessageBreak
53 The results may be surprising.\MessageBreak
54 Consider installing the current version of tocbibind.}}
57 \newif\if@cftnctoc\@cftnctocfalse
58 \DeclareOption{titles}{\@cftnctoctrue}
59 %% \ProcessOptions\relax
60 \newif\if@cftsubfigopt\@cftsubfigoptfalse
61 \DeclareOption{subfigure}{\@cftsubfigopttrue}
65 \newcommand{\tocloftpagestyle}[1]{%
66 \def\@cftpagestyle{\thispagestyle{#1}}}
67 \tocloftpagestyle{plain}
69 \newcommand{\cftmarktoc}{%
70 \@mkboth{\MakeUppercase\contentsname}{\MakeUppercase\contentsname}}
71 \newcommand{\cftmarklof}{%
72 \@mkboth{\MakeUppercase\listfigurename}{\MakeUppercase\listfigurename}}
73 \newcommand{\cftmarklot}{%
74 \@mkboth{\MakeUppercase\listtablename}{\MakeUppercase\listtablename}}
76 \renewcommand{\cftmarktoc}{%
77 \@mkboth{\contentsname}{\contentsname}}
78 \renewcommand{\cftmarklof}{%
79 \@mkboth{\listfigurename}{\listfigurename}}
80 \renewcommand{\cftmarklot}{%
81 \@mkboth{\listtablename}{\listtablename}}
83 \providecommand{\@cfttocstart}{%
86 \@restonecoltrue\onecolumn
91 \providecommand{\@cfttocfinish}{%
93 \if@restonecol\twocolumn\fi
95 \providecommand{\phantomsection}{}
97 \newcommand{\@cftdobibtoc}{%
101 \addcontentsline{toc}{chapter}{\contentsname}
104 \addcontentsline{toc}{\@tocextra}{\contentsname}
108 \newlength{\cftparskip}
109 \setlength{\cftparskip}{0pt}
113 \renewcommand{\tableofcontents}{%
117 \parindent\z@ \parskip\cftparskip
127 \newcommand{\@cftmaketoctitle}{%
128 \addpenalty\@secpenalty
130 \vspace*{\cftbeforetoctitleskip}
132 \vspace{\cftbeforetoctitleskip}
135 {\interlinepenalty\@M
136 {\cfttoctitlefont\contentsname}{\cftaftertoctitle}
139 \vskip \cftaftertoctitleskip
141 \newlength{\cftbeforetoctitleskip}
142 \newlength{\cftaftertoctitleskip}
144 \setlength{\cftbeforetoctitleskip}{50pt}
145 \setlength{\cftaftertoctitleskip}{40pt}
147 \setlength{\cftbeforetoctitleskip}{3.5ex \@plus 1ex \@minus .2ex}
148 \setlength{\cftaftertoctitleskip}{2.3ex \@plus.2ex}
151 \newcommand{\cfttoctitlefont}{\normalfont\Huge\bfseries}
152 \if@cftkoma\renewcommand{\cfttoctitlefont}{\size@chapter\sectfont}\fi
154 \newcommand{\cfttoctitlefont}{\normalfont\Large\bfseries}
155 \if@cftkoma\renewcommand{\cfttoctitlefont}{\size@section\sectfont}\fi
157 \newcommand{\cftaftertoctitle}{}
158 \newcommand{\cftsetpnumwidth}[1]{\renewcommand{\@pnumwidth}{#1}}
159 \newcommand{\cftsetrmarg}[1]{\renewcommand{\@tocrmarg}{#1}}
160 \providecommand{\cftdot}{.}
161 \providecommand{\cftdotfill}[1]{%
162 \leaders\hbox{$\m@th\mkern #1 mu\hbox{\cftdot}\mkern #1 mu$}\hfill}
163 \providecommand{\cftdotsep}{4.5}
164 \newcommand{\cftnodots}{10000}
165 \newcommand{\cftparfillskip}{\parfillskip=0pt plus1fil}
166 \renewcommand{\numberline}[1]{%
167 \hb@xt@\@tempdima{\@cftbsnum #1\@cftasnum\hfil}\@cftasnumb}
168 \newcommand{\@cftbsnum}{}
169 \newcommand{\@cftasnum}{}
170 \newcommand{\@cftasnumb}{}
173 \@ifundefined{part}{\@cfthaspartfalse}{\@cfthasparttrue}
175 \renewcommand*{\l@part}[2]{%
177 \ifnum \c@tocdepth >-2\relax
181 \ifnum \c@tocdepth >\m@ne
182 \if@cfthaschapter\else
189 \addpenalty{-\@highpenalty}%
191 \addpenalty\@secpenalty
193 \addvspace{\cftbeforepartskip}%
195 {\leftskip \cftpartindent\relax
196 \rightskip \@tocrmarg
197 \parfillskip -\rightskip
198 \parindent \cftpartindent\relax\@afterindenttrue
201 \@tempdima \cftpartnumwidth\relax
202 \let\@cftbsnum \cftpartpresnum
203 \let\@cftasnum \cftpartaftersnum
204 \let\@cftasnumb \cftpartaftersnumb
205 \advance\leftskip \@tempdima \null\nobreak\hskip -\leftskip
206 {\cftpartfont \cftpartpresnum #1}%
211 \everypar{\global\@nobreakfalse\everypar{}}%
215 \everypar{\global\@nobreakfalse\everypar{}}%
222 \newlength{\cftbeforepartskip}
223 \setlength{\cftbeforepartskip}{2.25em \@plus\p@}
224 \newlength{\cftpartnumwidth}
225 \setlength{\cftpartnumwidth}{0em}
226 \newcommand{\cftpartfont}{\large\bfseries}
227 \newcommand{\cftpartpresnum}{}
228 \newcommand{\cftpartaftersnum}{}
229 \newcommand{\cftpartaftersnumb}{}
230 \newcommand{\cftpartleader}{\large\bfseries\cftdotfill{\cftpartdotsep}}
231 \newcommand{\cftpartdotsep}{\cftnodots}
232 \newcommand{\cftpartpagefont}{\large\bfseries}
233 \newcommand{\cftpartafterpnum}{}
234 \newlength{\cftpartindent}
235 \setlength{\cftpartindent}{0em}
236 \newcommand{\cftpartfillnum}[1]{%
238 {\hb@xt@\@pnumwidth{\hss {\cftpartpagefont #1}}}\cftpartafterpnum\par}
240 \setlength{\cftpartnumwidth}{2em}
241 \renewcommand{\cftpartfont}{\sectfont\large}
242 \renewcommand{\cftpartpagefont}{\sectfont\large}
247 \renewcommand*{\l@chapter}[2]{%
248 \ifnum \c@tocdepth >\m@ne
249 \addpenalty{-\@highpenalty}%
250 \vskip \cftbeforechapskip
251 {\leftskip \cftchapindent\relax
252 \rightskip \@tocrmarg
253 \parfillskip -\rightskip
254 \parindent \cftchapindent\relax\@afterindenttrue
257 \@tempdima \cftchapnumwidth\relax
258 \let\@cftbsnum \cftchappresnum
259 \let\@cftasnum \cftchapaftersnum
260 \let\@cftasnumb \cftchapaftersnumb
261 \advance\leftskip \@tempdima \null\nobreak\hskip -\leftskip
262 {\cftchapfont #1}\nobreak
263 \cftchapfillnum{#2}}%
267 \newlength{\cftbeforechapskip}
268 \setlength{\cftbeforechapskip}{1.0em \@plus\p@}
269 \newlength{\cftchapindent}
270 \setlength{\cftchapindent}{0em}
271 \newlength{\cftchapnumwidth}
272 \setlength{\cftchapnumwidth}{1.5em}
273 \newcommand{\cftchapfont}{\bfseries}
274 \newcommand{\cftchappresnum}{}
275 \newcommand{\cftchapaftersnum}{}
276 \newcommand{\cftchapaftersnumb}{}
277 \newcommand{\cftchapleader}{\bfseries\cftdotfill{\cftchapdotsep}}
278 \newcommand{\cftchapdotsep}{\cftnodots}
279 \newcommand{\cftchappagefont}{\bfseries}
280 \newcommand{\cftchapafterpnum}{}
281 \newcommand{\cftchapfillnum}[1]{%
282 {\cftchapleader}\nobreak
283 \hb@xt@\@pnumwidth{\hfil\cftchappagefont #1}\cftchapafterpnum\par}
285 \renewcommand{\cftchapfont}{\sectfont}
289 \renewcommand*{\l@section}[2]{%
290 \ifnum \c@tocdepth >\z@
292 \vskip \cftbeforesecskip
294 \addpenalty\@secpenalty
295 \addvspace{\cftbeforesecskip}
297 {\leftskip \cftsecindent\relax
298 \rightskip \@tocrmarg
299 \parfillskip -\rightskip
300 \parindent \cftsecindent\relax\@afterindenttrue
303 \@tempdima \cftsecnumwidth\relax
304 \let\@cftbsnum \cftsecpresnum
305 \let\@cftasnum \cftsecaftersnum
306 \let\@cftasnumb \cftsecaftersnumb
307 \advance\leftskip \@tempdima \null\nobreak\hskip -\leftskip
308 {\cftsecfont #1}\nobreak
311 \newlength{\cftbeforesecskip}
312 \newlength{\cftsecindent}
313 \newlength{\cftsecnumwidth}
314 \newcommand{\cftsecpresnum}{}
315 \newcommand{\cftsecaftersnum}{}
316 \newcommand{\cftsecaftersnumb}{}
318 \setlength{\cftbeforesecskip}{\z@ \@plus.2\p@}
319 \setlength{\cftsecindent}{1.5em}
320 \setlength{\cftsecnumwidth}{2.3em}
321 \newcommand{\cftsecfont}{\normalfont}
322 \newcommand{\cftsecleader}{\normalfont\cftdotfill{\cftsecdotsep}}
323 \newcommand{\cftsecdotsep}{\cftdotsep}
324 \newcommand{\cftsecpagefont}{\normalfont}
326 \setlength{\cftbeforesecskip}{1.0em \@plus\p@}
327 \setlength{\cftsecindent}{0em}
328 \setlength{\cftsecnumwidth}{1.5em}
329 \newcommand{\cftsecfont}{\bfseries}
330 \newcommand{\cftsecleader}{\bfseries\cftdotfill{\cftsecdotsep}}
331 \newcommand{\cftsecdotsep}{\cftnodots}
332 \newcommand{\cftsecpagefont}{\bfseries}
334 \newcommand{\cftsecafterpnum}{}
335 \newcommand{\cftsecfillnum}[1]{%
336 {\cftsecleader}\nobreak
337 \hb@xt@\@pnumwidth{\hfil\cftsecpagefont #1}\cftsecafterpnum\par}
339 \renewcommand*{\l@subsection}[2]{%
340 \ifnum \c@tocdepth >\@ne
341 \vskip \cftbeforesubsecskip
342 {\leftskip \cftsubsecindent\relax
343 \rightskip \@tocrmarg
344 \parfillskip -\rightskip
345 \parindent \cftsubsecindent\relax\@afterindenttrue
348 \@tempdima \cftsubsecnumwidth\relax
349 \let\@cftbsnum \cftsubsecpresnum
350 \let\@cftasnum \cftsubsecaftersnum
351 \let\@cftasnumb \cftsubsecaftersnumb
352 \advance\leftskip \@tempdima \null\nobreak\hskip -\leftskip
353 {\cftsubsecfont #1}\nobreak
354 \cftsubsecfillnum{#2}}%
356 \newlength{\cftbeforesubsecskip}
357 \setlength{\cftbeforesubsecskip}{\z@ \@plus.2\p@}
358 \newlength{\cftsubsecindent}
359 \newlength{\cftsubsecnumwidth}
361 \setlength{\cftsubsecindent}{3.8em}
362 \setlength{\cftsubsecnumwidth}{3.2em}
364 \setlength{\cftsubsecindent}{1.5em}
365 \setlength{\cftsubsecnumwidth}{2.3em}
367 \newcommand{\cftsubsecfont}{\normalfont}
368 \newcommand{\cftsubsecpresnum}{}
369 \newcommand{\cftsubsecaftersnum}{}
370 \newcommand{\cftsubsecaftersnumb}{}
371 \newcommand{\cftsubsecleader}{\normalfont\cftdotfill{\cftsubsecdotsep}}
372 \newcommand{\cftsubsecdotsep}{\cftdotsep}
373 \newcommand{\cftsubsecpagefont}{\normalfont}
374 \newcommand{\cftsubsecafterpnum}{}
375 \newcommand{\cftsubsecfillnum}[1]{%
376 {\cftsubsecleader}\nobreak
377 \hb@xt@\@pnumwidth{\hfil\cftsubsecpagefont #1}\cftsubsecafterpnum\par}
379 \renewcommand*{\l@subsubsection}[2]{%
380 \ifnum \c@tocdepth >\tw@
381 \vskip \cftbeforesubsubsecskip
382 {\leftskip \cftsubsubsecindent\relax
383 \rightskip \@tocrmarg
384 \parfillskip -\rightskip
385 \parindent \cftsubsubsecindent\relax\@afterindenttrue
388 \@tempdima \cftsubsubsecnumwidth\relax
389 \let\@cftbsnum \cftsubsubsecpresnum
390 \let\@cftasnum \cftsubsubsecaftersnum
391 \let\@cftasnumb \cftsubsubsecaftersnumb
392 \advance\leftskip \@tempdima \null\nobreak\hskip -\leftskip
393 {\cftsubsubsecfont #1}\nobreak
394 \cftsubsubsecfillnum{#2}}%
396 \newlength{\cftbeforesubsubsecskip}
397 \setlength{\cftbeforesubsubsecskip}{\z@ \@plus.2\p@}
398 \newlength{\cftsubsubsecindent}
399 \newlength{\cftsubsubsecnumwidth}
401 \setlength{\cftsubsubsecindent}{7.0em}
402 \setlength{\cftsubsubsecnumwidth}{4.1em}
404 \setlength{\cftsubsubsecindent}{3.8em}
405 \setlength{\cftsubsubsecnumwidth}{3.2em}
407 \newcommand{\cftsubsubsecfont}{\normalfont}
408 \newcommand{\cftsubsubsecpresnum}{}
409 \newcommand{\cftsubsubsecaftersnum}{}
410 \newcommand{\cftsubsubsecaftersnumb}{}
411 \newcommand{\cftsubsubsecleader}{\normalfont\cftdotfill{\cftsubsubsecdotsep}}
412 \newcommand{\cftsubsubsecdotsep}{\cftdotsep}
413 \newcommand{\cftsubsubsecpagefont}{\normalfont}
414 \newcommand{\cftsubsubsecafterpnum}{}
415 \newcommand{\cftsubsubsecfillnum}[1]{%
416 {\cftsubsubsecleader}\nobreak
417 \hb@xt@\@pnumwidth{\hfil\cftsubsubsecpagefont #1}\cftsubsubsecafterpnum\par}
419 \renewcommand*{\l@paragraph}[2]{%
420 \ifnum \c@tocdepth >3\relax
421 \vskip \cftbeforeparaskip
422 {\leftskip \cftparaindent\relax
423 \rightskip \@tocrmarg
424 \parfillskip -\rightskip
425 \parindent \cftparaindent\relax\@afterindenttrue
428 \@tempdima \cftparanumwidth\relax
429 \let\@cftbsnum \cftparapresnum
430 \let\@cftasnum \cftparaaftersnum
431 \let\@cftasnumb \cftparaaftersnumb
432 \advance\leftskip \@tempdima \null\nobreak\hskip -\leftskip
433 {\cftparafont #1}\nobreak
434 \cftparafillnum{#2}}%
436 \newlength{\cftbeforeparaskip}
437 \setlength{\cftbeforeparaskip}{\z@ \@plus.2\p@}
438 \newlength{\cftparaindent}
439 \newlength{\cftparanumwidth}
441 \setlength{\cftparaindent}{10em}
442 \setlength{\cftparanumwidth}{5em}
444 \setlength{\cftparaindent}{7.0em}
445 \setlength{\cftparanumwidth}{4.1em}
447 \newcommand{\cftparafont}{\normalfont}
448 \newcommand{\cftparapresnum}{}
449 \newcommand{\cftparaaftersnum}{}
450 \newcommand{\cftparaaftersnumb}{}
451 \newcommand{\cftparaleader}{\normalfont\cftdotfill{\cftparadotsep}}
452 \newcommand{\cftparadotsep}{\cftdotsep}
453 \newcommand{\cftparapagefont}{\normalfont}
454 \newcommand{\cftparaafterpnum}{}
455 \newcommand{\cftparafillnum}[1]{%
456 {\cftparaleader}\nobreak
457 \hb@xt@\@pnumwidth{\hfil\cftparapagefont #1}\cftparaafterpnum\par}
459 \renewcommand*{\l@subparagraph}[2]{%
460 \ifnum \c@tocdepth >4\relax
461 \vskip \cftbeforesubparaskip
462 {\leftskip \cftsubparaindent\relax
463 \rightskip \@tocrmarg
464 \parfillskip -\rightskip
465 \parindent \cftsubparaindent\relax\@afterindenttrue
468 \@tempdima \cftsubparanumwidth\relax
469 \let\@cftbsnum \cftsubparapresnum
470 \let\@cftasnum \cftsubparaaftersnum
471 \let\@cftasnumb \cftsubparaaftersnumb
472 \advance\leftskip \@tempdima \null\nobreak\hskip -\leftskip
473 {\cftsubparafont #1}\nobreak
474 \cftsubparafillnum{#2}}%
476 \newlength{\cftbeforesubparaskip}
477 \setlength{\cftbeforesubparaskip}{\z@ \@plus.2\p@}
478 \newlength{\cftsubparaindent}
479 \newlength{\cftsubparanumwidth}
481 \setlength{\cftsubparaindent}{12em}
482 \setlength{\cftsubparanumwidth}{6em}
484 \setlength{\cftsubparaindent}{10em}
485 \setlength{\cftsubparanumwidth}{5em}
487 \newcommand{\cftsubparafont}{\normalfont}
488 \newcommand{\cftsubparapresnum}{}
489 \newcommand{\cftsubparaaftersnum}{}
490 \newcommand{\cftsubparaaftersnumb}{}
491 \newcommand{\cftsubparaleader}{\normalfont\cftdotfill{\cftsubparadotsep}}
492 \newcommand{\cftsubparadotsep}{\cftdotsep}
493 \newcommand{\cftsubparapagefont}{\normalfont}
494 \newcommand{\cftsubparaafterpnum}{}
495 \newcommand{\cftsubparafillnum}[1]{%
496 {\cftsubparaleader}\nobreak
497 \hb@xt@\@pnumwidth{\hfil\cftsubparapagefont #1}\cftsubparaafterpnum\par}
499 \newcommand{\@cftdobiblof}{%
503 \addcontentsline{toc}{chapter}{\listfigurename}
506 \addcontentsline{toc}{\@tocextra}{\listfigurename}
512 \renewcommand{\listoffigures}{%
516 \parindent\z@ \parskip\cftparskip
527 \newcommand{\@cftmakeloftitle}{%
528 \addpenalty\@secpenalty
530 \vspace*{\cftbeforeloftitleskip}
532 \vspace{\cftbeforeloftitleskip}
535 {\interlinepenalty\@M
536 {\cftloftitlefont\listfigurename}{\cftafterloftitle}
539 \vskip \cftafterloftitleskip
542 \newlength{\cftbeforeloftitleskip}
543 \newlength{\cftafterloftitleskip}
545 \setlength{\cftbeforeloftitleskip}{50pt}
546 \setlength{\cftafterloftitleskip}{40pt}
548 \setlength{\cftbeforeloftitleskip}{3.5ex \@plus 1ex \@minus .2ex}
549 \setlength{\cftafterloftitleskip}{2.3ex \@plus.2ex}
552 \newcommand{\cftloftitlefont}{\normalfont\Huge\bfseries}
553 \if@cftkoma\renewcommand{\cftloftitlefont}{\size@chapter\sectfont}\fi
555 \newcommand{\cftloftitlefont}{\normalfont\Large\bfseries}
556 \if@cftkoma\renewcommand{\cftloftitlefont}{\size@section\sectfont}\fi
558 \newcommand{\cftafterloftitle}{}
560 \renewcommand*{\l@figure}[2]{%
561 \ifnum \c@lofdepth >\z@
562 \vskip \cftbeforefigskip
563 {\leftskip \cftfigindent\relax
564 \rightskip \@tocrmarg
565 \parfillskip -\rightskip
566 \parindent \cftfigindent\relax\@afterindenttrue
569 \@tempdima \cftfignumwidth\relax
570 \let\@cftbsnum \cftfigpresnum
571 \let\@cftasnum \cftfigaftersnum
572 \let\@cftasnumb \cftfigaftersnumb
573 \advance\leftskip \@tempdima \null\nobreak\hskip -\leftskip
574 {\cftfigfont #1}\nobreak
578 \newlength{\cftbeforefigskip}
579 \setlength{\cftbeforefigskip}{\z@ \@plus.2\p@}
580 \newlength{\cftfigindent}
581 \setlength{\cftfigindent}{1.5em}
582 \newlength{\cftfignumwidth}
583 \setlength{\cftfignumwidth}{2.3em}
584 \newcommand{\cftfigfont}{\normalfont}
585 \newcommand{\cftfigpresnum}{}
586 \newcommand{\cftfigaftersnum}{}
587 \newcommand{\cftfigaftersnumb}{}
588 \newcommand{\cftfigleader}{\normalfont\cftdotfill{\cftfigdotsep}}
589 \newcommand{\cftfigdotsep}{\cftdotsep}
590 \newcommand{\cftfigpagefont}{\normalfont}
591 \newcommand{\cftfigafterpnum}{}
592 \newcommand{\cftfigfillnum}[1]{%
593 {\cftfigleader}\nobreak
594 \hb@xt@\@pnumwidth{\hfil\cftfigpagefont #1}\cftfigafterpnum\par}
596 \if@cftsubfigopt\else
597 \newcounter{lofdepth}\setcounter{lofdepth}{1}
598 \newcounter{lotdepth}\setcounter{lotdepth}{1}
601 \newcommand{\@cftdobiblot}{%
605 \addcontentsline{toc}{chapter}{\listtablename}
608 \addcontentsline{toc}{\@tocextra}{\listtablename}
614 \renewcommand{\listoftables}{%
618 \parindent\z@ \parskip\cftparskip
629 \newcommand{\@cftmakelottitle}{%
630 \addpenalty\@secpenalty
632 \vspace*{\cftbeforelottitleskip}
634 \vspace{\cftbeforelottitleskip}
637 {\interlinepenalty\@M
638 {\cftlottitlefont\listtablename}{\cftafterlottitle}
641 \vskip \cftafterlottitleskip
644 \newlength{\cftbeforelottitleskip}
645 \newlength{\cftafterlottitleskip}
647 \setlength{\cftbeforelottitleskip}{50pt}
648 \setlength{\cftafterlottitleskip}{40pt}
650 \setlength{\cftbeforelottitleskip}{3.5ex \@plus 1ex \@minus .2ex}
651 \setlength{\cftafterlottitleskip}{2.3ex \@plus.2ex}
654 \newcommand{\cftlottitlefont}{\normalfont\Huge\bfseries}
655 \if@cftkoma\renewcommand{\cftlottitlefont}{\size@chapter\sectfont}\fi
657 \newcommand{\cftlottitlefont}{\normalfont\Large\bfseries}
658 \if@cftkoma\renewcommand{\cftlottitlefont}{\size@section\sectfont}\fi
660 \newcommand{\cftafterlottitle}{}
662 \renewcommand*{\l@table}[2]{%
663 \ifnum\c@lotdepth >\z@
664 \vskip \cftbeforetabskip
665 {\leftskip \cfttabindent\relax
666 \rightskip \@tocrmarg
667 \parfillskip -\rightskip
668 \parindent \cfttabindent\relax\@afterindenttrue
671 \@tempdima \cfttabnumwidth\relax
672 \let\@cftbsnum \cfttabpresnum
673 \let\@cftasnum \cfttabaftersnum
674 \let\@cftasnumb \cfttabaftersnumb
675 \advance\leftskip \@tempdima \null\nobreak\hskip -\leftskip
676 {\cfttabfont #1}\nobreak
680 \newlength{\cftbeforetabskip}
681 \setlength{\cftbeforetabskip}{\z@ \@plus.2\p@}
682 \newlength{\cfttabindent}
683 \setlength{\cfttabindent}{1.5em}
684 \newlength{\cfttabnumwidth}
685 \setlength{\cfttabnumwidth}{2.3em}
686 \newcommand{\cfttabfont}{\normalfont}
687 \newcommand{\cfttabpresnum}{}
688 \newcommand{\cfttabaftersnum}{}
689 \newcommand{\cfttabaftersnumb}{}
690 \newcommand{\cfttableader}{\normalfont\cftdotfill{\cfttabdotsep}}
691 \newcommand{\cfttabdotsep}{\cftdotsep}
692 \newcommand{\cfttabpagefont}{\normalfont}
693 \newcommand{\cfttabafterpnum}{}
694 \newcommand{\cfttabfillnum}[1]{%
695 {\cfttableader}\nobreak
696 \hb@xt@\@pnumwidth{\hfil\cfttabpagefont #1}\cfttabafterpnum\par}
698 \newcommand{\@cftl@subfig}{%
699 \renewcommand*{\l@subfigure}[2]{%
700 \ifnum \c@lofdepth > \toclevel@subfigure
701 \vskip \cftbeforesubfigskip
702 {\leftskip \cftsubfigindent\relax
703 \rightskip \@tocrmarg
704 \parfillskip -\rightskip
705 \parindent \cftsubfigindent\relax\@afterindenttrue
708 \@tempdima \cftsubfignumwidth\relax
709 \let\@cftbsnum \cftsubfigpresnum
710 \let\@cftasnum \cftsubfigaftersnum
711 \let\@cftasnumb \cftsubfigaftersnumb
712 \advance\leftskip \@tempdima \null\nobreak\hskip -\leftskip
713 {\cftsubfigfont ##1}\nobreak
714 \cftsubfigfillnum{##2}}%
719 \newcommand{\@cftsetsubfig}{%
720 \newlength{\cftbeforesubfigskip}
721 \setlength{\cftbeforesubfigskip}{\z@ \@plus.2\p@}
722 \newlength{\cftsubfigindent}
723 \setlength{\cftsubfigindent}{3.8em}
724 \newlength{\cftsubfignumwidth}
725 \setlength{\cftsubfignumwidth}{2.5em}
726 \newcommand{\cftsubfigfont}{\normalfont}
727 \newcommand{\cftsubfigpresnum}{}
728 \newcommand{\cftsubfigaftersnum}{}
729 \newcommand{\cftsubfigaftersnumb}{}
730 \newcommand{\cftsubfigleader}{\normalfont\cftdotfill{\cftsubtabdotsep}}
731 \newcommand{\cftsubfigdotsep}{\cftdotsep}
732 \newcommand{\cftsubfigpagefont}{\normalfont}
733 \newcommand{\cftsubfigafterpnum}{}
734 \providecommand{\toclevel@subfigure}{1}
735 \newcommand{\cftsubfigfillnum}[1]{%
736 {\cftsubfigleader}\nobreak
737 \hb@xt@\@pnumwidth{\hfil\cftsubfigpagefont ##1}\cftsubfigafterpnum\par}
740 \newcommand{\@cftl@subtab}{%
741 \renewcommand*{\l@subtable}[2]{%
742 \ifnum \c@lotdepth > \toclevel@subtable
743 \vskip \cftbeforesubtabskip
744 {\leftskip \cftsubtabindent\relax
745 \rightskip \@tocrmarg
746 \parfillskip -\rightskip
747 \parindent \cftsubtabindent\relax\@afterindenttrue
750 \@tempdima \cftsubtabnumwidth\relax
751 \let\@cftbsnum \cftsubtabpresnum
752 \let\@cftasnum \cftsubtabaftersnum
753 \let\@cftasnumb \cftsubtabaftersnumb
754 \advance\leftskip \@tempdima \null\nobreak\hskip -\leftskip
755 {\cftsubtabfont ##1}\nobreak
756 \cftsubtabfillnum{##2}}%
760 \newcommand{\@cftsetsubtab}{%
761 \newlength{\cftbeforesubtabskip}
762 \setlength{\cftbeforesubtabskip}{\z@ \@plus.2\p@}
763 \newlength{\cftsubtabindent}
764 \setlength{\cftsubtabindent}{3.8em}
765 \newlength{\cftsubtabnumwidth}
766 \setlength{\cftsubtabnumwidth}{2.5em}
767 \newcommand{\cftsubtabfont}{\normalfont}
768 \newcommand{\cftsubtabpresnum}{}
769 \newcommand{\cftsubtabaftersnum}{}
770 \newcommand{\cftsubtabaftersnumb}{}
771 \newcommand{\cftsubtableader}{\normalfont\cftdotfill{\cftsubtabdotsep}}
772 \newcommand{\cftsubtabdotsep}{\cftdotsep}
773 \newcommand{\cftsubtabpagefont}{\normalfont}
774 \newcommand{\cftsubtabafterpnum}{}
775 \providecommand{\toclevel@subtable}{1}
776 \newcommand{\cftsubtabfillnum}[1]{%
777 {\cftsubtableader}\nobreak
778 \hb@xt@\@pnumwidth{\hfil\cftsubtabpagefont ##1}\cftsubtabafterpnum\par}
783 \@cftsetsubfig\@cftsetsubtab
784 \AtBeginDocument{\@cftl@subfig\@cftl@subtab}
786 %% \AtBeginDocument{\if@cftsubfigopt
787 %% \@cftsetsubfig\@cftsetsubtab
788 %% \@cftl@subfig\@cftl@subtab
791 \newcommand{\newlistentry}[4][\@empty]{%
792 \@ifundefined{c@#2}{% check & set the counter
796 \@ifundefined{c@#1}{\PackageWarning{tocloft}%
797 {#1 has no counter for use as a `within'}
799 {\newcounter{#2}[#1]%
800 \expandafter\edef\csname the#2\endcsname{%
801 \expandafter\noexpand\csname the#1\endcsname.\noexpand\arabic{#2}}}
805 {\PackageError{tocloft}{#2 has been previously defined}{\@eha}}
807 \@namedef{l@#2}##1##2{%
808 \ifnum \@nameuse{c@#3depth} > #4\relax
809 \vskip \@nameuse{cftbefore#2skip}
810 {\leftskip \@nameuse{cft#2indent}\relax
811 \rightskip \@tocrmarg
812 \parfillskip -\rightskip
813 \parindent \@nameuse{cft#2indent}\relax\@afterindenttrue
816 \@tempdima \@nameuse{cft#2numwidth}\relax
817 \expandafter\let\expandafter\@cftbsnum\csname cft#2presnum\endcsname
818 \expandafter\let\expandafter\@cftasnum\csname cft#2aftersnum\endcsname
819 \expandafter\let\expandafter\@cftasnumb\csname cft#2aftersnumb\endcsname
820 \advance\leftskip\@tempdima \null\nobreak\hskip -\leftskip
821 {\@nameuse{cft#2font}##1}\nobreak
822 \@nameuse{cft#2fillnum}{##2}}%
826 \expandafter\newlength\csname cftbefore#2skip\endcsname
827 \setlength{\@nameuse{cftbefore#2skip}}{\z@ \@plus .2\p@}
828 \expandafter\newlength\csname cft#2indent\endcsname
829 \expandafter\newlength\csname cft#2numwidth\endcsname
831 \setlength{\@nameuse{cft#2indent}}{0em}
832 \setlength{\@nameuse{cft#2numwidth}}{1.5em}
834 \setlength{\@nameuse{cft#2indent}}{1.5em}
835 \setlength{\@nameuse{cft#2numwidth}}{2.3em}
837 \setlength{\@nameuse{cft#2indent}}{3.8em}
838 \setlength{\@nameuse{cft#2numwidth}}{3.2em}
840 \setlength{\@nameuse{cft#2indent}}{7.0em}
841 \setlength{\@nameuse{cft#2numwidth}}{4.1em}
842 \else % anything else
843 \setlength{\@nameuse{cft#2indent}}{10.0em}
844 \setlength{\@nameuse{cft#2numwidth}}{5.0em}
846 \@namedef{cft#2font}{\normalfont}
847 \@namedef{cft#2presnum}{}
848 \@namedef{cft#2aftersnum}{}
849 \@namedef{cft#2aftersnumb}{}
850 \@namedef{cft#2dotsep}{\cftdotsep}
851 \@namedef{cft#2leader}{\normalfont\cftdotfill{\@nameuse{cft#2dotsep}}}
852 \@namedef{cft#2pagefont}{\normalfont}
853 \@namedef{cft#2afterpnum}{}
854 \@namedef{toclevel@#2}{#4}
855 \@namedef{cft#2fillnum}##1{%
856 {\@nameuse{cft#2leader}}\nobreak
857 \hb@xt@\@pnumwidth{\hfil\@nameuse{cft#2pagefont}##1}\@nameuse{cft#2afterpnum}\par}
858 } % end \newlistentry
860 \newcommand{\newlistof}[4][\@empty]{%
862 \newlistentry{#2}{#3}{0}
864 \newlistentry[#1]{#2}{#3}{0}
867 \@namedef{ext@#3}{#3}
869 \setcounter{#3depth}{1}
872 \@namedef{cftmark#3}{%
875 \@namedef{cftmark#3}{%
876 \@mkboth{\MakeUppercase{#4}}{\MakeUppercase{#4}}}
879 \@namedef{listof#2}{%
890 \@namedef{listof#2}{%
894 \parindent\z@ \parskip\cftparskip
895 \@nameuse{@cftmake#3title}
901 \@namedef{@cftmake#3title}{%
902 \addpenalty\@secpenalty
904 \vspace*{\@nameuse{cftbefore#3titleskip}}
906 \vspace{\@nameuse{cftbefore#3titleskip}}
909 {\interlinepenalty\@M
910 {\@nameuse{cft#3titlefont}#4}{\@nameuse{cftafter#3title}}
913 \vskip \@nameuse{cftafter#3titleskip}
916 \expandafter\newlength\csname cftbefore#3titleskip\endcsname
917 \expandafter\newlength\csname cftafter#3titleskip\endcsname
919 \setlength{\@nameuse{cftbefore#3titleskip}}{50pt}
920 \setlength{\@nameuse{cftafter#3titleskip}}{40pt}
922 \@namedef{cft#3titlefont}{\size@chapter\sectfont}
924 \@namedef{cft#3titlefont}{\normalfont\Huge\bfseries}
927 \setlength{\@nameuse{cftbefore#3titleskip}}{3.5ex \@plus 1ex \@minus .2ex}
928 \setlength{\@nameuse{cftafter#3titleskip}}{2.3ex \@plus .2ex}
930 \@namedef{cft#3titlefont}{\size@section\sectfont}
932 \@namedef{cft#3titlefont}{\normalfont\Huge\bfseries}
935 \@namedef{cftafter#3title}{}
938 \newcommand{\cftsetindents}[3]{%
940 \ifx\@cftemp\cftchapname
941 \@cftsetindents{chap}{#2}{#3}
943 \ifx\@cftemp\cftsecname \@cftsetindents{sec}{#2}{#3}
945 \ifx\@cftemp\cftsubsecname \@cftsetindents{subsec}{#2}{#3}
947 \ifx\@cftemp\cftsubsubsecname \@cftsetindents{subsubsec}{#2}{#3}
949 \ifx\@cftemp\cftparaname \@cftsetindents{para}{#2}{#3}
951 \ifx\@cftemp\cftsubparaname \@cftsetindents{subpara}{#2}{#3}
953 \ifx\@cftemp\cftfigname \@cftsetindents{fig}{#2}{#3}
955 \ifx\@cftemp\cftsubfigname \@cftsetindents{subfig}{#2}{#3}
957 \ifx\@cftemp\cfttabname \@cftsetindents{tab}{#2}{#3}
959 \ifx\@cftemp\cftsubtabname \@cftsetindents{subtab}{#2}{#3}
961 \@cftsetindents{#1}{#2}{#3}
974 \newcommand{\@cftsetindents}[3]{%
975 \setlength{\@nameuse{cft#1indent}}{#2}
976 \setlength{\@nameuse{cft#1numwidth}}{#3}
979 \newcommand{\@cftpnumoff}[1]{%
980 \@namedef{cft#1fillnum}##1{%
981 \cftparfillskip\@nameuse{cft#1afterpnum}\par}}
983 \newcommand*{\cftchapname}{chapter}
984 \newcommand*{\cftsecname}{section}
985 \newcommand*{\cftsubsecname}{subsection}
986 \newcommand*{\cftsubsubsecname}{subsubsection}
987 \newcommand*{\cftparaname}{paragraph}
988 \newcommand*{\cftsubparaname}{subparagraph}
989 \newcommand*{\cftfigname}{figure}
990 \newcommand*{\cftsubfigname}{subfigure}
991 \newcommand*{\cfttabname}{table}
992 \newcommand*{\cftsubtabname}{subtable}
994 \DeclareRobustCommand{\cftpagenumbersoff}[1]{%
996 \ifx\@cftemp\cftchapname
999 \ifx\@cftemp\cftsecname \@cftpnumoff{sec}
1001 \ifx\@cftemp\cftsubsecname \@cftpnumoff{subsec}
1003 \ifx\@cftemp\cftsubsubsecname \@cftpnumoff{subsubsec}
1005 \ifx\@cftemp\cftparaname \@cftpnumoff{para}
1007 \ifx\@cftemp\cftsubparaname \@cftpnumoff{subpara}
1009 \ifx\@cftemp\cftfigname \@cftpnumoff{fig}
1011 \ifx\@cftemp\cftsubfigname \@cftpnumoff{subfig}
1013 \ifx\@cftemp\cfttabname \@cftpnumoff{tab}
1015 \ifx\@cftemp\cftsubtabname \@cftpnumoff{subtab}
1030 \DeclareRobustCommand{\cftpagenumberson}[1]{%
1032 \ifx\@cftemp\cftchapname
1035 \ifx\@cftemp\cftsecname \@cftpnumon{sec}
1037 \ifx\@cftemp\cftsubsecname \@cftpnumon{subsec}
1039 \ifx\@cftemp\cftsubsubsecname \@cftpnumon{subsubsec}
1041 \ifx\@cftemp\cftparaname \@cftpnumon{para}
1043 \ifx\@cftemp\cftsubparaname \@cftpnumon{subpara}
1045 \ifx\@cftemp\cftfigname \@cftpnumon{fig}
1047 \ifx\@cftemp\cftsubfigname \@cftpnumon{subfig}
1049 \ifx\@cftemp\cfttabname \@cftpnumon{tab}
1051 \ifx\@cftemp\cftsubtabname \@cftpnumon{subtab}
1066 \newcommand{\@cftpnumon}[1]{%
1067 \@namedef{cft#1fillnum}##1{%
1068 {\@nameuse{cft#1leader}}\nobreak
1069 \hb@xt@\@pnumwidth{\hfil\@nameuse{cft#1pagefont}##1}\@nameuse{cft#1afterpnum}\par}}
1071 \newcommand{\cftchapterprecis}[1]{%
1072 \cftchapterprecishere{#1}
1073 \cftchapterprecistoc{#1}}
1074 \newcommand{\cftchapterprecishere}[1]{%
1075 \vspace*{-2\baselineskip}
1076 \begin{quote}\textit{#1}\end{quote}}
1077 \newcommand{\cftchapterprecistoc}[1]{\addtocontents{toc}{%
1078 {\leftskip \cftchapindent\relax
1079 \advance\leftskip \cftchapnumwidth\relax
1080 \rightskip \@tocrmarg\relax
1081 \textit{#1}\protect\par}}}
1083 \newcommand{\cftlocalchange}[3]{%
1084 \addtocontents{#1}{\protect\cftsetpnumwidth{#2} \protect\cftsetrmarg{#3}}}
1085 \newcommand{\cftaddtitleline}[4]{\addtocontents{#1}{%
1086 \protect\contentsline{#2}{#3}{#4}}}
1087 \newcommand{\cftaddnumtitleline}[5]{\addtocontents{#1}{%
1088 \protect\contentsline{#2}{\protect\numberline{#3}#4}{#5}}}
1090 \@ifpackageloaded{hyperref}{%
1091 \renewcommand{\cftaddtitleline}[4]{\addtocontents{#1}{%
1092 \protect\contentsline{#2}{#3}{#4}{\@currentHref}}}
1093 \renewcommand{\cftaddnumtitleline}[5]{\addtocontents{#1}{%
1094 \protect\contentsline{#2}{\protect\numberline{#3}#4}{#5}{\@currentHref}}}
1100 %% End of file `tocloft.sty'.