# Ordering bibliography is not working

I recently asked a question to know how to modify the order of bibliography, as one of the authors had a compound name and didn't appear (alphabetically) where it should be.

The question was this, and it has an answer here.

When I first did it it worked, but for some reason it doesn't work now. I have at the beggining of my .bib file the line

@preamble{"\providecommand{\noop}[1]{}"}


And when including that reference, I have;

author = {\noop{Gathen} Joachim von zur Gathen and Jürguen Gerhard}


When I compile via latex,biblatex,latex,latex. It appears like this in the references part:

Between the N and the P. Why is this?

I'm using the article class. Is there something wrong with that?

I suppose it's with how I write the name, as the style I'm using abbreviates the first name of all authors, but is keeping this one full (Joachim).

EDIT: I include a MWE:

\documentclass[a4paper]{article}
\usepackage[utf8]{inputenc}
\usepackage[spanish,english,es-tabla]{babel}

\begin{document}
\cite{CA}, \cite{NAT}, \cite{UC}.

\bibliographystyle{abbrv}
\bibliography{bibliography}
\end{document}


The bib file would contain:

@Book{UC,
author = {Christof Paar and Jan Pelzl},
title = {Understanding Cryptography},
publisher = {Springer},
year = {2010}
}

@Book{CA,
author = {\noop{A} {von zur Gathen}, Joachim and Jürguen Gerhard},
ALTeditor = {•},
title = {Modern Computer Algebra},
publisher = {Cambridge Univ. Press},
year = {2003},
edition = {second}
}

@Book{NAT,
author =   {Melvyn B. Nathanson},
ALTeditor =    {},
title =        {Elementary methods in Number Theory},
publisher =    {Springer},
year =         {2000}}


That reproduces the same order as in the picture above.

• very silly question ... did you delete the .bbl file and rerun bibtex after making the change in the .bib file? another silly question ... have you tried the arrangement with the comma and the braces around {von zur Gathen} without the \noop? that looks like the "prescribed" format to me. – barbara beeton Jun 21 '15 at 12:21
• @barbarabeeton Removing the bbl does not change anything. Removing the \noop puts it at the end of the references, sorting it by the 'v', where it should be sorted by the 'G' – MyUserIsThis Jun 21 '15 at 12:24
• okay. bibtex is supposed to ignore "particles" (like "von" and "zur") so omitting the braces and just using the comma format has a good chance of giving you what you want. by the way, the only reason i can think why this name would sort between "Na" and "P" is that the string "noop" is being taken literally; i'm not sure how bibtex handles that coding, and i've never used it for an author's name. – barbara beeton Jun 21 '15 at 12:30

## 2 Answers

You should put the whole \noop{...}{...} in braces:

\begin{filecontents*}{\jobname.bib}
@Book{UC,
author = {Christof Paar and Jan Pelzl},
title = {Understanding Cryptography},
publisher = {Springer},
year = {2010},
}

@Book{CA,
author = {{\noop{Gathen}{von zur Gathen}}, Joachim and Jürguen Gerhard},
title = {Modern Computer Algebra},
publisher = {Cambridge Univ. Press},
year = {2003},
edition = {second},
}

@Book{NAT,
author =   {Melvyn B. Nathanson},
title =        {Elementary methods in Number Theory},
publisher =    {Springer},
year =         {2000},
}
\end{filecontents*}

\documentclass[a4paper]{article}
\usepackage[utf8]{inputenc}
\usepackage[spanish,english,es-tabla]{babel}

\providecommand{\noop}[2]{#2}

\begin{document}
\cite{CA}, \cite{NAT}, \cite{UC}.

\bibliographystyle{abbrv}
\bibliography{\jobname}
\end{document}


I used filecontents* just to make the example self-contained, use a separate file without worries.

• I accept this answer as being the easiest way to solve it. Thank you very much – MyUserIsThis Jun 21 '15 at 12:48

If you compile with bilatex+biber you don't need \noop nor braces:

\documentclass[a4paper]{article}
\usepackage[utf8]{inputenc}
\usepackage[spanish,english,es-tabla]{babel}
\usepackage{filecontents}

\begin{filecontents}{mybib.bib}
@Book{UC,
author = {Christof Paar and Jan Pelzl},
title = {Understanding Cryptography},
publisher = {Springer},
year = {2010}
}

@Book{CA,
author = {von zur Gathen, Joachim and Jürguen Gerhard},
ALTeditor = {•},
title = {Modern Computer Algebra},
publisher = {Cambridge Univ. Press},
year = {2003},
edition = {2}
}

@Book{NAT,
author = {Melvyn B. Nathanson},
ALTeditor = {},
title = {Elementary methods in Number Theory},
publisher = {Springer},
year = {2000}}
\end{filecontents}

\usepackage[firstinits]{biblatex}
\addbibresource{mybib.bib}

\begin{document}

\cite{CA}, \cite{NAT}, \cite{UC}.

\printbibliography

\end{document}