12

When I compile my document I get the following warning Command \@makecol has changed.

TexStudio points to the file footmisc.sty. Of course I've tried to install its latest version (2011/06/06 v5.5b) but still have the problem :(

MWE:

\documentclass[12pt,a4paper]{article}
\usepackage[utf8]{inputenc}

\usepackage{fancyhdr}
\usepackage[bottom,hang]{footmisc}
\usepackage[T1]{fontenc}

\begin{document}
mediante DHCP\footnote{Se puede obtener más información sobre esta utilidad en el documento anexo Guía de usuario de Xen: Instalación, configuración y primeros pasos}

\end{document}

I've seen that by reordering the fancyhdr and footmisc sentences the warning doesn't occur, but still not sure if with that there's no error or it's just that fancyhdr doesn't check well.

19

footmisc performs a patch on \@makecol. However, before doing so, it checks to make sure that its definition conforms to what it looked like at the time of writing footmisc. The package implementation (section 5.1 The output routine, p 12) mentions:

First, we ensure that \@makecol is as expected from the time at which these macros were written: since we're going to patch it, we had better be sure that we're patching the right thing. (There was a minuscule change to the definition 1999, but this doesn't as far as I can tell make any difference to the semantics of the definition we base our patch on.)

And indeed, fancyhdr updates the definition:

\let\latex@makecol\@makecol
\def\@makecol{\ifvoid\footins\footnotetrue\else\footnotefalse\fi
\let\topfloat\@toplist\let\botfloat\@botlist\latex@makecol}

to prepend it with some information. So, switch the load order and you'll be fine, allowing footmisc to perform the necessary patches before fancyhdr updates its definition again:

\usepackage[..]{footmisc}% http://ctan.org/pkg/footmisc
\usepackage{fancyhdr}% http://ctan.org/pkg/fancyhdr
  • Ok, thanks :) . Maybe the developers should change the warning in footmisc like "if you want to use package fancyhdr use it after this one" It would be clearer – Álvaro Aug 24 '13 at 0:55
  • @Álvaro: Yes, or include it as a known issue as part of the documentation. That's typically how these things are handled. I've emailed the footmisc package author. – Werner Aug 24 '13 at 1:04
  • @Werner -- when you cut-and-paste something from a source prepared using computer modern, the f-ligatures are lost. i've just restored them, but maybe you should check next time. – barbara beeton Aug 24 '13 at 12:25
  • 1
    I also had this error occur but with the arrayparboxrestore command and the ragged2e package. Your solution of moving the package definition earlier in the document worked too. – MasterHD Mar 14 '15 at 17:14

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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