11

After several hours on this webpage, I decided to change to biblatex and have already configured according to my preferences. Apart from an easy way to change the order of certain fields of a given citation-style (alphabetic in my case), biblatex does almost everything I need.

However, it won't put a period (or dot or whatever it is called) after the initials of the first names if the bibtex-firstname-entry has only letter. Here is an example of my biblatex-definitions

%
%
\documentclass{article}
%
\usepackage[utf8]{inputenc}
\usepackage[english]{babel}
\usepackage[T1]{fontenc}
%
%************Bibliography*Definitions*******************************************
\usepackage[style=alphabetic,maxbibnames=99,sorting=anyt,firstinits=true,url=false,doi=false]{biblatex}
\renewcommand*{\newunitpunct}{\addcomma\space}
\renewcommand{\labelalphaothers}{}
\renewcommand{\labelnamepunct}{\addcomma\space}
\renewbibmacro{in:}{}
\DeclareFieldFormat*{journaltitle}{#1}
\DeclareFieldFormat*{title}{\enquote{\textsl{#1}}}
\DeclareFieldFormat*{volume}{\textbf{#1}}
\renewbibmacro*{volume+number+eid}{\printfield{volume}}
\AtEveryBibitem{\clearfield{issn}}
%\DefineBibliographyStrings{english}{references = {testbla}}
\bibliography{test.bib}
%
%
%
\begin{document}

\cite{Engelsman1973}

\printbibliography

\end{document}

with a bibtex-file generated by Mendeley

@article{Engelsman1973,
author = {Engelsman, FMR and Wiegers, GA and Jellinek, F and {Van Laar}, B},
journal = {Journal of Solid State Chemistry},
pages = {574--582},
title = {{Crystal structures and magnetic structures of some metal (I) chromium (III) sulfides and selenides}},
url = {http://www.sciencedirect.com/science/article/pii/S0022459673800180},
volume = {6},
year = {1973}
}

Biblatex would abbreviate the name of Engelsman (FMR -> F.) and Wiegers (GA -> G.) but for Jellinek and VanLaar, where only one letter is given for the first names, it would let it like this. How can I fix this, without changing each entry in Mendeley. I use bibtex as backend, because I couldn't get biber to work and I haven't found a good documentation in the net for this (passed the whole last weekend on trying to get it work).

Thanks for any suggestions.

  • 1
    Welcome to TeX.SX! As far as BibTeX is concerned, Jellinek has "F" as first name, which can't be abbreviated. Your entries are wrongly written, sorry. – egreg Mar 25 '12 at 15:29
  • 2
    Although if you can get biber working, it will add the punctuation here. (Which means it gets one letter names wrong.) Alternatively, with bibtex you can put single letter initials in braces. – Alan Munn Mar 25 '12 at 15:41
6

As Alan Munn has commented, the punctuation for "abbreviated" single-letter first names is correctly added with biber as backend. That said, here's a hack that adds the punctuation for bibtex8:

\documentclass{article}

\usepackage[firstinits=true,maxnames=99,backend=bibtex8]{biblatex}

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

\usepackage{filecontents}

\begin{filecontents}{\jobname.bib}
@article{Engelsman1973,
author = {Engelsman, FMR and Wiegers, GA and Jellinek, F and {Van Laar}, B},
journal = {Journal of Solid State Chemistry},
pages = {574--582},
title = {{Crystal structures and magnetic structures of some metal (I) chromium (III) sulfides and selenides}},
url = {http://www.sciencedirect.com/science/article/pii/S0022459673800180},
volume = {6},
year = {1973}
}
\end{filecontents}

\addbibresource{\jobname.bib}

\nocite{*}

\begin{document}

\printbibliography

\end{document}

enter image description here

  • Thank you, your hack did the job. About biber, I guess this was the reason why I tried to get it to work last weekend. However, I don't remember what was the problem. I guess, I'll wait for that, until there is more documentation about it. – Berserk Mar 25 '12 at 18:07

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.