\RequirePackage{filecontents}
\begin{filecontents}{\jobname.bib}
@article{Arter95,
    Author = {David Arter},
    Date-Added = {2013-08-11 17:38:06 +0000},
    Date-Modified = {2013-09-01 15:13:22 +0000},
    Journal = {Journal of Common Market Studies},
    Number = {3},
    Pages = {361-287},
    Title = {The {EU} {Referendum} in {Finland} on 16 October 1994: 
            {A} Vote for the {West}, not for {Maastricht}},
    Volume = {33},
    Year = {1995}}

@article{Detlef95,
    Author = {Jahn, Detlef; Storsved,Ann-sofie},
    Date-Added = {2013-08-11 17:14:34 +0000},
    Date-Modified = {2013-08-11 17:16:45 +0000},
    Journal = {West European Politics},
    Number = {4},
    Pages = {18-37},
    Title = {Legitimacy through referendum? The nearly successful domino‚Äêstrategy of the Eu‚Äêreferendums in Austria, Finland, Sweden and Norway},
    Volume = {18},
    Year = {1995}}
\end{filecontents}
\documentclass{article}
\usepackage[ngerman]{babel}
\usepackage{natbib}
\bibpunct{(}{)}{;}{a}{}{,}
\makeatletter
\renewcommand\@biblabel[1]{}
\makeatother

\begin{document}

\cite{Arter95}

\bibliography{\jobname}
\bibliographystyle{plainnat}

\end{document}

Please help. I want the author's name displayed like this "Arter, D." instead of David Arter

  • 2
    I've trimmed down your example almost to a minimum, using the filecontents package to 'bundle' the .bib file with the .tex source. Not relevant to the question, but you shouldn't have Jahn, Detlef; Storsved,Ann-sofie for the author list: you always need and, so Jahn, Detlef and Storsved, Ann-Sofie would be correct. – Joseph Wright Sep 1 '13 at 15:30
  • On the question itself, is the format of names the only issue you have with the plainnat style? If so, there are at least a couple of approaches which come to mind. – Joseph Wright Sep 1 '13 at 15:49
  • Jeah, the format of the names is the only issue. – Karl Sep 1 '13 at 15:53
  • If you could give me an answer i would be most thankful – Karl Sep 1 '13 at 16:48

