23

I am new to biblatex, and I need to create a bibliography with the authors' names with last names followed by pure initials. Using the style=numeric, firstinits and terseinits options along with:

\DeclareNameAlias{author}{last-first}

I come up with a list of names that looks like:

Doe, J, Smith, K, and Doe, W"

How can I remove the commas between the last name and the initial of the first name?

23

EDIT: Since biblatex v2.2, one may simply issue \renewcommand*{\revsdnamepunct}{} in the document preamble.

\documentclass{article}

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

\DeclareNameAlias{default}{last-first}

\renewcommand*{\revsdnamepunct}{}

\usepackage{filecontents}

\begin{filecontents}{\jobname.bib}
@misc{A01,
  author = {Author, Aaa and Buthor, Bbb and Cuthor, Ccc},
  year = {2001},
  title = {Alpha},
}
\end{filecontents}

\addbibresource{\jobname.bib}

\nocite{*}

\begin{document}

\printbibliography

\end{document}

enter image description here

ORIGINAL ANSWER: Redefine the bibmacro name:last-first.

\documentclass{article}

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

\DeclareNameAlias{default}{last-first}

\renewbibmacro*{name:last-first}[4]{%
  \ifuseprefix
    {\usebibmacro{name:delim}{#3#1}%
     \usebibmacro{name:hook}{#3#1}%
     \ifblank{#3}{}{%
       \ifcapital
         {\mkbibnameprefix{\MakeCapital{#3}}\isdot}
     {\mkbibnameprefix{#3}\isdot}%
       \ifpunctmark{'}{}{\bibnamedelimc}}%
     \mkbibnamelast{#1}\isdot
     \ifblank{#4}{}{\bibnamedelimd\mkbibnameaffix{#4}\isdot}%
%      \ifblank{#2}{}{\addcomma\bibnamedelimd\mkbibnamefirst{#2}\isdot}}% DELETED
     \ifblank{#2}{}{\bibnamedelimd\mkbibnamefirst{#2}\isdot}}% NEW
    {\usebibmacro{name:delim}{#1}%
     \usebibmacro{name:hook}{#1}%
     \mkbibnamelast{#1}\isdot
     \ifblank{#4}{}{\bibnamedelimd\mkbibnameaffix{#4}\isdot}%
%      \ifblank{#2#3}{}{\addcomma}% DELETED
     \ifblank{#2}{}{\bibnamedelimd\mkbibnamefirst{#2}\isdot}%
     \ifblank{#3}{}{\bibnamedelimd\mkbibnameprefix{#3}\isdot}}}

\usepackage{filecontents}

\begin{filecontents}{\jobname.bib}
@misc{A01,
  author = {Author, Aaa and Buthor, Bbb and Cuthor, Ccc},
  year = {2001},
  title = {Alpha},
}
\end{filecontents}

\addbibresource{\jobname.bib}

\nocite{*}

\begin{document}

\printbibliography

\end{document}
  • @lockstep: I just saw your solution and used it in my .tex file, works well in the end, but no matter what I do, I keep getting the error : Undefined control sequence. argument> \bibnamedelimd \mkbibnamefirst {Patrick}\isdot Patrick is in that case the firstname of the author. I keep getting this error for every first-/lastname. What should I do? Sorry, I have just started working with Biblatex... – user11928 Feb 20 '12 at 19:02
  • \bibnamedelimd was introduced in biblatex version 1.3. Try to update your TeX distribution. – lockstep Feb 20 '12 at 19:13

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.