Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

biblatex and \input{\jobname.bbl}

253 views
Skip to first unread message

Ronnie Marksch

unread,
Feb 20, 2017, 6:16:08 AM2/20/17
to
Hi,

I am using biblatex.
Now the editor requires some changes to the bibliography I can not
easily change in the bib file.
When using bibtex I would rename the bbl file, edit that file, and
include it in my document.
When using \input{\jobname.bbl} for the biblatex-biber created case I get:
! Undefined control sequence.
l.21 \sortlist
[entry]{nty/global/}

Is it possible to do with biblatex what I want?

Cheers!

==================================
My bbl file starts as follows.

% $ biblatex auxiliary file $
% $ biblatex bbl format version 2.7 $
% Do not modify the above lines!
%
% This is an auxiliary file used by the 'biblatex' package.
% This file may safely be deleted. It will be recreated by
% biber as required.
%
\begingroup
\makeatletter
\@ifundefined{v...@biblatex.sty}
{\@latex@error
{Missing 'biblatex' package}
{The bibliography requires the 'biblatex' package.}
\aftergroup\endinput}
{}
\endgroup


\refsection{0}
\sortlist[entry]{nty/global/}


Ulrike Fischer

unread,
Feb 20, 2017, 6:18:58 AM2/20/17
to
Am Mon, 20 Feb 2017 12:16:05 +0100 schrieb Ronnie Marksch:

> Hi,
>
> I am using biblatex.
> Now the editor requires some changes to the bibliography I can not
> easily change in the bib file.
> When using bibtex I would rename the bbl file, edit that file, and
> include it in my document.

> When using \input{\jobname.bbl} for the biblatex-biber created
> case I get:

Why would you try to use \input on the bbl after a manual change?
Why don't you let biblatex load the bbl as it does anyway?


--
Ulrike Fischer
http://www.troubleshooting-tex.de/

Ronnie Marksch

unread,
Feb 20, 2017, 7:05:51 AM2/20/17
to
Yes, you are right.
However, then I am always in danger of having the bbl overwritten using
biber.
I can not rename the bbl file because biblatex then does not find the
right file.
I tried
\begingroup
\def\jobname{main_adapted}
\printbibliography
\endgroup
but this did not work (biblatex behaved as if the file was not found)

Any ideas?
Actually, this is at the very end of the process so I do not *really*
need a perfect solution but it would be nice I guess.

Ulrike Fischer

unread,
Feb 20, 2017, 7:42:44 AM2/20/17
to
Am Mon, 20 Feb 2017 13:05:48 +0100 schrieb Ronnie Marksch:

> I tried
> \begingroup
> \def\jobname{main_adapted}
> \printbibliography
> \endgroup
> but this did not work (biblatex behaved as if the file was not found)

the bbl is read in at \begin{document}. But changing \jobname there
could affect also the aux. You could try this in the preamble:

\makeatletter
\def\blx@bblfile{%
\blx@secinit
\begingroup
\def\jobname{main_adapted}
\blx@bblstart
\blx@ifsigned{\jobname}{bbl}
{\InputIfFileExists{\jobname.bbl}
{\blx@info@noline{... file '\jobname.bbl' found}%
\global\toggletrue{blx@bbldone}}
{\blx@info@noline{... file '\jobname.bbl' not found}%
\typeout{No file \jobname.bbl.}}}
{}%
\blx@bblend
\endgroup
% global sorting as this is called at BeginDocument
\csnumgdef{blx@labelnumber@\the\c@refsection}{0}}
\makeatother

But on the whole I would at first try to make the changes you want
to do through a sourcemap or something like this so that you still
can use biber.
0 new messages