7

I want to use the firstinits=true option of biblatex, and to disable the abbreviations for specific entries, I use {{authorname}}, as recommended in a previous question. However, biblatex is apparently unable to sort the bibliography in this case. No matter, I thought, I can just provide sortname for the few entries where this is necessary. But biblatex seems to ignore this, i.e. Baltasar appears first in my example.

\documentclass{article}
\usepackage{filecontents}
\usepackage[style=alphabetic,firstinits=true]{biblatex}

\begin{filecontents}{references.bib}
    @report{example1,
        author={Buthor, Baltasar},
        title={Baltie's report}
    }

    @report{example2,
        sortname={Author, Archibald},
        title={Archie's report},
        author={{Archibald Author}}
    }
\end{filecontents}
\bibliography{references.bib}

\begin{document}
  \nocite{*}
  \printbibliography
\end{document}

How do I use the sortname field properly?

Edit: I’m using an up-to-date TeXLive 2011, compiling with pdflatex and bibtex. Tried under both XP and Ubuntu.

8
  • I compiled your example, and Archibald appears in the bibliography before Baltasar.
    – user11171
    Commented Jan 26, 2012 at 16:40
  • How do I add a comment to the question? I think my answer would have fit better as a comment. I am new to stack exchange.
    – user11171
    Commented Jan 26, 2012 at 16:42
  • Just use the link "add comment" below the question.
    – Thorsten
    Commented Jan 26, 2012 at 17:08
  • 2
    Use biber to get it working. No idea why ...
    – Thorsten
    Commented Jan 26, 2012 at 17:34
  • 2
    Sorting will in general work better with Biber. It has a far more complete and sophisticated sorting system, especially for tricky cases.
    – PLK
    Commented Jan 26, 2012 at 19:44

1 Answer 1

8

Adding sorting=nyt to the biblatex options will fix it:

\documentclass{article}
\usepackage{filecontents}
\usepackage[
    style=alphabetic,
    sorting=nyt,
    firstinits=true
]{biblatex}

\begin{filecontents}{references.bib}
  @report{example1,
    author={{Archibald Author}},
    title={Archies first report}
    }
  @report{example2,
    author={{Archibald Author}},
    sortname={Author, Archibald},
    title={Archies second report}
    } 
  @report{example3,
    author={Archibald Author},
    sortname={Author, Archibald},
    title={Archies third report}
    }
  @report{example4,
    author={Buthor, Baltasar},
    title={Balties report}
    }
  @report{example5,
    author={Cuthor, Charlie},
    title={Charlies report}
    }   
\end{filecontents}
\bibliography{references.bib}

\begin{document}
  % lorem~\cite{example2}
  \nocite{*}
  \printbibliography
\end{document}

See section 3.3.2 and section 3.1.2.1 of the biblatex documentation:
alphabetic: This style will set the following package options at load time: labelalpha=true, sorting=anyt.

anyt will sort by label, then name, then year, then title, which should be ok, as the label is also in alphabetic order, but for some reason (maybe a bug?) it does not work as expected.

1
  • Thanks, that works. In my version of the documentation it says: The style will set the following package options at load time: autocite=inline, labelalpha=true.. Anyway, seems a bit counter intuitive.
    – Psirus
    Commented Jan 26, 2012 at 18:33

You must log in to answer this question.

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