# Broken footnotes in psp.cls

When I write an article using the psp class for the journal Mathematical Proceedings of the Cambridge Mathematical Society, there's something broken with the footnote markers in the text. The footnote markers appear, but no extra space is inserted before the next word; in other words, the superscript number just appears plonked in the space one would have without a footnote marker.

I've had a skim through psp.cls for the word 'footnote', and I can't see, with my completely inexperienced eye, anything that would scream "I'm breaking footnotes!", though there is some redefinition and redefining back going on involving \thefootnote.

MWE:

\NeedsTeXFormat{LaTeX2e}  %still breaks without this
\documentclass{psp}
\begin{document}
\title{Title}
\author{A.N.AUTHOR}
\maketitle

A bunch\footnote{blah} of text.\footnote{foo} Another sentence.

\end{document}


• Look at the definition to \@makefnmark. – jon Jan 16 '14 at 5:26
• @jon Did I mention my completely inexperienced eye? I couldn't tell what that bit of code did, I just guess by your comment that it is somehow wrong. – David Roberts Jan 16 '14 at 5:36
• Sorry, I shouldn't even be awake still, let alone finding new problems to work on. Anyway, a quick and dirty workaround would be to use LaTeX' original definition for \@makefnmark -- which can be done by adding \makeatletter \def\@makefnmark{\hbox{\@textsuperscript{\normalfont\@thefnmark}}} \makeatother to your .tex file -- but that might not interact nicely with their goal of centering short footnotes based on the longest short footnote (see in the definition of \makefntext). – jon Jan 16 '14 at 5:53

psp.cls redefines \@makefnmark to set the footnote marker in a zero-width box:

The above was set using:

A bunch\footnote{blah} of text.\footnote{foo} Another sentence.

A bunch of text. Another sentence.


Here is the redefinition of \@makefnmark:

\renewcommand\@makefnmark{\hb@xt@ \z@{%
\ifnumfootnotes $^{\@thefnmark}$\else $\@thefnmark$\fi\hss}%
}


compared to the original in latex.ltx:

\def\@makefnmark{\hbox{\@textsuperscript{\normalfont\@thefnmark}}}


You can store and restore the original \@makefnmark:

\makeatletter
\let\old@makefnmark\@makefnmark% Store original \@makefnmark
\makeatother
\documentclass{psp}
\makeatletter
\let\@makefnmark\old@makefnmark% Restore original \@makefnmark
\makeatother
\begin{document}
\title{Title}
\author{A.N.AUTHOR}

• What is the advantage of storing/restoring? If I had to 'store' any of the definitions, I'd at least want to store the (admittedly weird) psp.cls definition in case I needed it again. Also, is this zero-width box for their centring trick for non '\fulloutfootnote's..? – jon Jan 16 '14 at 6:07
• @jon: Admittedly it would be equally weird to have multiple formatting for footnotes, so one would use either one or the other. \@makefnmark's usage seems to be isolated to the textual usage, and not the actual footnotes, as far as I can tell. – Werner Jan 16 '14 at 6:21
• @barbara Actually, I had something like (see e.g. \cite{ref}\footnote{text}), and the footnote mark overprinted the closing parenthesis, so I already have a case. – David Roberts Jan 16 '14 at 21:06