# biblatex: test whether a command is inside a cite command

The idea is the following: Normally, \fullcite just prints the full bibliography entry by calling \usedriver. In my style biblatex-fiwi I added the option to suppress stuff like foreword and afterword. At the moment, this option is for both, the bibliographic entry and the result of \fullcite.

I'd like to have the possibility to distinguish between the result of \printbibliography and \fullcite. But since \fullcite relies on the same mechanism as \printbibliography, this is tricky. What I need is a test which tells me whether we are currently inside a \cite command. This would then allow me to add a \fullcite-only option.

As far as I know, no test of this kind exists.

-

Anything wrong with \ifbibliography (see section 4.6.2 of the manual for details)?

\documentclass{article}

\usepackage{biblatex}

\renewbibmacro{begentry}{\ifbibliography{}{\clearname{foreword}}}

\usepackage{filecontents}

\begin{filecontents}{\jobname.bib}
@misc{A01,
author = {Author, A.},
year = {2001},
title = {Alpha},
foreword = {Buthor, B.},
}
\end{filecontents}

\begin{document}

\fullcite{A01}

\printbibliography

\end{document}

-
D'oh, not only is there \ifbibliography, there is also \ifcitation. Thanks a lot. –  Simifilm Nov 5 '12 at 14:03