[Tex/LaTex] Typeset cftchapfont as uppercase

capitalizationtable of contentstocloft

I'm trying to put the whole cftchapfont as uppercase using tocloft package.

\renewcommand\cftchapfont{\MakeUppercase}

does not work at all (it actually messes up everything), nor does:

\renewcommand\cftchappresnum{\MakeUppercase\chaptertitlename\;}

which only capitalizes \chaptertitlename, nor does:

\renewcommand\cftchappresnum{\MakeUppercase\chaptertitlename\;\MakeUppercase}

which only capitalizes the first letter of SNUM (and I've got words such as "premier" for the first chapter).

How can I make sure the whole thing is uppercase?

Best Answer

You have to patch the \@chapter command, which is responsible for writing the entries in the auxiliary files. The lines

\addcontentsline{toc}{chapter}{\protect\numberline{\thechapter}#1}

and

\addcontentsline{toc}{chapter}{#1}

should read with \MakeUppercase{#1} instead of #1.