以下 MWE 可以在 Overleaf 上编译,但不能在我本地的 MiKTeX 安装上编译。它无需命令即可运行\newrefsection
。使用命令时,我收到未定义的引用警告以及警告“请在文件上(重新)运行 BibTeX:(biblatex)minimal1-blx(biblatex)minimal2-blx(biblatex)然后重新运行 LaTeX。”这里,minimal.tex 是我机器上 MWE 的文件名。如何在这些文件上运行 BibLaTeX,以及如何自动化它以使其适用于任意数量的部分?
\documentclass{beamer}
\usepackage[backend=bibtex, style=authoryear]{biblatex}
\begin{filecontents*}{biblio.bib}
@article{A:2022,
author = {A},
title = {xx},
year = {2022},
journal = {zz}}
@article{B:2022,
author = {B},
title = {yy},
year = {2022},
journal = {zz}}
\end{filecontents*}
\addbibresource{biblio.bib}
\begin{document}
\section{First Section}\newrefsection
\begin{frame}
\textcite{A:2022}
\end{frame}
\begin{frame}
\printbibliography[heading=none]
\end{frame}
\section{Second Section}\newrefsection
\begin{frame}
\textcite{B:2022}
\end{frame}
\begin{frame}
\printbibliography[heading=none]
\end{frame}
\end{document}
答案1
我如何在这些文件上运行 BibLaTeX
您正在使用backend=bibtex
biblatex 的选项。因此,您必须运行bibtex
而不是biber
biblatex 通常使用的 。对于您的文档,编译顺序应类似于
pdflatex minimal
bibtex minimal1-blx
bibtex minimal2-blx
pdflatex minimal
(我认为 texmaker 没有为此预定义命令,您可能必须从命令行手动执行此操作)
我怎样才能使其自动化,以便它适用于任意数量的部分?
您可以使用以下方式编译文档
latexmk minimal
这将自动运行所有必需的工具(这也是 overleaf 用来编译您的文档的工具)。