これは次の質問へのフォローアップですBiblatex: ジャーナルへの投稿。
コメントで指摘されているようにハーバートの答えただし、コンパイル時にエラーが発生するため、一部のユーザーはこのソリューションに問題を抱えていますUse of \blx@bbl@verbadd@i doesn't match its definition \blx@bblfile@biber ...2004} \verb {eprint} \verb cond-mat/0407066 \endverb
。
問題を絞り込みました。問題は\verb
bbl 内の「フィールド」です。それらが存在する場合 (たとえば DOI または URL)、上記のエラーがスローされます。ない限りbbl は 経由で含まれます\input
。
次の MWE を参照してください。
\documentclass[a4paper,10pt]{article}
\usepackage{biblatex}
%-------------- start insert modified commands ------------------
\makeatletter
\def\blx@bblfile@biber{%
\blx@secinit
\begingroup
\blx@bblstart
\refsection{0}
\sortlist{entry}{nty}
\entry{Agarwal2007}{article}{}
\verb{doi}
\verb 10.2139/ssrn.943524 %%--PROBLEM--%%
\endverb
\endentry
\endsortlist
\endrefsection
\blx@bblend
\endgroup
\csnumgdef{blx@labelnumber@\the\c@refsection}{0}}
\makeatother
%-------------- end insert modified commands --------------
\begin{document}
Some words \cite{Agarwal2007}.
\printbibliography
\end{document}
コメントしないとコンパイルは機能しません\verb 10.2139/ssrn.943524
。
編集:BBLを生成するコードは
@article{Agarwal2007,
author = {Agarwal, S.},
doi = {10.2139/ssrn.943524},
year = {2006}
}
答え1
問題のある部分は外部ファイルにあるはずです。そのため、filecontents-environment を使用してそれを作成します。
\documentclass[a4paper,10pt]{article}
\usepackage{biblatex}
\usepackage{filecontents}
\begin{filecontents}{testinput-bbl.bbl}
\refsection{0}
\sortlist{entry}{nty}
\entry{Agarwal2007}{article}{}
\verb{doi}
\verb 10.2139/ssrn.943524
\endverb
\endentry
\endsortlist
\endrefsection
\end{filecontents}
%-------------- start insert modified commands ------------------
\makeatletter
\def\blx@bblfile@biber{%
\blx@secinit
\begingroup
\blx@bblstart
\input{testinput-bbl.bbl}%<------------
\blx@bblend
\endgroup
\csnumgdef{blx@labelnumber@\the\c@refsection}{0}}
\makeatother
%-------------- end insert modified commands --------------
\begin{document}
Some words \cite{Agarwal2007}.
\printbibliography
\end{document}
2017年4月編集
biblatex の変更により、\blx@bblfile@biber
コマンドが存在しなくなったため、 の再定義は機能しなくなりました。以下は代替品です。これは古い biblatex でも機能するはずです。また、bbl の内容が biblatex バージョンに適合しない場合は警告が出されます。
\documentclass[a4paper,10pt]{article}
\usepackage{biblatex}
\usepackage{filecontents}
%Use the starred version of filecontents to avoid comments in the written file
%Insert the complete bbl in the environment including the starting comments!
\begin{filecontents*}{testinput-bbl.bbl}
% $ biblatex auxiliary file $
% $ biblatex bbl format version 2.8 $
% 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{[email protected]}
{\@latex@error
{Missing 'biblatex' package}
{The bibliography requires the 'biblatex' package.}
\aftergroup\endinput}
{}
\endgroup
\refsection{0}
\sortlist[entry]{nty/global/}
\entry{doody}{article}{}
\name{author}{1}{}{%
{{hash=936cee5fdd47aac6238f650db8b23a07}{%
family={Doody},
familyi={D\bibinitperiod},
given={Terrence},
giveni={T\bibinitperiod}}}%
}
\strng{namehash}{936cee5fdd47aac6238f650db8b23a07}
\strng{fullhash}{936cee5fdd47aac6238f650db8b23a07}
\strng{authornamehash}{936cee5fdd47aac6238f650db8b23a07}
\strng{authorfullhash}{936cee5fdd47aac6238f650db8b23a07}
\field{sortinit}{D}
\field{sortinithash}{d10b5413de1f3d197b20897dd0d565bb}
\field{labelnamesource}{author}
\field{labeltitlesource}{title}
\field{annotation}{An \texttt{article} entry cited as an excerpt from a \texttt{collection} entry. Note the format of the \texttt{related} and \texttt{relatedstring} fields}
\field{journaltitle}{The Journal of Narrative Technique}
\field{langid}{english}
\field{langidopts}{variant=american}
\field{number}{3}
\field{relatedstring}{\autocap{e}xcerpt in}
\field{title}{Hemingway's Style and {Jake's} Narration}
\field{volume}{4}
\field{year}{1974}
\field{related}{1e63d4bbc14872275675171be2dfa906}
\field{pages}{212\bibrangedash 225}
\range{pages}{14}
\endentry
\entry{1e63d4bbc14872275675171be2dfa906}{collection}{dataonly}
\name{editor}{1}{}{%
{{hash=cf369effe2b1de0066543cc38f7f8369}{%
family={Matuz},
familyi={M\bibinitperiod},
given={Roger},
giveni={R\bibinitperiod}}}%
}
\list{location}{1}{%
{Detroit}%
}
\list{publisher}{1}{%
{Gale}%
}
\strng{namehash}{cf369effe2b1de0066543cc38f7f8369}
\strng{fullhash}{cf369effe2b1de0066543cc38f7f8369}
\strng{editornamehash}{cf369effe2b1de0066543cc38f7f8369}
\strng{editorfullhash}{cf369effe2b1de0066543cc38f7f8369}
\field{sortinit}{M}
\field{sortinithash}{c26a05ef03e4429073ed5c825140fac3}
\field{labelnamesource}{editor}
\field{labeltitlesource}{title}
\field{clonesourcekey}{matuz:doody}
\field{annotation}{A \texttt{collection} entry providing the excerpt information for the \texttt{doody} entry. Note the format of the \texttt{pages} field}
\field{langid}{english}
\field{langidopts}{variant=american}
\field{title}{Contemporary Literary Criticism}
\field{volume}{61}
\field{year}{1990}
\field{pages}{204\bibrangedash 208}
\range{pages}{5}
\endentry
\endsortlist
\endrefsection
\endinput
\end{filecontents*}
\usepackage{xpatch}
%Patch the biblatex input command.
%replace "testinput-bbl" if you change the name above.
%disable if you want to run biblatex/biber normally
\makeatletter
\patchcmd\blx@bblinput{\blx@blxinit}
{\blx@blxinit
\def\jobname{testinput-bbl}%new jobname
}{}{\fail}
\makeatother
\addbibresource{biblatex-examples.bib} %not needed but doesn't harm either
\begin{document}
Some words \cite{doody}.
\printbibliography
\end{document}
答え2
2つの動詞行に使用します::
...
\field{doi}{10.2139/ssrn.943524}
...
私の場合はうまくいきました: