I'm using the book class and I want to renew its existing command \@makechapterhead. The original command is shown on p.32 of this document. In particular, I want to change the spacing in line 811 from 50 to 30, so I did the following

        {\parindent \z@ \raggedright \normalfont
     \ifnum \c@secnumdepth >\m@ne
 ⟨book⟩     \if@mainmatter
         \huge\bfseries \@chapapp\space \thechapter
         \vskip 20\p@
⟨book⟩    \fi
      \Huge \bfseries #1\par\nobreak
      \vskip 40\p@

But I got an error saying illegal parameter number in definition of \@makechapterhead. How do I fix this?


  • did you remove the <book> tag in your redefinition? – Yan Zhou Jan 23 '17 at 2:06

You can add in the preamble of your document:


The original definition of \@makechapterhead is backup-ed in \@makechapterhead@ori. Next, a negative vertical of 20pt is added and then the original \@makechapterhead is applied. As a result, you got a vertical space of 50-20 = 30pt, as desired.

| improve this answer | |

Not the answer you're looking for? Browse other questions tagged or ask your own question.