2

I'm writing my thesis and I'm struggling with the correct choice of citation style.

I'm leaning towards alphabetic style, since I find that it's easy to read and makes it easy to recall what reference the citation refers to if it's a repeat, without checking the footnote (which, I think, is quite a distraction), or even worse the end of the paper (which is not so bad when reading a PDF where you can just click a hyperlink and then use a backref to go back, but it's a lot more of hassle when reading a printed document).

However, I would like it to be possible to add a footnote with a more verbose reference. So that when I have, say,

\autocite{AB12}

the output is [AB12] where cited, and in addition, something like

[AB12] Abelard and Baginsky, Bogus paper (2012)

appears in footnote. How can I accomplish that?

4
  • Would you mind preparing a short MWE? – moewe Mar 16 '14 at 17:17
  • @moewe: I can't really do that, since the point is, I don't know how to accomplish that. Or maybe I just don't understand what kind of example you're asking about? – tomasz Mar 16 '14 at 17:19
  • Well, you say you "lean towards alphabetic style". Does that mean you actually would like to use style=alphabetic? – moewe Mar 16 '14 at 17:22
  • @moewe: I don't really care, I might use a different style, but I would like the inline part of the citation to look like it does with the alphabetic style. – tomasz Mar 16 '14 at 17:23
2

In light of the comments, I have revised my answer, the old version is further down.

We first need to define a new wrapper for a marker-less footnote

