[Tex/LaTex] No citations/bibliography processed/produced when using \include

biblatexincludeinput

I use TextMate 2 to write my LaTeX documents. I've noticed that when I use \include to add chapters, my citations don't process, whereas when I use \input, they do. I would like my document to have page breaks at the chapters, thus I prefer to use \include. (The \includeonly command is also a very nice benefit.)

I compiled my document (cmd R) and noticed no .bbl was created. This is despite the fact that TextMate (with latexmk automatically runs LaTex and Biblatex multiple times for each compiling). I ran Biblatex independently. A .bbl for the main document was created, but was apparently empty, as when I compiled the document again the citations in the document did not appear, and there was no bibliography. I changed one of the chapters to \input and compiled, and the citations were processed and a bibliography (for those citations in that chapter only) was produced.

Am I doing something wrong? Why doesn't bibliographic material get produced with \include?

If I can't create a bibliography using \include, what is the easiest way to create page breaks for chapters using \input? I assume it would be to put \pagebreak before each \input command.

Best Answer

The following exmaple shows, that biblatex in conjunction with biber has no limitations in that matter and can handle included files as well. The important thing to remember is: Run biber not bibtex on the basename.bcf which contains the information on what to cite of all included files.

\documentclass{report}
\usepackage{blindtext}
\usepackage{biblatex}
\addbibresource{biblatex-examples.bib}
%a helper file
\begin{filecontents}{\jobname-Duck.tex}
    \chapter{this is some duck chapter}
    \cite{companion}
    and \blindtext
\end{filecontents}
%another helper file
\begin{filecontents}{\jobname-Peng.tex}
    \chapter{this is some penguin chapter}
    \cite{aristotle:physics}
    and \blindtext
\end{filecontents}
\begin{document}
test\cite{westfahl:space}
\include{\jobname-Peng}
\include{\jobname-Duck}

\printbibliography

\end{document}