有没有办法覆盖特定条目的bibtex样式文件?

Dav*_*own 11 latex bibtex

我首选的bibtex风格文件引用作者的姓名缩写.但是,有各种文本应该以不同的方式引用(例如,Elements Geometrie Algebrique应该始终被引用为[EGA]).我知道如何在bibtex输出的.bbl文件中修改它,但是我必须为每个文件执行此操作.有没有办法从我的.bib文件中执行此操作?

Nor*_*sey 7

我首选的bibtex风格文件引用作者的姓名缩写.但是,有各种文本应该以不同的方式引用......

我希望我不会因此而受到抨击,但您首选的bibtex风格文件并不能很好地为您的读者服务.我的工作的一部分是审查论文,像[GKS]这样的首字母缩写并不像[Guibas,Knuth和Sharir 1990]那样完整的作者日期引用.对于知识渊博的读者来说,作者和日期经常使得参考参考书目成为不必要的.对于一个天真的读者来说,一组名字比一组字母更容易记住,特别是当一个或多个名字可能熟悉时.这些问题将通过例如芝加哥风格手册进行详细讨论,该手册解释了从专业文献中引用的正确方法.

我继续这么长,因为我相信你正在解决错误的问题.虽然我相信你的读者会很快认出[EGA],但我希望他们也能认出(格洛腾迪克1960)或(Grothendieck和Dieudonné1967).

我可以通过更改.bib文件来[修改作品的引用方式] 吗?

如果您想使用任何标准BibTeX样式,则不会.BibTeX使用世界上最差的编程语言之一,标准程序非常坚定地使用作品的作者或编辑来形成引用键.如果你真的想这样做,我推荐以下程序:

  1. 克隆并修改plainnat.bst文件之类的内容.这将使您能够创建新的"参考书目风格".

  2. 创建一种新类型的BibTeX条目,使您可以使用特殊字段指定引文键(key是一种流行的选择).

  3. 改变calc.label功能,使用新类型的条目做正确的事情.如果你很幸运,改变calc.label就足以确保事情正确分类.

  4. 在您的.bib文件中使用非标准类型,并\bibliographystyle{...}在所有LaTeX文档中使用非标准类型.

众神真的不希望你这样做 - 你的共同作者也不会......

  • @Charles:作为编程语言的专家,他拥有简单的后缀语言以及更多通用编程语言的丰富经验,我坚持我对BibTeX的主张.只要采用PostScript批发,Oren会做得更好(虽然这可能需要一点时间旅行).关于`key`的好建议虽然. (3认同)

Cha*_*art 3

您可以修改 .bst 程序,以便它查找附加字段(例如 shown-key),如果设置了该字段,则使用该字段而不是通常的字段。