BibTeX 中定义的引用样式在哪里?

BibTeX 中定义的引用样式在哪里?

我正在尝试弄清楚如何使用我制作的自定义参考书目样式(源自 JHEP.bst)来制作自定义引用样式。具体来说,我想更改它,以便当我\cite{MyRef}在 .tex 文件中写入时,我得到的输出形式为,authour,journal,year而不是,其中是某个整数。[n]n

我不明白的是引用样式实际上在哪里定义。我认为它应该在我的 .bst 文件中指定,但我不明白在哪里。我对 JHEP.bst 所做的修改相当温和。原始文件可以找到这里

我知道之前有人问过有关 BibTeX 中自定义引用样式的问题。但是,这些问题的答案(据我所知)只是建议使用现有的合适样式来完成这项工作,例如使用 BibLaTeX 等。我正在寻找有关如何在 BibTeX 中对我现有的 .bst 文件执行此操作的建议。

答案1

在您引用的 bst 文件中,\bibitem

FUNCTION {output.bibitem}
{ newline$
  "\bibitem{" write$
  cite$ write$
  "}" write$
  newline$
  ""
  before.all 'output.state :=
}

这将为\bibitem{foo99} 具有内部键的条目生成foo99 您想要构造一个可选参数形式

\bibitem[Smith and Jones, Journal of  Zzzz, 1864]{foo99}

您可以这样做,但这将对样式进行相当大的重写,因为您必须根据条目类型和存在的字段有条件地构造这样的字符串。使用 makebst 生成一个作者日期样式的 BST 文件,然后对样式进行细微调整,几乎肯定比手动对现有 bst 文件进行这种重大结构更改更容易。

相关内容