迁移到 biblatex 时出现“不完整的 \iffalse”错误

迁移到 biblatex 时出现“不完整的 \iffalse”错误

我是 LaTeX 新手,用它在 Overleaf 上写硕士论文。我们获得了一些使用 natbib 的 LaTeX 资源,但我发现我更愿意使用 biblatex 来实现 ibid 功能。我已更改:

\usepackage{natbib}
...
\bibliography{Zotero}

到:

\usepackage[natbib=true, citestyle=authoryear-ibid, bibstyle=authoryear]{biblatex}
\bibliography{Zotero}
...
\printbibliography

但我收到了错误:

/usr/share/texlive/texmf-dist/tex/latex/logreq/logreq.sty:235:
Incomplete \iffa
lse; all text was ignored after line 27.
<inserted text> 
            \fi 
l.235 \input{logreq.def}

奇怪的是,第 27 行远在 usepackage 命令之前 - 它包含一些注释文本。

我导入了一些来自大学提供的资源的 .bst 文件。如果我理解正确的话,这些文件将失效,但我不再引用它们 - 但我是否需要用其他东西替换它们?

编辑:在尝试在新项目中尽量少地重现错误时,我将问题追溯到与 \usepackage{program} 的冲突!根据我从中获取的文件,这对于引用代码很有用...

我想我的新问题是:假设我想保留包 {program},有什么办法可以解决这个问题吗?为什么会有这种冲突?(任何关于我为什么可能想要使用程序或其他替代方案的提示都欢迎作为附注 - 虽然我会自己阅读这篇文章。)

答案1

program如果我在 之前加载,则可以重现该问题biblatexprogram使 | 处于活动状态,这会导致loqref加载时出错。program稍后加载可以避免该错误,但查看 的代码,program我只能警告使用它。此包(重新)定义了大量命令,而没有检查它们是否已定义。这必然会导致问题。

改变命令的一个小例子是

\documentclass{article}
%\usepackage{program}

\begin{document}
\d{A} \t{e}{e} 
\end{document}

相关内容