Exclude \fullcite{...} citation from bibliography
There are a number of ways you might exclude particular entries from the printed bibliography:
Set
skipbib=true
as anoption
in that entry in your.bib
file.Set a
keyword
for such entries, and print a bibliography excluding them with anotkeyword
filter.Add such entries to a category using
\DeclareBibliographyCategory
,\addtocategory
and thenotcategory
filter.
If you are dealing with one or two specific entries, then (1) or (2) is probably easiest. If you want a general mechanism, then the third will probably be the best. Something like
\documentclass{article}
\usepackage{biblatex}
\DeclareBibliographyCategory{fullcited}
\newcommand{\mybibexclude}[1]{\addtocategory{fullcited}{#1}}
\addbibresource{biblatex-examples.bib}
\begin{document}
Chemists deserve numbers: \cite{cotton}. But historians get a full citation in the text
and are excluded from the bibliography: \fullcite{reese}.\mybibexclude{reese}
\printbibliography[notcategory=fullcited]
\end{document}
You could, if you needed this a lot, construct a new citation command that did this automatically. But it's probably overkill.
I know this is an old thread, but it somehow crossed my path today, and I think the question may benefit from another twist. The OP asks for the exclusion of a citation if it is done with \fullcite
. Paul Stanley's answer gets the job done, of course. However, the three of his proposed solutions will exclude the entry, irrespective of whatever happens in the rest of the document. Even if the entry is later cited with \cite
or another citation command. This answer proposes a way to exclude \fullcite
s from the bibliography, but without hampering that the affected entry get to the bibliography if cited some other way. Of course, this may well be overkill for a number of needs, but may perhaps be useful for specific requirements.
\documentclass{article}
\usepackage{biblatex}
\DeclareBibliographyCategory{inbib}
\makeatletter
\AtEveryCitekey{%
\ifcsstring{blx@delimcontext}{fullcite}
{}
{\addtocategory{inbib}{\thefield{entrykey}}}}
\makeatother
\addbibresource{biblatex-examples.bib}
\begin{document}
Chemists deserve numbers: \cite{cotton}. But historians get a full citation in the text and are excluded from the bibliography: \fullcite{reese}.
%But may reach the bibliography if cited with a standard cite command: \cite{reese}.
\printbibliography[category=inbib]
\end{document}