是否可以使用 biber 在工具模式下缩短作者列表?

是否可以使用 biber 在工具模式下缩短作者列表?

我正在处理一份文档,其中的一些参考文献是与大量作者合作的论文。Biber 生成巨大的 bbl 文件(约 8 MB),导致 pdflatex 失败(超出 TeX 容量,抱歉 [主内存大小=5000000])。

由于某些原因,我不能使用 lualatex 代替 pdflatex。

是否可以在“工具”模式下使用 biber,以便缩短作者列表并用“和其他人”替换省略的作者?

不幸的是,我在 biber 文档中的 sourcemap 函数描述中找不到这样的选项。

答案1

我已经分析过tex.stackexchange.com/q/401818/35864例如,我已经将该解决方案调整为最多 4 位作者。

我已经创建了 biber.conf 文件:

<?xml version="1.0" encoding="UTF-8"?>
<config>
<sourcemap>
  <maps datatype="bibtex" map_overwrite="1">
    <map map_overwrite="1">
     <map_step map_field_source="AUTHOR"
      map_match="\A(.+?)\s+and+(.+?)\s+and+(.+?)\s+and+(.+?)\s+and+\s.*"
      map_replace="$1 and $2 and $3 and $4 and others"/>
   </map>
  </maps>
</sourcemap>
</config>

然后我跑了:

biber --tool references.bib

之后,我得到了包含正确截断的作者列表的 references_bibertool.bib 文件。当然,正如 moewe 在其评论中所述,该解决方案可能对作者姓名中带括号保护的“and”敏感。

相关内容