Exclude \fullcite{...} citation from bibliography

There are a number of ways you might exclude particular entries from the printed bibliography:

  1. Set skipbib=true as an option in that entry in your .bib file.

  2. Set a keyword for such entries, and print a bibliography excluding them with a notkeyword filter.

  3. Add such entries to a category using \DeclareBibliographyCategory, \addtocategory and the notcategory 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}

enter image description here

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 \fullcites 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}

Tags:

Biblatex

Biber