# Typeset cftchapfont as uppercase

I'm trying to put the whole `cftchapfont` as uppercase.

``````\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?

-

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`.

-

I actually ideally wanted small caps, but the font didn't have any. What I did was:

• edit the TTF in fontforge;
• add small caps from fontforge;
• save new font as OTF;
• load font with `Letters=SmallCap` in fontspec.

and it did what I wanted.

-