I'm in the process of switching from BibTeX to BibLaTeX/biber. I've searched around but can't seem to find/figure out how to style the citations a particular way and I'd appreciate some help.
I'm using the tufte-latex package so citations appear in the margins. I'm looking to have the first occurrence of a citation give the full citation, i.e., Author, Title, publisher, year, and the remaining citations of that item simply give the numeric citation, i.e., author [citation number].
My current biblatex options are:
\usepackage[
natbib=true,
bibstyle=numeric,
block=nbpar,
citestyle=numeric,
backend=biber
]{biblatex}
Two types of references are found in the text, the standard citation which appears as its own margin note, and a citation appearing within a margin note. To accommodate this I use the BibLaTeX commands \textcite{}
for citations within a margin note (giving "Author [cit. number]"), and \autocite{}
for standard citations with autocite being defined as follows.
\renewcommand{\autocite}[1]{\sidenote{\textcite{#1}}}
But again, what I would like is to have this set-up (or similar) but have the initial occurrence of each citation give the full citation (Author, title, pub, year, etc..) and the remainder go back to the numeric version I currently have.
Is this possible?
Best Answer
Using a modified
tufte-common.def
file you can createtufte-latex
documents withbiblatex
. A limitation is thattufte-latex
modifies footnotes. Sobiblatex
features such as\smartcite
inside footnotes and footnote detection with\iffootnote
may not work as intended. Most of this has already been covered in another post.As for the citation style, you can get most of the way there with some edits to the
textcite
bibliography macro and\smartcite
. Both of these are defined innumeric.cbx
.Some notes:
autocite=footnote
option setting makes\autocite
use\smartcite
as its backend citation command.\ifciteseen
test needs citation tracking enabled. In the example global tracking is enabled viacitetracker=true
. Alternative settings are possible. Refer to the manual for details.\usedriver
. The first argument to this command allows you to hook code in before printing. This is a good place to suppress fields with\clearfield
and friends. In the example, I suppress thepages
andpagetotal
fields to avoid confusion with page references in postnotes.numeric
,\textcite
generates compact citation lists. This complicates printing full citations. The edits totextcite
take an easy way out by simply replacing thelabelname
orlabeltitle
with the full citation.numeric
style isn't particularly suited to this customization. Refer to theverbose
style or any of its variants for some better alternatives.