# biblatex: Set citation options on a cite-by-cite basis

Here's the deal: I have a biblatex bibliography with a prenote. The prenote contains a citation with a lot of authors. I want it to behave as if it were obeying maxnames=3. But I want my bibliography to behave as if maxnames=99. Is there a way to set the value of maxnames locally for that one citation?

More generally, is there a procedure for locally setting biblatex options?

-

This is the first time I encountered a citation command within the bibliography. Note: \defcounter (an etoolbox macro) instead of \setcounter allows for local redefinition of counters. (EDIT: I used the same hack in my answer to Adding an [AuthorYear] block at the beginning of bibliography entries .)

\documentclass{article}

\usepackage[style=authoryear,maxnames=99,maxcitenames=3]{biblatex}

\newcounter{mymaxcitenames}
\AtBeginDocument{%
\setcounter{mymaxcitenames}{\value{maxnames}}% i.e., 3 (!)
}

\begingroup
\defcounter{maxnames}{\value{mymaxcitenames}}%
\textcite{A01}.%
\endgroup
}

\usepackage{filecontents}

\begin{filecontents}{biblatextest.bib}
@misc{A01,
author = {Author, A. and Buthor, B., and Cuthor, C. and Duthor, D.},
year = {2001},
title = {Alpha},
}
\end{filecontents}

\begin{document}


@lockstep I actually think maxcitenames will solve my problem on its own, won't it? I don't think my version of biblatex has it though, so I will have to update... I'll check back later. –  Seamus Mar 8 '11 at 19:04
@Seamus: For versions <1.1, delete the maxnames and maxcitenames preamble options, add [maxnames=99] to \printbibliography and try again. –  lockstep Mar 8 '11 at 19:12