0

This is a question which appears to pop up multiple times, but I am never quite able to get the desired answer from other questions.

I am using biblatex+biber. I would like to organise names such as van der Hofstad by H (not v). It appears that I can make this work by simply adding tex.options: useprefix = false to the bibliography data. I think I can also do this by adding useprefix = false as an optional argument to \usepackage[...]{biblatex}. My understanding is that the latter would make it a rule for every entry while the former would apply this for just the one entry.

I am more than happy to decide manually for each entry of this form. I don't have many like this and so I'd prefer to just add something to the .bib file (I use Zotero manager, so this is easy) for the ones which I'd like to do this way. Other questions/answers/comments point out that having a single rule is very complicated (compare van and Jnr). So I feel simply deciding manually in these cases is best.

Here comes the catch. I have another name, El-Baz, which for the life of me I cannot get to organise by E, rather than B. I've added/removed the useprefix option, put it as true or false. Nothing I do stops it from being ordered under B. I want it under E. [*Side note: if one should order such Israeli names under B, not E, then please inform me of this!]


I don't know how to do MWE with bibliography data, really. Here's the best that I can do.

Suppose we have names {Charles, El-Baz, van der Hofstad, Smith}. I would like them to appear in this order. In particular, Charles < El-Baz and van der Hofstad < Smith.

Again, this does not---and in fact should not---be a complicated automated system. Adding something in the style of tex.options: useprefix = false is desired.

1

What you need is the sortname option. Note that you can combine this with the useprefix option. With this option you can basically place the entry wherever you like (even in absurd places like in the example below).

\documentclass{article}
\usepackage[style=authoryear]{biblatex}
\addbibresource{foo.bib}
\addbibresource{biblatex-examples.bib}

\begin{filecontents}[overwrite]{foo.bib}
@book{charles,
    author = {El-Baz Charles},
    sortname = {augustinea},
    title = {Lorem ipsum dolor sit amet},
    year= {2020}}   

@book{hofstad,
    author = {Smith van der Hofstad},
    sortname ={wildea},
    title = {Lorem ipsum dolor sit amet},
    year= {2020}}   

\end{filecontents}


\begin{document}

\textcite{charles} is ordered after \textcite{augustine} thanks to the \texttt{sortname=augustinea} option

\textcite{hofstad} is ordered after \textcite{wilde} thanks to the \texttt{sortname=wildea} option

\printbibliography
    
\end{document}
6
  • Thanks for your response. I am finding it quite difficult to follow, though. You have combined the four names into two, which is somewhat confusing. I'm not sure who these augustinea and wildea people are? I don't see their relevant. It seems like I want to use sortname = Hofstad (to sort van der Hofstad by H(ofstad), not the van der part) and sortname = El-Baz (to sort El-Baz by E(l-Baz) not the Baz part)? I can't even get yours to compile---I just get an error: Missing \begin{document}. \begin{filecontents}[o. It seems like your answer is almost what I want! :) – Sam OT Jan 11 at 16:48
  • augustinea is an imaginary person. From the point of view of ordering it is the name that comes after Augustine. Same for wildea. Yes, with sotname=hofstad it is as if the author were called "Hofstad". – Ivan Jan 11 at 23:13
  • So what is the benefit of writing sortname=augustinea? I certainly don't want sort van der Hofstad under A... – Sam OT Jan 12 at 16:49
  • It was just an example, to show that you can place the entry wherever you like. – Ivan Jan 12 at 16:56
  • Ah, ok, thanks. As I said, your example doesn't compile for me. I'll test it in my set-up tomorrow. Bedtime now! :P – Sam OT Jan 12 at 22:40

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.