使用 bibtool 和 biblatex

使用 bibtool 和 biblatex

我正在尝试使用比布工具从辅助文件中提取参考书目信息。我使用这个 MWE:

\documentclass[12pt]{article}
\usepackage{filecontents}
\begin{filecontents}{foo.bib}
@Book{dickens,
    author={Charles Dickens},
    title={A Tale of Two Cities},
    year=1859,
    publisher={Chapman and Hall}
  }
\end{filecontents}
\usepackage[style=verbose]{biblatex}
\bibliography{foo}

\begin{document}
\cite{dickens}

\end{document}

当我跑步时:

bibtool -x test.aux -o refs.bib

我收到以下错误:

*** BibTool WARNING:  (line 2 in ./test-blx.bib): 23 non-space characters ignored.

*** BibTool WARNING:  (line 9 in ./test-blx.bib): 168 non-space characters ignored.

@Control{biblatex-control,
_^
*** BibTool ERROR:  (line 9 in ./test-blx.bib): Unknown entry type

*** BibTool WARNING: Skiping to next '@'

*** BibTool WARNING:  (line 5 in ./foo.bib): 96 non-space characters ignored.

test.aux的如下:

\relax 
\bibstyle{biblatex}
\bibdata{test-blx,foo}
\citation{biblatex-control}
\citation{dickens}
\@writefile{toc}{\boolfalse {citerequest}\boolfalse {citetracker}\boolfalse {pagetracker}\boolfalse {backtracker}\relax }
\@writefile{lof}{\boolfalse {citerequest}\boolfalse {citetracker}\boolfalse {pagetracker}\boolfalse {backtracker}\relax }
\@writefile{lot}{\boolfalse {citerequest}\boolfalse {citetracker}\boolfalse {pagetracker}\boolfalse {backtracker}\relax }
\abx@aux@page{1}{1}

我推测这个问题是因为这个工具是为 bibtex 而不是 biblatex 编写的。有没有办法用这个工具来提取信息,或者有没有办法提取我需要的书目信息?

答案1

也许这不能直接解决您的问题,但正如您已经在使用的那样biblatex,可能是以下答案所概述的biber替代方案:bibtoolhttps://tex.stackexchange.com/a/145168/84655

如果test.tex是你的乳胶文档,只需运行

biber test --output_format bibtex

您将获得一个名为 的文件,test_biber.bib其中包含 中引用的条目test.tex

答案2

我找到了答案。将文件中的更改\bibstyle为,然后删除该行。同时从该行中删除。 现在应该能够像往常一样读取您的参考书目。plain.aux\citation{biblatex-control}test-blx.bib\bibdatabibtool

相关内容