1

minimal working example:

\documentclass[12pt,openright]{book}
\usepackage[backend = bibtex8, defernumbers = true,  sorting=none,  style = numeric]{biblatex}
\usepackage{filecontents}
\begin{filecontents}{bib1.bib}
 @ARTICLE{dunbar2006distributed,
 author = {Dunbar, William B and Dunbar, William B and Murray, Richard M},
title = {Distributed receding horizon control for multi-vehicle formation stabilization},
journal = {Automatica},
year = {2006},
volume = {42},
pages = {549--558},
number = {4},
publisher = {Elsevier},
 }
\end{filecontents}

\addbibresource{bib1.bib}
\renewbibmacro*{name:last-first}[4]{%
\setcounter{liststop}{10}%                             % 列出所有的作者
\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}}
  {\usebibmacro{name:delim}{#1}%
 \usebibmacro{name:hook}{#1}%
 \mkbibnamelast{#1}\isdot
 \ifblank{#4}{}{\bibnamedelimd\mkbibnameaffix{#4}\isdot}%
 %     \ifblank{#2#3}{}{\addcomma}%
 \ifblank{#2}{}{\bibnamedelimd\mkbibnamefirst{#2}\isdot}%
 \ifblank{#3}{}{\bibnamedelimd\mkbibnameprefix{#3}\isdot}
  }}

\DeclareNameFormat{default}{%
\usebibmacro{name:last-first}{#1}{#4}{#5}{#7}%
\usebibmacro{name:andothers}%
}

 \begin{document}
 some text \cite{dunbar2006distributed}.
 \printbibliography
 \end{document}

and the corresponding output of reference is shown as: enter image description here Here is the desired output: enter image description here

Change the '.,' in to ',' between authors and eliminate the '.' between surname and first name, but leave spaces, Thanks!

0 Answers0