# [tex-k] bibtex should print the path of the bib files it uses

Manuel López-Ibáñez manuel.lopez-ibanez at ulb.ac.be
Thu Apr 16 13:49:42 CEST 2015

Dear BibTeX maintainers,

I just wasted a few hours for something that could have been caught earlier if
BibTeX printed the full path to the bib files it uses. Small testcase:

$cat <<EOF >test.tex \documentclass{article} \begin{document} \cite{X} \bibliographystyle{plain} \bibliography{000O} \end{document} EOF$ cat <<EOF >/tmp/000O.bib
@misc{X,
title =        "Wrong one"
}
EOF
$export BIBINPUTS=/tmp/:.$ pdflatex test.tex
\$ bibtex test.aux
This is BibTeX, Version 0.99d (TeX Live 2013/Debian)
The top-level auxiliary file: test.aux
The style file: plain.bst
Database file #1: 000O.bib

Now the problem is that if the search patch is set by other means (for example
by the distribution) and if I actually meant to include 0000.bib (note the typo
in the last character). I will have a hard time figuring out that the 000O.bib
included by bibtex is actually /tmp/000O.bib and not ./000O.bib. The latter
would have resulted in an error and then I would have noticed the typo.

The above is distilled from a real user-case in Ubuntu GNU/Linux where the file
/usr/share/texlive/texmf-dist/bibtex/bib/computational-complexity/journals.bib
is included by default and if I had intended to use ./journals.bib but my file
was misnamed ./journal.bib, then bibtex does not gives me any hint that
something is wrong.

What I would expect above is:

This is BibTeX, Version 0.99d (TeX Live 2013/Debian)
The top-level auxiliary file: test.aux
The style file: plain.bst
Database file #1: /tmp/000O.bib

that is, for bibtex to print the path to the file it uses. I would go as far as
to suggest the same for "The style file:".

BibTeX 0.99d (TeX Live 2013/Debian)
kpathsea version 6.1.1

Thanks,

Manuel.