5

I am writing a presentation in beamer, and I would like citations to appear at the foot of the slide it appears on, along with on a final references page.

In a normal article, I would use abbreviated alphabetic citations that link to a references page at the end, and on this page will be a two column bibliography that contains, in each row, an abbreviated alphabetic citation in the first column along with the corresponding full citation in the second column.

I would like to adapt this style to the beamer class. To do so, I would like to replace standard footnote marks with these abbreviated alphabetic citations. This would mean that when the footnote is first called, and in all subsequent references to the footnote, the abbreviated alphabetic citation appears in place of the expected footmark. I have attached a mock up of how this would look.

enter image description here

This was achieved by brute force defining a single footnote mark. Below is the LaTeX code of how I achieved this example.

\documentclass{beamer}
\usepackage{filecontents}
\begin{filecontents}{\jobname.bib}
@book{James,
  title={The representation theory of the symmetric groups},
  author={James, Gordon Douglas},
  volume={682},
  year={2006},
  publisher={Springer}
}
\end{filecontents}

\usepackage[style=alphabetic,backend=biber]{biblatex}
\bibliography{\jobname.bib}

\renewcommand{\thefootnote}{\fnsymbol{footnote}}
\makeatletter
\def\@fnsymbol#1{%
   \ifcase#1\or {\cite{James}}\fi
}%
\def\@makefnmark{\hbox{{{\usebeamercolor[fg]{footnote mark}\usebeamerfont*{footnote mark} \@thefnmark}}}}
\def\@makefntext#1{%
    \def\insertfootnotetext{\hphantom{\cite{James}}#1}%
    \def\insertfootnotemark{\@makefnmark}%
    \usebeamertemplate***{footnote}}    
\makeatother

\begin{document}
\begin{frame}{Frame Title}
\footnote{\fullcite{James}}
\end{frame}

\begin{frame}{Frame Title}
\printbibliography 
\end{frame}

\end{document}

This is a terrible way to do it since any further footnotes will cause an error as I have ran out of defined footnote symbols. I could manually define more footnote symbols, but then I would be limited to at most 9 footnotes (this is the limit for the number of distinct footnote symbols). This would also require me to manually define the order of my footnote symbols to match the order of the footnote citations. Moreover, it rules out the ability to use footnotes for anything other than footnote citations. I also had to manually define extra horizontal spacing at the start of \insertfootnotetext since the width of these appreciated alphabetic citations exceeds the width of the column allocated for footnote marks in the standard footnote environment.

I would be grateful if someone could help guide me towards a "proper" way of achieving this result.

4
  • 1
    Welcome to TeX.SE!
    – Mensch
    Oct 7, 2022 at 13:20
  • Thank you for your welcome! Oct 7, 2022 at 13:20
  • 1
    Just a thought, with style=numeric and \footfullcite{James} there is a solution to redefine the footnotemarks, which is possibly extendable to alphabetic citations tex.stackexchange.com/questions/308038/… Oct 13, 2022 at 13:10
  • 1
    @DominikKern Thank you for the suggestion! The solution to the question that you linked to is is actually what I modelled my brute force solution on. I have been having difficulty with making that method more robust for the reasons mentioned in my original post. Oct 14, 2022 at 14:05

1 Answer 1

3

I would create a new command using \cite and \fullcite combined, resetting the footnote number:

\documentclass{beamer}
\usepackage{filecontents}
\begin{filecontents}{\jobname.bib}
@book{James,
  title={The representation theory of the symmetric groups},
  author={James, Gordon Douglas},
  volume={682},
  year={2006},
  publisher={Springer}
}
@book{booka,
  title={Another book},
  author={van Duck, Paulinho},
  volume={10},
  year={2020},
  publisher={Quack}
}
\end{filecontents}

\usepackage[style=alphabetic,backend=biber]{biblatex}
\bibliography{\jobname.bib}

\addtobeamertemplate{footnote}{\hskip -1.5em}{}
\newcounter{mycounter}

\newrobustcmd*{\myfootfullcite}[1]{%
      {% this parenthesis is needed to create a group
      \cite{#1}%
      \renewcommand\thefootnote{}%
      \footnote{%
          \setcounter{mycounter}{\value{footnote}}%
          \sbox0{\textsuperscript{\the\value{mycounter}}}%
          \hspace{-\the\wd0}%
          \cite{#1}~\fullcite{#1}}%
          \addtocounter{footnote}{-1}%
      }%
    }
      
\begin{document}
\begin{frame}{Frame Title}
\myfootfullcite{James}
An ordinary footnote\footnote{A footnote.}

Another citation \myfootfullcite{booka}
Another footnote\footnote{Another footnote.}
\end{frame}

\begin{frame}{Bibliography}
\printbibliography 
\end{frame}
\end{document}

enter image description here

enter image description here

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .