3

I would like to know what is in Biblatex/Biber the equivalent of \cite* that in natbib with Bibtex cites all the authors in the text. In Biblatex it just displays the year or the title depending if one uses author-year or author-title, according to the documentation. In said documentation, there doesn't seem to be such a command.

Here is the specific style I use if it helps:

\usepackage[citestyle=authoryear,bibstyle=authoryear,maxbibnames=10,giveninits=true,natbib=true,doi=false,url=false,isbn=false,dashed=false,uniquelist=false,uniquename=false,backend=biber]{biblatex}
  • I had found this answer and \fullcite does not work here, since it cites the title too, and the journal, etc. which I don't want. I would like a replica of what \cite* does: just cite all authors in the text. – viiv Feb 28 '17 at 18:33
5

You can change maxnames locally:

\documentclass{scrartcl}

\usepackage[citestyle=authoryear,bibstyle=authoryear,
             maxbibnames=10,giveninits=true,natbib=true,doi=false,url=false,
             isbn=false,dashed=false,uniquelist=false,uniquename=false,backend=biber]{biblatex}
\addbibresource{biblatex-examples.bib}             



\begin{document}

\AtNextCite{\defcounter{maxnames}{99}}\cite{herrmann}

\cite{herrmann}

\printbibliography

\end{document}

If you need it often you can define a cite command which does it, e.g.:

\documentclass{scrartcl}

\usepackage[citestyle=authoryear,bibstyle=authoryear,
             maxbibnames=10,giveninits=true,natbib=true,doi=false,url=false,
             isbn=false,dashed=false,uniquelist=false,uniquename=false,backend=biber]{biblatex}
\addbibresource{biblatex-examples.bib}             

\DeclareCiteCommand{\longcite}
  {\usebibmacro{prenote}}%
  {\usebibmacro{citeindex}%
   \defcounter{maxnames}{99}%
   \usebibmacro{cite}}
  {\multicitedelim}
  {\usebibmacro{postnote}}

\begin{document}

\longcite{herrmann}

\cite{herrmann}

\printbibliography

\end{document}
  • This works indeed as a temporary solution! Any idea on how to use this to define a new command? (even better if it's \cite* since then I can change from Bibtex to Biblatex/Biber almost seamlessly) – viiv Feb 28 '17 at 18:38
  • I added an example (I simply copied the cite definition from authoryear.cbx). You could redefine \cite* but in biblatex it already has a meaning. – Ulrike Fischer Feb 28 '17 at 18:43
  • It works indeed! Any idea on how to have parenthesis around the year? (like in \citet?, this is what \cite*does) – viiv Feb 28 '17 at 18:52
  • ok I found my answer: replace \usebibmacro{cite} by \usebibmacro{textcite} – viiv Feb 28 '17 at 19:09
  • Note that the natbib compatibility mode uses \AtNextCite{\AtEachCitekey{\defcounter{maxnames}{999}}} Your first example will fail with \parencite. See also github.com/plk/biblatex/issues/354 – moewe Mar 1 '17 at 9:01
0

In biblatex you must use \nocite{*} to print all references

  • Thanks, but I'm asking in the text, how to have all authors displayed, not in the bibliography – viiv Feb 28 '17 at 18:25

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.