2

I have a book wherein groupings of footnotes will use letters as marks (i.e., a, b, c, etc.). However, new groupings that start again will be common on a single page. Each grouping is numbered using a counter, and this counter is shown on the printed page. I would like the footnotes to appear normally inline, but I would like to attach the counter value to each "a" footnote in the footer.

\documentclass{book}

\newcounter{grouping}
\newcommand{\newGrouping}{\stepcounter{grouping}\textsuperscript{\arabic{grouping}}\setcounter{footnote}{0}}
\renewcommand*{\thefootnote}{\alph{footnote}}

\begin{document}

\newGrouping This is some example text.\footnote{First example footnote.}
Some more text\footnote{Second example footnote.} and yet more.\footnote{Third example footnote.}
\newGrouping Now with a new grouping,\footnote{First example footnote in second grouping.}
there is some ambiguity about which footnote\footnote{Second example footnote in second grouping.}
is intended.\footnote{Third example footnote in second grouping.}

\end{document}

What I would like is for the first "a" footnote to show as 1a at the bottom and the second to show as 2a. I tried to replace \renewcommand*{\thefootnote}{\alph{footnote}} with the following:

\renewcommand*{\thefootnote}{\ifnum\value{footnote}>1\alph{footnote}\else\arabic{\grouping}{\alph{footnote}\fi}

This did the opposite of what I intended. It left the bottom alone and added the grouping number inline.

I tried to attach an image, but it was not working. Here is the link: https://imgur.com/a/bNfOUN3

1
  • The manyfoot package provide footnotes using multiple formats. Not by groups, but by name; e.g. \footnoteA \footnoteB, ... – John Kormylo Mar 20 at 2:36
1

The footnote at the bottom of the page is typeset by the internal LaTeX command \@makefntext. In the book document class it's defined as:

\newcommand\@makefntext[1]{%
    \parindent 1em%
    \noindent
    \hb@xt@1.8em{\hss\@makefnmark}#1}

where \@makefnmark creates the actual footnote marker and is defined as:

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

We can't just redefine \@makefnmark because that gets used in both the footnote text at the bottom of the page and the marker in the body text so we have to make the change to \@makefntext instead.

\makeatletter
\renewcommand\@makefntext[1]{%
    \parindent 1em%
    \noindent
    \hb@xt@1.8em{\hss\hbox{\@textsuperscript{\normalfont\thegrouping\@thefnmark}}}#1}
\makeatother
1
  • This worked wonders. I suggested an edit (which evidently will need to be reviewed), because it seems you inadvertently changed \@thefnmark to \@thefntmark. I also found this did exactly what I wanted when I changed \thegrouping\@thefntmark to \ifnum\value{footnote}>1\@thefnmark\else\thegrouping\@thefnmark\fi. Accepting this answer now. – pokyCoder Mar 20 at 4:50

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.