4

The surnames with a nobility particle (e.g. "de Sample", or "van Sample") are being listed in the bibliography in the alphabetical order by the first letter of the particle (e.g. "van Sample" is listed under "v"). I want it instead to be listed under the first letter of the surname ("van Sample" listed under "s").

I'm using BibDesk reference management software, and natbib package. The bibliography style I'm using is phil_review). Modifying the .bib file directly as in Latex citations Bibtex. Wrong capital and alphabetical order doesn't provide the correct result for me.

5
  • 1
    A simple little trick is the \noop one. See, e.g., this answer. Basically: define \newcommand{\noop}[1]{}; then add \noop{Sample} to the start of an author field to get it to sort under 'Sample'.
    – jon
    Commented Feb 20, 2015 at 7:39
  • If you're required to use phil_review.bst for a submission, you shouldn't worry.
    – egreg
    Commented Feb 20, 2015 at 7:52
  • @jon this does reorganize it -- it's no longer stored under 'v', but oddly it doesn't store it under 's' either, rather between 'm' and 'p', oddly.
    – bozidarka
    Commented Feb 20, 2015 at 8:04
  • @bozidarka -- That is odd; but I can't help without a minimal example (or see here) to experiment with. egreg's point is also worth considering: it may well be that the creator of phil_review.bst or the journal that relies on it has strong, prescriptive ideas about how to sort the 'von-part' names.
    – jon
    Commented Feb 20, 2015 at 17:53
  • 1
    In case this is useful for someone: I had problems getting BibTeX to alphabetize properly "d'Aspremont", which it listed with the Ds rather than the As. Changing the author field to "d' Aspremont" (notice the extra space) put it at the right place, but the space was unwelcome. I finally found the following solution: make the author field "d' \unskip Aspremont". For the time being, this seems to have totally solved the problem. Commented Apr 16, 2021 at 5:59

2 Answers 2

0

Here is a MWE, that achieves that 'van Adams' is not stored under 'v', but for some reason not that it is stored under 'a':

Test.bib file just contains:

    @article{V,
        Author = {Sample Voyt},
        Date-Added = {2015-02-20 20:26:14 +0000},
        Date-Modified = {2015-02-20 20:27:33 +0000},
        Journal = {Sample Journal},
        Title = {Sample Title},
        Year = {2014}}

    @article{S,
        Author = {Sample Stewart},
        Date-Added = {2015-02-20 20:25:29 +0000},
        Date-Modified = {2015-02-20 20:28:33 +0000},
        Journal = {Sample Journal},
        Title = {Sample Title},
        Year = {2014}}

    @article{P,
        Author = {Samlpe Peters},
        Date-Added = {2015-02-20 20:21:11 +0000},
        Date-Modified = {2015-02-20 20:24:23 +0000},
        Journal = {Sample Journal},
        Title = {Sample Title},
        Year = {2014}}

    @article{M,
        Author = {Sample Matthews},
        Date-Added = {2015-02-20 20:18:59 +0000},
        Date-Modified = {2015-02-20 20:19:47 +0000},
        Journal = {Sample Journal},
        Title = {Sample Title},
        Year = {2015}}

    @article{Test,
        Author = {Test \noop{Adams} van Adams},
        Date-Added = {2015-02-20 20:18:24 +0000},
        Date-Modified = {2015-02-20 20:31:54 +0000},
        Journal = {Sample Journal},
        Title = {Sample Title},
        Year = {2015}}

.tex file is as follows:

    \documentclass{article}
    \usepackage[american]{babel}
    \usepackage{natbib}

    \newcommand{\noop}[1]{}
    \title{Sample}
    \begin{document}
    \maketitle
    \nocite{*}
    \bibliographystyle{phil_review}
    \bibliography{Test}{}
    \end{document}

Though this will not list "van Adams" under "v", it will not list it under "a" either; rather between "m" and "p".

5
  • 1
    You need to use a canonical name format for names with a von part. In BibTeX, this is "von Last, First, Jr" (you'll see this is BibDesk's author/editor list). Fix that, and then see if you still have a sort issue. If so, kaivonfintel.org/von may help. Commented Feb 20, 2015 at 21:43
  • The issue is independent of the canonical name format. But kaivonfintel.org/von solution seems to work.
    – bozidarka
    Commented Feb 20, 2015 at 22:08
  • 1
    Your example code won't list Test \noop{Adams} van Adams under "A" because BibTeX interprets the first "Adams" as being part of the name's first-name component. Try \noop{adams} instead (note the lowercase "a").
    – Mico
    Commented Feb 20, 2015 at 23:00
  • @Mico even when I use \noop{adams} and list the name in a canonical formant, it's still listed between 'm' and 'p'. But, the suggestion here: kaivonfintel.org/von does the trick.
    – bozidarka
    Commented Feb 21, 2015 at 1:02
  • 1
    Sorry, I misremembered; you can get away with this form since you have a lowercase v in the von part. Incidentally, btxdoc.pdf documents the name splitting behavior and sorting workarounds. edit My comment above has the Jr token in the wrong place, as I wrote that from memory. Commented Feb 21, 2015 at 2:30
0

Putting another set of braces around \noop{} apparently solves the problem. So if I write:

  @article{Test,
        Author = {Test {\noop{Adams}} van Adams},
        Date-Added = {2015-02-20 20:18:24 +0000},
        Date-Modified = {2015-02-20 20:31:54 +0000},
        Journal = {Sample Journal},
        Title = {Sample Title},
        Year = {2015}}

the problem goes away, and the document compiles correctly. Not sure why without the braces the place it selects to put "van Adams" is between "m" and "p".

So where the test.bib is:

@article{V,
    Author = {Sample Voyt},
    Date-Added = {2015-02-20 20:26:14 +0000},
    Date-Modified = {2015-02-20 20:27:33 +0000},
    Journal = {Sample Journal},
    Title = {Sample Title},
    Year = {2014}}

@article{S,
    Author = {Sample Stewart},
    Date-Added = {2015-02-20 20:25:29 +0000},
    Date-Modified = {2015-02-20 20:28:33 +0000},
    Journal = {Sample Journal},
    Title = {Sample Title},
    Year = {2014}}

@article{P,
    Author = {Samlpe Peters},
    Date-Added = {2015-02-20 20:21:11 +0000},
    Date-Modified = {2015-02-20 20:24:23 +0000},
    Journal = {Sample Journal},
    Title = {Sample Title},
    Year = {2014}}

@article{M,
    Author = {Sample Matthews},
    Date-Added = {2015-02-20 20:18:59 +0000},
    Date-Modified = {2015-02-20 20:19:47 +0000},
    Journal = {Sample Journal},
    Title = {Sample Title},
    Year = {2015}}

  @article{Test,
        Author = {Test {\noop{Adams}} van Adams},
        Date-Added = {2015-02-20 20:18:24 +0000},
        Date-Modified = {2015-02-20 20:31:54 +0000},
        Journal = {Sample Journal},
        Title = {Sample Title},
        Year = {2015}}

and .tex file is:

\documentclass{article}
\usepackage[american]{babel}
\usepackage{natbib}

\newcommand{\noop}[1]{}
\title{Sample}
\begin{document}
\maketitle
\nocite{*}
\bibliographystyle{phil_review}
\bibliography{Test}{}
\end{document}

the outcome is as desired.

This site is temporarily in read-only mode and not accepting new answers.

Not the answer you're looking for? Browse other questions tagged .