答案1
BibTeX 程序既没有定义参考书目条目类型(例如书籍、文章、论文集、博士论文、杂项),也没有定义条目字段列表(例如标题、作者、地址、年份、月份),也没有定义条目字段对于条目类型是必需的还是强制的,或者是可选的还是忽略的。它也没有为条目字段定义任何宏或缩写(例如“nov”代表“November”)。
所有这些内容都是由您所使用的 BibTeX 样式文件(“.bst”)定义的。它类似于 TeX(程序)与宏框架(PlainTeX、LaTeX、ConTeXt)之间的关系,程序仅定义一小组原始命令,而您最终作为作者使用的宏框架(PlainTeX、LaTeX、ConTeXt)为您实现了所有复杂的事情,使文档排版更加容易。
Leslie Lamport 的 LaTeX 书(第一版 1986 年,第二版 1994 年 - “书目数据库”部分)和 Oren Patashnik 的“BibTeXing”和“设计 BibTeX 样式”文档与标准 BibTeX .bst 文件集(plain.bst、abbrv.bst、alpha.bst、unsrt.bast)结合,描述并定义了事实上的基本标准 BibTeX 条目类型、条目字段和 BibTeX 宏/缩写集,可用于许多 .bib 书目文件。
大多数较新的 .bst BibTeX 样式文件保留这些基本条目类型、字段、宏集,并添加新条目类型、新字段并添加新功能。
回到问题:
为什么我还要使用三个字母的宏以外的其他东西?
我更喜欢使用三个字母的宏来表示月份,以允许和简化特定语言的日期格式,假设所有 .bst 文件都会定义它们。
整数或字符串有没有什么合理的用例?
是的,通过外部书目条目源生成它们的内部表示更简单。如果您看到整数或字符串,我假设实现者不确定月份宏是否可以安全地用于 .bib 导出文件。
不,我认为使用整数作为月份字段值不是首选,因为 .bst 文件必须在条目类型输出函数中实现从整数到月份名称的映射。如果您想简化对不同语言的适配,固定字符串也同样适用。注意:BibLaTeX将字段“月份”描述为相应格式的整数(如果您在 .bib 条目中使用月份宏,则 BibLaTeX .bst 文件可以将宏定义为所需的整数。
为什么这些来源提倡会导致以后出现问题的格式。
主要问题在于宏/缩写是 BibTeX 的附加功能,并且没有明确的指南定义一组强制性的基本宏/缩写,这些宏/缩写可以并且应当由用户和程序在参考书目 .bib 文件中的导出功能使用,并且应当由所有 .bst 文件实现。
如果存在这样一份权威指南,那么如何处理大量现有的 .bst 文件:谁来决定哪些 .bst 已经过时,谁有能力并愿意更新仍在使用的 .bst 文件?BibTeX 权威指南中应该包含什么内容?(BibLaTeX定义了大量事物)