BibTeX 语法有正式的定义吗?

BibTeX 语法有正式的定义吗?

我最近接到任务,提取信息并整合大量 BibTeX 文件。应该很容易,因为有 perl 和 python 模块可以解析它……嗯,我就是这么想的。结果发现,我收到的文件有各种各样的奇怪之处。我向它抛出的所有解析器都会在某些时候出错。这些文件被认为是“正确的”,因为到目前为止,bibtex 和 LaTeX 没有显示任何错误并产生预期的输出。所以,这显然是第三方解析器的问题。我试图弄清楚 bibtex 文件语法应该是什么,但只能在这里和那里找到部分和非正式的定义。我试图阅读 bibtex 源代码,考虑到它的年龄、编写它的语言(网络)以及两个手写的解析器,这不是一项容易的任务。

在我开始浪费时间之前,我想问一下是否有地方对 bibtex 文件进行了正式定义?或者,如果没有,是否有比 36 年前的 bibtex.web 更容易提取它的地方。

编辑:我已经浏览了有关 bibtex 的 tex 文档,还阅读了 LaTeX Companion 中有关 bibtex 的章节。我用 Google 搜索了所有我能想到的术语,但都没有找到任何结果。

答案1

我想推荐https://github.com/aclements/biblib。我还对命令做了一些小的修正@comment,结果如下https://github.com/zepinglee/lua-bibtex-parser

答案2

texdoc beast应该提出Tame the Beast最接近官方 bibtex 手册和规范的内容,第 15 节“bst 文件的结构”可能就是你要找的

相关内容