当添加类似的引用时,.bib 文件中的先前引用会更改名称(引用关键字正在更改)

当添加类似的引用时,.bib 文件中的先前引用会更改名称(引用关键字正在更改)

这个问题可能更多地指向 Zotero 及其导出到 .bib 文件的方式,但无论如何我都会尝试。

我正在 Overleaf 中编写 LaTeX 文档,并使用 Zotero 中的组库。使用组库的外部 URL 将参考文献导入 Overleaf (解释如下),在 Overleaf 中显示为“references.bib”。

当引用某个公司的官方网站时,通常不指定书面日期(留空),而是在访问字段中将今天的日期输入到 Zotero 中。

文档的标题通常是“COMPANYNAME blabla”。因此命令将如下所示:\cite{COMPANYNAME COMPANYNAME nodate}。当稍后从同一网站添加另一个来源(但来自同一家公司的不同文章/页面)时,较旧的来源因此被称为“COMPANYNAME COMPANYNAME nodate-1”,从而使先前的脚注指向较新的来源,即错误的来源。

我该如何避免这种情况?

我正在使用的包/配置:

\bibliographystyle{IEEEtran}
\usepackage[backend = biber,    % Recommended backend for sorting bibliography
            %style = IEEEtran,    % Close to the 'Harvard' referencing style
            urldate = long,     % Long: 24th Mar. 1997 | Short: 24/03/1997
            maxcitenames = 2,   % Number of authors in cite before replaced with 'Author#1 et al.'
            ]{biblatex}
\addbibresource{references.bib}     % Adding our file containing the references

例子:

如果我要写一篇关于兰博基尼Aventador的陈述,我会这样做:

“Aventador 是一款快车\cite{lamborghini_lamborghini_nodate}。”

当我稍后将 Laborghini 的第二个来源(本例中为 Urus 页面)添加到 Zotero 时,它将在 references.bib 文件中被称为“lamborghini_lamborghini_nodate”。旧的 aventador 来源将被称为“lamborghini_lamborghini_nodate-1”。

这将导致我之前写的声明(并引用 Aventador 页面)现在指向错误的来源(Urus 页面)。

references.bib 文件中的这两个示例:

以 Lamborghini.com 为例

答案1

根据@alchemist 的帮助,我找到了一个适用于这种情况的解决方案。

Better BibTex 确实取得了很大进展,因为它引入了一种更好的处理引用键的方法,该方法考虑了已经存在的键。但是,当将 .bib 文件导入 Overleaf 时,唯一可用的格式是 BibTeX 和 BibLaTeX(而不是 Better BibTex / Better BibLaTeX)。

我通过使用解决了这个问题更好的 BibTeX 自动导出。导出的文件保存在 Google Drive 中(Better BibLaTex 格式),并选中“保持更新”选项。然后通过“通过 URL 导入”将文件导入 Overleaf创建直接下载来自 Google Drive 文件夹的链接。

由于这是一个使用小组库的小组项目,为了让所有成员都能将库刷新到 Overleaf,所有小组成员都被授予了访问 Google Drive 文件夹的权限,并以前面提到的相同方式导出 .bib 文件。通过对 .bib 文件使用相同的文件夹和相同的文件名,每次有人刷新时 .bib 文件都会被覆盖,并且 URL 导入到 Overleaf 仍将正常工作。

答案2

有一件事让我感到很奇怪,那就是你引用 IEEE 引用格式的方式。根据这个问题如何使用符合 IEEE bibtex 风格的 biblatex?的使用\bibliographystyle{IEEEtran}与之冲突biblatex

正确的用法IEEE-style应该是使用选项中的注释行:style=ieee,它应该告诉biblatex您加载包biblatex-ieee。当不确定它是否已加载(或是否存在于 Overleaf 中)时,您也可以明确加载该包。

Zotero插件Better BibTeX明确指出,它将生成唯一的引用键,同时保持现有键的完整性。因此,在将类似项目添加到 Zotero 库时,此插件可防止键发生更改。该Better BibTeX插件可在https://retorque.re/zotero-better-bibtex/以及有关安装和使用该插件的信息。

相关内容