Saturday, February 10, 2007

Weird BibTeX problem

This is puzzling me, and I am hoping my readers might help:

I want to add a reference to this entry:
@article{ref,
author = {First Last and First M. Last, III},
title = {Insert Title Here},
journal = {Int. J. Comput. Sci.},
volume = 1,
number = 1,
year = 2010,
pages = {137--154},
}

and it comes out looking like this (in my .bbl file):
\bibitem{ref}
{\sc Last, F., and First M.~Last, I.}
\newblock Insert Title Here
\newblock {\em Int. J. Comput. Sci 1}, 1 (2010), 137--154
As you can see, there are two problems:
  1. The second name is not formatted in the style of the first
  2. The second author has been replaced by their grandparent (!) (the III has been replaced by I).
This is using the acm.bst style file. I tried using plain.bst, and the problem persists: the second author is listed as III First M. Last.

I tried standard tricks like enclosing the III in braces, placing commas in certain places, removing them etc. No luck.

10 comments:

  1. I wasn't ble to reproduce your problem (you don't give the bibliographystyle) but I get the expected (?) result with

    author = {First Last and First M. {Last, III}},

    and \bibliographystyle{alpha}

    ReplyDelete
  2. Oops, you_do_ give da bibstyle. sorry. my proposal seems to work with my tetex/ubuntu with plain.bst

    ReplyDelete
  3. That was quick ! I tried your method, and it also works with acm.bst

    thanks !

    ReplyDelete
  4. Probably this is due to the fact that the authors should be in the form LastName, FirstName, BibTeX is smart enough to usually do the right thing when no comma is present.

    Therefore Last, First M. III should do the trick.

    ReplyDelete
  5. The correct order to write names like this in BibTeX is Last, First M., III. The First M. {Last, III} solution will sort of work, but will incorrectly alphabetize the name as if {Last III} is a single letter of a last name.

    ReplyDelete
  6. You see, this is what happens when you use a word processor to do the job of a database... :)

    ReplyDelete
  7. The correct way to do this, as shown in the .bib file of the bibtex documentation itself, is: "Last, Jr, First Middle". Example:

    $ zegrep Jr /usr/share/texmf-texlive/doc/bibtex/base/btxdoc.bib

    author = "Strunk, Jr., William and E. B. White",

    ReplyDelete
  8. Although I didn't actually test out anything, Oren Patashnik's "Bibtexing" ought to be authoritative; the relevant discussion seems to be here.
    After discussing the four "parts" of a name that bibtex understands, which are First, Last, von, and Jr, he says:

    "To summarize, BibTeX allows three possible forms for the name:

    "First von Last"
    "von Last, First"
    "von Last, Jr, First"

    You may almost always use the first form; you shouldn't if either there's a Jr part, or the Last part has multiple tokens but there's no von"

    -Ken Clarkson

    ReplyDelete
  9. While we are talking about bibtex:

    when you crossref two or more papers from the same proceedings, bibtex automatically puts the proceedings themselves as a reference, and then the papers say "In [1]" instead of saying "In proceedings of...".

    I can see that this is more concise,but it feels odd. Is there a way to turn off this behavior?

    ReplyDelete
  10. From the bibtex manual:

    "--min-crossrefs=n

    Defines the minimum number of crossrefs required for automatic inclusion of the crossref'd entry on the citation list; the default is two."

    ReplyDelete

Disqus for The Geomblog