8

My reference style requires author initials without period-space but between the author list and year there should be a period, e.g.

Cho JC, Kim MW, Lee DH, Kim SJ. (1997). Response of bacterial communities to changes in composition of extracellular organic carbon from phytoplankton in Daechung reservoir (Korea). Arch Hydrobiol 138:559–576.

Trouble is that author and year are produced together using \usebibmacro{author/translator+others} which is a basic biblatex macro.

Any tips on how to modify that?

p.s for some reason the solution suggested here using \renewcommand{\labelnamepunct}{} doesn't seem to work in my case

Roey Angel
  • 1,699

1 Answers1

7

You need to patch the date+extrayear bibmacro. (The solution is a slight modification of biblatex: How to remove the parentheses around the year in authoryear style?)

\documentclass{article}

\usepackage[style=authoryear,firstinits=true,terseinits=true]{biblatex}

\usepackage{xpatch}

\DeclareNameAlias{sortname}{last-first}
\renewcommand*{\revsdnamepunct}{}
\renewcommand*{\finalnamedelim}{\addcomma\space}

\xpretobibmacro{date+extrayear}{%
  \setunit{\addperiod\space}%
}{}{}

\usepackage{filecontents}

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

\addbibresource{\jobname.bib}

\nocite{*}

\begin{document}

\printbibliography

\end{document}

enter image description here

lockstep
  • 250,273
  • Wow, what an overkill for such a seemingly simple task. But hey, it works like a charm so who am I to complain. – Roey Angel Nov 23 '12 at 22:06
  • 3
    I'm guessing the author never expected anyone to want punctuation between the name list and the year. The period does look weird IMO. A slightly shorter solution is \xpretobibmacro{date+extrayear}{\setunit{\addperiod\space}}{}{}. – Audrey Nov 23 '12 at 22:21
  • 2
    Also in my opinion, but no less weird are the minds of people who decide on these citation styles for the various journals. – Roey Angel Nov 23 '12 at 22:43
  • extrayear has been deprecated and replaced by extradate link. The solution by @lockstep still works if \xpretobibmacro{date+extrayear} is replaced by \xpretobibmacro{date+extradate} – Bob Aug 21 '20 at 01:38