1

Biblatex provides a \nameyeardelim command for setting the delimiter in name–year citations. I use this as follows to add a comma:

\renewcommand*{\nameyeardelim}{\addcomma\space}

I need to cite some references which have neither an author nor an editor. In this case Biblatex defaults to using the title (or shorttitle) and year, which is fine, except that there doesn't seem to be any way of setting the delimiter. (There's no corresponding \titleyeardelim or \shorttitleyeardelim command.)

Can someone tell me what I need to do so that the following minimal working example produces "(Proceedings of SENSEVAL-3, 2004)" instead of "(Proceedings of SENSEVAL-3 2004)"?

\documentclass{article}

\usepackage[backend=biber,style=authoryear-comp]{biblatex}
\addbibresource{bibliography.bib}

\begin{filecontents}{bibliography.bib}
@Proceedings{senseval2004,
  title = {Proceedings of SENSEVAL-3, the Third International Workshop on the Evaluation of Systems for the Semantic Analysis of Text},
  shorttitle = {Proceedings of SENSEVAL-3},
  year = {2004},
}
\end{filecontents}

\begin{document}
\autocite{senseval2004}
\end{document}
1

You only need

\DeclareDelimFormat{nonameyeardelim}{\addcomma\space}

MWE

\documentclass{article}

\usepackage[backend=biber,style=authoryear-comp]{biblatex}
\begin{filecontents}{\jobname.bib}
@Proceedings{senseval2004,
  title = {Proceedings of SENSEVAL-3, the Third International Workshop on the Evaluation of Systems for the Semantic Analysis of Text},
  shorttitle = {Proceedings of SENSEVAL-3},
  year = {2004},
}
\end{filecontents}

\addbibresource{\jobname.bib}
\addbibresource{biblatex-examples.bib}

\DeclareDelimFormat{nonameyeardelim}{\addcomma\space}


\begin{document}
\autocite{senseval2004,sigfridsson,kant:kpv}
\end{document}

example output

This answer was edited with a much simpler solution for newer biblatex versions. If you are using an ancient version of biblatex and the above does not work for you, consider an update. And if you can't update, have a look at the edit history for a solution that should work with older versions as well.

| improve this answer | |

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.