\makeatletter
\newrobustcmd{\mkbibblfootnote}[1]{%
  \iftoggle{blx@footnote}
    {\blx@warning{Nested notes}%
     \addspace\mkbibparens{#1}}
    {\unspace
     \ifnum\blx@notetype=\tw@
       \expandafter\@firstoftwo
     \else
       \expandafter\@secondoftwo
     \fi
       {\csuse{blx@theendnote}{\protecting{\blxmkbibnote{end}{#1}}}}
       {\csuse{blfootnote}{\protecting{\blxmkbibnote{foot}{#1}}}}}}

\newcommand\blfootnote[1]{\begingroup\let\thefootnote\relax\footnotetext{#1}\endgroup}
\makeatother

\megafullcite now prints the alphabetic label and, if it is the first time this work was cited - for that feature, we need citetracker in any of its flavours (see § 3.1.2.3, p. 54 of the biblatex documentation); in the MWE I chose strict -, also prints a marker-less footnote with the alphabetic label, the author name, year and title.

The footnote for \megafullcite{wilde} is

[Wil99] Wilde (1899), The Importance of Being Earnest: A Trivial Comedy for Serious People.

\DeclareCiteCommand{\megafullcite}
  {\usebibmacro{prenote}}
  {\mkbibbrackets{\usebibmacro{cite}}%
   \ifciteseen{}
   {\mkbibblfootnote{%
     \mkbibbrackets{\usebibmacro{cite}}%
     \setunit{\addspace}%
     \usebibmacro{morecite}}}}
  {\multicitedelim}
  {\usebibmacro{postnote}}

\newbibmacro*{morecite}{%
  \printnames{labelname}%
  \setunit{\addspace}%
  \printfield[parens]{year}%
  \setunit{\nametitledelim}%
  \printfield[citetitle]{labeltitle}}

MWE

\documentclass{article}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage[british]{babel}
\usepackage{csquotes}
\usepackage[style=alphabetic,backend=biber,citetracker=strict]{biblatex}
\usepackage{hyperref}
\addbibresource{biblatex-examples.bib}
\makeatletter
\newrobustcmd{\mkbibblfootnote}[1]{%
  \iftoggle{blx@footnote}
    {\blx@warning{Nested notes}%
     \addspace\mkbibparens{#1}}
    {\unspace
     \ifnum\blx@notetype=\tw@
       \expandafter\@firstoftwo
     \else
       \expandafter\@secondoftwo
     \fi
       {\csuse{blx@theendnote}{\protecting{\blxmkbibnote{end}{#1}}}}
       {\csuse{blfootnote}{\protecting{\blxmkbibnote{foot}{#1}}}}}}

\newcommand\blfootnote[1]{\begingroup\let\thefootnote\relax\footnotetext{#1}\endgroup}
\makeatother

\DeclareCiteCommand{\megafullcite}
  {\usebibmacro{prenote}}
  {\mkbibbrackets{\usebibmacro{cite}}%
   \ifciteseen{}
   {\mkbibblfootnote{%
     \mkbibbrackets{\usebibmacro{cite}}%
     \setunit{\addspace}%
     \usebibmacro{morecite}}}}
  {\multicitedelim}
  {\usebibmacro{postnote}}

\newbibmacro*{morecite}{%
  \printnames{labelname}%
  \setunit{\addspace}%
  \printfield[parens]{year}%
  \setunit{\nametitledelim}%
  \printfield[citetitle]{labeltitle}}

\begin{document}
  Lorem ipsum \megafullcite{wilde} again \megafullcite{wilde}.

  Lorem ipsum \megafullcite{wilde,cicero}.

  Lorem ipsum \megafullcite{baez/article,baez/online}.

  \printbibliography
\end{document}

enter image description here


This is the old version of the answer, it implements a more verbose version with \fullcite

We can define two new citation commands

\megafootfullcite will print the alphabetic label and the full bibliography entry in the footnote.

\DeclareCiteCommand{\megafootfullcite}[\mkbibfootnote]
  {\usebibmacro{prenote}}
  {\mkbibbrackets{\usebibmacro{cite}}%
   \setunit{\addspace}%
   \usedriver
     {\DeclareNameAlias{sortname}{default}}
     {\thefield{entrytype}}}
  {\multicitedelim}
  {\usebibmacro{postnote}}

so \megafootfullcite{wilde} gives a footnote with the contents

[Wil99] Oscar Wilde. The Importance of Being Earnest: A Trivial Comedy for Serious People. Leonard Smithers and Company, 1899.

\megafullcite prints the alphabetic label in the text and adds a footnote for the full bibliography entry.

\DeclareCiteCommand{\megafullcite}
  {\usebibmacro{prenote}}
  {\mkbibbrackets{\usebibmacro{cite}}%
   \mkbibfootnote{\usedriver
     {\DeclareNameAlias{sortname}{default}}%
     {\thefield{entrytype}}}}
  {\multicitedelim}
  {\usebibmacro{postnote}}

or

\DeclareCiteCommand{\megafullcite}
  {\usebibmacro{prenote}}
  {\mkbibbrackets{\usebibmacro{cite}}%
   \mkbibfootnote{%
     \mkbibbrackets{\usebibmacro{cite}}%
     \setunit{\addspace}%
     \usedriver
       {\DeclareNameAlias{sortname}{default}}%
       {\thefield{entrytype}}}}
  {\multicitedelim}
  {\usebibmacro{postnote}}

The two version above differ in that the latter will put the alphabetic label into the footnote as well, the former will not repeat the label in the footnote.

MWE

\documentclass{article}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage[british]{babel}
\usepackage{csquotes}
\usepackage[style=alphabetic]{biblatex}
\usepackage{hyperref}
\addbibresource{biblatex-examples.bib}

\DeclareCiteCommand{\megafootfullcite}[\mkbibfootnote]
  {\usebibmacro{prenote}}
  {\mkbibbrackets{\usebibmacro{cite}}%
   \setunit{\addspace}%
   \usedriver
     {\DeclareNameAlias{sortname}{default}}%
     {\thefield{entrytype}}}
  {\multicitedelim}
  {\usebibmacro{postnote}}


\DeclareCiteCommand{\megafullcite}
  {\usebibmacro{prenote}}
  {\mkbibbrackets{\usebibmacro{cite}}%
   \mkbibfootnote{\usedriver
     {\DeclareNameAlias{sortname}{default}}%
     {\thefield{entrytype}}}}
  {\multicitedelim}
  {\usebibmacro{postnote}}

\begin{document}
  Lorem ipsum\megafootfullcite{wilde} and \megafullcite{wilde}.

  Lorem ipsum\megafootfullcite{wilde,cicero} and \megafullcite{wilde,cicero}.

  \printbibliography
\end{document}

enter image description here

4
  • That's interesting, but what if I wanted to change a few things: only print some of the information (like the kind that authortitle style gives), only put each footnote once, and omit footnote numbering altogether? – tomasz Mar 16 '14 at 17:46
  • @tomasz If you want only author and title, that can be done as well, putting the footnote only once would be possible as well (I think), but why would one omit footnote numbering (and what would that look like)? – moewe Mar 16 '14 at 17:47
  • It would print the same as what you've written except without the superscripted numbers (obviously, \megafootfullcite doesn't make much sense like that, but \megafullcite does). So that the only difference in behaviour compared to vanilla would be that instead of just the inline part, the foot part also appears, but without any hyperlinks referring to it. If that's too complicated to bother, it's okay, alphabetic is not so bad, and it's commonly used, so that's fine. I was just wondering if there's some simple way to do what I had thought about. – tomasz Mar 16 '14 at 17:51
  • @tomasz See the edited answer. – moewe Mar 16 '14 at 18:10

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.