0

I organize my source with biblatex (version 3.8, BibTeX backend) and got everything setup. This is my preamble:

\documentclass[12pt]{report}
\usepackage[utf8]{inputenc}
\usepackage{mathptmx}
\usepackage[T1]{fontenc}
\usepackage[ngerman]{babel}
\usepackage{geometry}
\usepackage[expansion, final]{microtype}
\usepackage[style=verbose-ibid, backend=bibtex, dashed=false]{biblatex}
\usepackage{csquotes}
\usepackage{setspace}

% Style Setup
\geometry{a4paper, top=25mm, left=25mm, right=40mm, bottom=25mm}
\setstretch{1.5}
\interfootnotelinepenalty=10000
\widowpenalty=10000
\clubpenalty=10000

% Chapter Style
\usepackage{titlesec}
\titlespacing{\chapter}{0pt}{0pt}{20pt}
\titleformat{\chapter}[hang] 
{\normalfont\huge\bfseries}{\thechapter.}{1em}{} 

% Bibliography Style
\bibliography{library}
\renewcommand\mkbibnamefamily[1]{\textsc{#1}}
\DeclareNameAlias{sortname}{family-given}
\DeclareNameAlias{default}{family-given}
\DefineBibliographyStrings{ngerman}{
    bibliography={Literaturverzeichnis}
}



\usepackage{filecontents}

\begin{filecontents*}{\jobname.bib}
  @book{Knu86,
    author = {Knuth, Donald E.},
    year = {1986},
    title = {The \TeX book},
  }
\end{filecontents*}

\bibliography{\jobname}



\begin{document}

\chapter{Introduction}

\noindent Some text\footcite[p. 38]{Knu86} ....
\newpage


\chapter{Second}

\noindent Some other text \footcite[p. 39]{Knu86}

\end{document}

I am using \footcite[p. x]{author2018} to create source references. Say I am on page 7 and the last citation on this page is Book B from Author A. On page 8, biblatex writes "ibid" in the footnote instead of writing the source again. But when compile the same .tex document on another computer, which uses biblatex 3.3 everything works just fine. I am guessing it's because of the biblatex version but who knows.

So I would like to fix this behavior, so that "ibid" won't be used on the following page.

  • Please note that biblatex 3.8 is also slightly outdated now, the current version is 3.11. I just completed your code into a fully working example and got the expected output (i.e. no "ibid." as first citation on a new page), but there might be something going on at your end that I don't know about. So a fully working example that reproduces your issue is required to investigate the problem further. – moewe Oct 1 '18 at 9:18
  • I am using TexShop on macOS, and just downloaded the newest version of TexLive for Mac. So I don't know if I can get any newer version than 3.8. Anyways I am just writing an example. – Codey Oct 1 '18 at 9:27
  • You should be able to update with tlmgr, see tex.stackexchange.com/q/55437/35864. (Depending on how you installed TeX live, you may not have all available updates installed on your system. If you want to make sure all packages are fully updated, you need to run tlmgr to update after you installed MacTeX/TeX live.) But I'm not sure if the difference between 3.8 and 3.11 is the explanation here. Anyway, we'll be able to say more once the MWE is ready. – moewe Oct 1 '18 at 9:31
  • Ok so something really strange happened: While writing the MWEB, I deleted the part with \DefineBibliographyStrings{ngerman}{...}, then everything worked just fine. After adding it in again it still works. But if I clean up my folder, leaving just the .tex file, and compile it completely new, then the same error appears again. I've updated my question, it now includes the MWEB – Codey Oct 1 '18 at 9:39
  • Mhhh. Does the effect show in the exact MWE as posted? Can you please include a picture of the incorrect output in the question and upload the .log to some plain-text sharing website (pastebin, hastebin, GitHub Gists, GitLab snippets, ...). I can not reproduce the issue with the current biblatex version 3.11 and also failed to reproduce the issue with biblatex 3.8. – moewe Oct 1 '18 at 10:40
1

If you use context-dependent features like pagetracker (to make sure that "ibid" does not appear as first citation on a page), the document must usually be compiled with

  1. LaTeX
  2. Biber/BibTeX
  3. LaTeX
  4. LaTeX

i.e. there must be two LaTeX runs after the Biber/BibTeX run. In very rare situations another LaTeX or even Biber/BibTeX run may be required.

You should be warned about required additional runs in the log file with a message along the lines of

Package biblatex Warning: Please rerun LaTeX.
(biblatex)                Page breaks have changed.

The message should probably say "may have changed"...

or

Package biblatex Warning: Please (re)run Biber on the file:
(biblatex)                <file name>
(biblatex)                and rerun LaTeX afterwards.

The phenomenon can be reproduced in

\documentclass[12pt]{report}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[ngerman]{babel}
\usepackage{csquotes}
\usepackage[style=verbose-ibid, backend=biber]{biblatex}
\addbibresource{biblatex-examples.bib}

\begin{document}
Lorem\footcite[380]{sigfridsson}
\clearpage
Ipsum\footcite[381]{sigfridsson}
\end{document}

On the first LaTeX run after the Biber run, the citation on page two reads "Ebd." ("ibid."), but on the second run it shows a short citation instead as expected.

The two additional LaTeX runs are necessary because biblatex's pagetracker is implemented much in the same way \label/\ref is in standard LaTeX. On a first run the page information is written to the .aux file and on the second run that information is available from the beginning of the document compilation by reading the .aux file. See Understanding how references and labels work for a great explanation how \label and \ref work (especially section 4 is interesting, because pagetracker needs to get the page numbers right, https://texfaq.org/FAQ-wrongpn, Where does \thepage kick in? and On the basics of writing to & reading from auxiliary files (.aux, .toc, etc.) explain why it is a good idea to implement a page tracker in a way similar to \label).

Avoid infinite compiler passes with biblatex ibid citation styles? has an example where "ibid" and the pagetracker cause an infinite loop of rerun requests.

| improve this answer | |

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.