3

I'm trying to submit a paper online, and it causes errors BibTex since the online compiler only runs a single pass of pdfLaTeX. The journal recommends including the .bbl directly into the .tex file, and since I'm using Overleaf, I followed these directions. Unfortunately, I get Undefined control sequence errors on the copy-pasted .bbl text.


My Code

\documentclass[titlepage, 10pt, a4paper, twocolumn]{article}
\usepackage{url}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{authblk}
\usepackage[backend=biber]{biblatex}
\usepackage{graphicx}
\usepackage[none]{hyphenat}
\usepackage{tikz}
\usepackage{mathtools}
\usepackage{standalone}
\usepackage{etoolbox}

\addbibresource{sample.bib}
\makeatletter
\patchcmd{\thebibliography}{
  \chapter*{\bibname}\@mkboth{\MakeUppercase\bibname}{\MakeUppercase\bibname}}{
  \section{References}}{}{}
\makeatother

...

\let\stdsection\section
\def\section*#1{\stdsection{#1}}

\printbibliography[title={References}]

\let\section\stdsection

I comment out everything from \addbibresource{sample.bib} to \makeatother and everything from \let\stdsection\section to \let\section\stdsection, then I paste in the contents of the .bbl file below the ....


Among other issues, the first error I get in Overleaf is

l.401 \sortlist[entry]{nty/global/} The control sequence at the end of the top line of your error message was never \def'ed. If you have misspelled it (e.g., \hobx'), type I' and the correct spelling (e.g., I\hbox'). Otherwise just continue, and I'll forget about whatever was undefined.

What am I missing? The explanation didn't mention that I had to include any extra packages once I copied the .bbl file over, but now it looks like there's thousands of undefined control sequences.

4
  • 3
    Please have a look at tex.stackexchange.com/q/12175/35864 which is specifically for biblatex. The Overleaf page you linked to is for BibTeX only. The approaches of BibTeX and biblatex are different and require different uses of the .bbl file. Even if you get your file to compile, chances are the publisher cannot accept a biblatex submission.
    – moewe
    Sep 22, 2018 at 20:49
  • 3
    I double-checked that the way described in tex.stackexchange.com/q/12175/35864 still works in principle. But as explained in tex.stackexchange.com/q/410512/35864 and elsewhere, biblatex is extremely sensitive to version changes in the .bbl file. That means that this can only work if your biblatex version and the version that your publisher uses are the same. That is quite unlikely.
    – moewe
    Sep 22, 2018 at 20:52
  • @moewe Would you recommend I use BibTex instead? Sep 22, 2018 at 20:53
  • 3
    If you mean to use backend=bibtex instead of backend=biber as option for biblatex then no: That won't really bring any measurable improvement in general. If you mean to drop biblatex entirely and go back to BibTeX's \bibliographystyle and \bibliography (and cite or natbib if you like), then yes that is the far better option for journal submissions. (But even there you should double check the author guidelines of your publisher.)
    – moewe
    Sep 22, 2018 at 20:55

1 Answer 1

6

The instructions from Overleaf (https://www.overleaf.com/help/219) are specifically for use with BibTeX-based bibliographies. Herbert's answer to Biblatex: submitting to a journal explains how you could do something similar with biblatex.

For most intents and purposes, however, that will not work as intended. Unlike with BibTeX-based bibliographies, where the .bbl file contains ready-to-typeset material, biblatex's .bbl files contain the rehashed raw data in a LaTeX-readable format. The exact format of biblatex's .bbl file will depend on the biblatex and Biber version. The .bbl file on your machine can only be understood by systems with the same biblatex version (well, actually the same internal .bbl file version; biblatex development is still ongoing, so there is no stable state of affairs yet). See Matching biblatex in two machines, Making the arXiv accept a BibTeX BBL (May 2018) and Which biblatex/biber version produces BBL format 2.8? for more background on this.

In fact copying biblatex's .bbl file into your .tex document makes your document less portable. By using internal commands in your .tex file you effectively restrict the possible versions of biblatex that you could use, because biblatex is sensitive to changes in these internal macros. The user interface on the other hand is stable when it comes to high-level features and changes are usually attempted in a backwards compatible way (unfortunately, that does not always work out). So while it is possible to include a biblatex .bbl into a .tex file it usually does more harm than good.

Additionally, it is not guaranteed that publishers can deal with biblatex submissions anyway (see Joseph's answer to Biblatex: submitting to a journal). For journal submissions it is usually safer to use the provided classes (if any) or use standard classes and simple BibTeX or a manual thebibliography.

The bottom line is that for journal submissions your best chance is still good old BibTeX with \bibliographystyle and \bibliography.

The difficulties with the arXiv demonstrate that if publishers want to support biblatex they should accept uploading .bib files. User-submitted .bbl files only cause version conflicts and pain. That would mean, however, that they would have to run LaTeX and Biber on the submitted files, which would significantly complicate their workflow. I don't see that happening any time soon.

Note that using BibTeX as backend for biblatex has the same issues as using Biber since the use of the .bbl file is the same and the format is only very slightly different, so simply switching to backend=bibtex in biblatex will not bring measurable improvement.

You must log in to answer this question.

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