As you've discovered, the plainnat bibliography style doesn't abbreviate given ("first") names. To change this behavior as well as to have the first name(s) placed after the surname, perform the following steps:

  • Find the file plainnat.bst in your TeX distribution and copy it to, say myplainnat.bst. (Don't edit directly a file provided as part of your TeX distribution.)

  • Open the file myplainnat.bst in your favorite text editor and search for function named format.names. (It starts on line 216 in my copy of plainnat.bst.)

  • In this function, look for the line

    { s nameptr "{ff~}{vv~}{ll}{, jj}" format.name$ 't :=
    

    Change this line to

    { s nameptr "{vv~}{ll}{, f.}{, jj}" format.name$ 't :=
    
  • Save the file myplainnat.bst either to the directory that contains your main .tex file or to a directory that's searched by your TeX (and BibTeX) distribution. (If you choose the second option, depending on your TeX distribution you may also have to refresh the filename database.)

  • Start using the modified bibliography style file by issuing the command \bibliographystyle{myplainnat}.

Incidentally, since the plainnat (and, by extension, the myplainnat) bibliography style uses [English] "sentence style" to typeset the contents of a title field in an entry of type @article, you need to encase words such as EU, Referendum, Finland and Maastricht in curly braces to keep them from being typeset in all-lowercase.


Addendum: It's been suggested that I provide a bit more information about what the strings "{ff~}{vv~}{ll}{, jj}" and "{vv~}{ll}{, f.}{, jj}" in the format.names function stand for.

Some background information first. As far as BibTeX is concerned, an author's full name can have up to four separate components: A first name component (which includes any middle names as well), a "von" component (e.g., "de", "von", "van", "van der", "della", etc.), a last name component (usually, but not necessarily, a single name), and a "junior" component (e.g., "Jr.", "Sr.", "III", etc). A full name must have at least a "last name" component; the first-name, von, and junior components are "optional".

As you can probably guess by now, the strings ff, vv, ll and jj above denote the four components; the form "ff" instructs BibTeX to print the complete first and middle names (if present, of course), whereas the form "f." instructs BibTeX to print only the first initial of every first and middle name.

There are various syntax rules that determine how BibTeX parses a full name to arrive at the various components. While this isn't the place for a full-blown tutorial of BibTeX syntax, it's worth mentioning a couple of topics:

  1. BibTeX does not examine the interior of the first-name component for special characters. Suppose, say, that an author's full name is listed as "C.A. Brown" in your .bib file. BibTeX will correctly identify "C.A." as the first-name component, but it will not ascribe any special meaning to the "." (dot) inside "C.A.", i.e., it won't notice that the field's first-name component consists of two separate initials, each one terminated by a dot. Thus, if the "{ f.}" parsing specifier is provided in the .bst file, BibTeX will abbreviate "C.A." down to "C.", even though that's probably not what you intended it to do.

    So, what should you do if you do want to show all initials of the first-name component and not just the very first initial? You need to write the author field as "C. A. Brown" or, equivalently, as "Brown, C. A.". That way, BibTeX will "notice" that the first-name component has two parts ("C." and "A.") and will dutifully render both.

  2. As noted above, BibTeX assumes that the name of every author has at least a last-name component -- and possibly as many as four components. This factoid is useful for treating entries that have so-called "corporate authors", e.g., "National Aeronautics and Space Administration" and "International Monetary Fund". Left to its own devices, BibTeX will interpret the former author field as having two [!] (recall that "and" is a reserved word in author fields) separate authors, the first one named "National Aeronautics" and the second one named "Space Administration"; for the latter name, its syntax rules will lead it to conclude that there's a single author with first name "International", middle name "Monetary", and last name "Fund".

    If the bibliography style specifies that first names should be abbreviated and listed after the respective surnames, BibTeX will end up typesetting the author fields as "Aeronautics, N. and Administration, S." and "Fund, I. M.". In addition, the former entry will be sorted under "A" (for Aeronautics) instead of "N", and the latter entry will be sorted under "F" (for Fund) instead of "I". Moreover, if author-year citations are being generated, they will look like "Aeronautics and Administration ([year])" and "Fund ([year])". Clearly none of these outcomes can be what you had in mind!

    The solution to the corporate-author problem is simple: Encase the entire author field in double curly braces. For the two examples above, one should write

    author = {{National Aeronautics and Space Administration}},
    

    and

    author = {{International Monetary Fund}},
    

    respectively. The outer pair of curly braces delimits the field, and the inner pair serves to make BibTeX treat the field as having only one component -- which, by its syntax rules, must be the last-name component. In a sense, then, BibTeX is made to believe that the former author has one complicated last name consisting of five words and the latter author has a last name that consists of three words. The happy result, though, is that the names will be rendered -- and sorted -- correctly.

  • thx for the answer, but i can not seem to find the plainnat.bst file. Im using TeXShop on OSX – Karl Sep 1 '13 at 17:06
  • @Karl - Thanks for specifying which OS (MacOS) you use. I assume that this means you're using MacTeX (2013?). If so, the file plainnat.bst should be located in the folder /usr/local/texlive/2013/texmf-dist/bibtex/bst/natbib. (If you still use MacTeX 2012, replace "2013" with "2012" in the long string.) Alternatively, you could download the file from http://www.ctan.org/tex-archive/macros/latex/contrib/natbib/. – Mico Sep 1 '13 at 17:10
  • @Mico Thanks for your code. It's been very helpful. But I was wondering, is there a way to show multiple author initials, if they're available, as I have some authors with very identical surnames and first initials e.g. Smith, C. could be either Christopher J. M. Smith, and Catherine L. Smith, so I would like them to be output as Smith, C.J.M. and Smith, C.L. – cjms85 Feb 14 '14 at 8:59
  • @Mico How can I force BibTeX to compile "Surname, N., The title..." instead of "Surname, N. The title..." (i.e. I always want the comma after the initial(s) of the last author)? – Mad Hatter May 16 '16 at 22:44
  • @Mico I have asked a separate question about it: tex.stackexchange.com/questions/310015/…, where you can see how my file looks like. The problem with you suggestion is that it gives: Surname, N.,. (the dot is repeated after the initial letter). – Mad Hatter May 17 '16 at 18:20

This solution solves the problem only for those who share the OP's desired name format but do not care about the other aspects of the format (the comments suggest that the OP wants to otherwise preserve the original format, which this fails to do):

Replace \bibliographystyle{plainnat} with \bibliographystyle{agsm} (I learned this here.)

  • You wrote, "This may change other aspects of the bibliography style" [emphasis added]. In fact, it most definitely will change all kinds of aspects of the formatted bib entries. – Mico Aug 31 '15 at 21:39
  • @Mico, excellent clarification, and a better choice of words. For my use case the changes were not a problem. – zkurtz Sep 1 '15 at 0:18
  • 1
    Why the down vote? If someone were coming to this question in a situation similar to mine, this would be very helpful to them, no? – zkurtz Sep 1 '15 at 0:19
  • 2
    I did not down vote but you do not answer the question the OP asked. That makes clear (or, at least, that plus the comments on it makes clear) that the solution needs to change only the particular aspect of the bibliography mentioned in the question. So, yes, your answer might be very useful to somebody with your question. But that does not make it a good answer to this question. But there is a lot of greyness here since answers often ignore specifications in the question and these are even encouraged. But your answer fails to make clear that it does not address the OP's situation. – cfr Sep 13 '15 at 23:51
  • 1
    @cfr, that is constructive feedback. I'm modifying my solution to emphasize the difference between my goals and the OP's. Ultimately, it still seems like a helpful answer to the title and the body of the OP which arguably matters since that is how others are most likely to arrive at this page. – zkurtz Sep 14 '15 at 0:46

An alternative that avoids needing customised .bst files is to use biblatex and the biblatex-trad set of styles, and to customise within the LaTeX document:

\RequirePackage{filecontents}
\begin{filecontents}{\jobname.bib}
@article{Arter95,
    Author = {David Arter},
    Date-Added = {2013-08-11 17:38:06 +0000},
    Date-Modified = {2013-09-01 15:13:22 +0000},
    Journal = {Journal of Common Market Studies},
    Number = {3},
    Pages = {361-287},
    Title = {The {EU} {Referendum} in {Finland} on 16 October 1994: 
            {A} Vote for the {West}, not for {Maastricht}},
    Volume = {33},
    Year = {1995}}
\end{filecontents}
\documentclass{article}
\usepackage[ngerman]{babel}
\usepackage[backend=bibtex,bibstyle=trad-plain,citestyle=authoryear]{biblatex}
\bibliography{\jobname}

\DeclareNameFormat{default}{%
  \usebibmacro{name:last-first}{#1}{#4}{#5}{#7}%
}
\defbibenvironment{bibliography}
  {\list
     {}
     {\setlength{\labelwidth}{0 pt}%
      \setlength{\leftmargin}{0 pt}%
      \setlength{\labelsep}{0 pt}%
      \addtolength{\leftmargin}{0 pt}%
      \setlength{\itemsep}{\bibitemsep}%
      \setlength{\parsep}{\bibparsep}}%
      \renewcommand*{\makelabel}[1]{\hss##1}}
  {\endlist}
  {\item}


\begin{document}

\textcite{Arter95}

\printbibliography

\end{document}

Sorry to reply to old question but I would like to elaborate on Mico's answer as I am currently dealing with the same issue and maybe there are others that need similar bibliography style. What the suggested solution does is that it changes all the names in the bibliography list to that style. Journals like Journal of Cell Biology though, use a style where only the first author's name has the order "Last name", "First name". All the other authors follow in "First name" "Last name" order. This is the style I need to use.

So to do that the myplainnat.bst file should be edited a bit more. In my system in the original plainnat.bst file the lines 221-223 look like this:

{ namesleft #0 > }
{ s nameptr "{ff~}{vv~}{ll}{, jj}" format.name$ 't :=
  nameptr #1 >

I add an if clause to see whether we are dealing with the first name or the rest of them and format accordingly. This adds some extra lines (lines 221-226):

{ namesleft #0 > }
{ nameptr #1 =
  {s nameptr "{vv~}{ll}{, f.}{, jj}" format.name$ 't :=}
  {s nameptr "{f.~}{vv~}{ll}{, jj}" format.name$ 't :=}
  if$
  nameptr #1 >

(I use f. instead of ff)

Original plainnat.bst: original plainnat.bst

Mico's modifications: all names in "Last name", "First name" order

Journal of Cell Biology style: Journal of Cell Biology style

  • Exactly what I was looking for. I couldn't figure out where to put the conditional, but your adjustment has exactly the effect I was trying to get myself for quite a bit. – Bert Zangle Apr 23 '17 at 15:59

Your Answer

 

By clicking "Post Your Answer", you acknowledge that you have read our updated terms of service, privacy policy and cookie policy, and that your continued use of the website is subject to these policies.

Not the answer you're looking for? Browse other questions tagged or ask your own question.