如何删除 IEEEtr.bst 文件中卷和数字之间的逗号

如何删除 IEEEtr.bst 文件中卷和数字之间的逗号

我刚刚开始修改我的ieeetr.bst文件。

我可以在参考书目中切换我的(期刊文章)作者的名字和姓氏。我还想将卷号和期号显示为1(1)而不是vol. 1, no. 1。到目前为止,我只能显示1, (1)

有什么想法可以让我去掉空格和逗号吗?

答案1

在您的副本中,ieeetr.bst您可能将函数修改format.volume

FUNCTION {format.volume}
{ volume empty$
    { "" }
    %{ "vol.~" volume * } %% original
    { volume }
  if$
}

并将函数format.number转换为

FUNCTION {format.number}
{ number empty$
    { "" }
    %{ "no.~" number * }   %% original
    { "(" number * ")" * } %% new
  if$
}

为了去掉逗号以及体积和数字之间的空格,我们必须通过指定不同的输出状态来告诉 BibTeX 我们不在“句子”的中间:

FUNCTION {article}
{ output.bibitem
  format.authors "author" output.check
  format.title "title" output.check
  blank.sep
  crossref missing$
    { journal emphasize "journal" output.check
      format.volume output
      month empty$
    { before.all 'output.state := %% added
    format.number output }
    'skip$
      if$
      format.pages output
      format.date "year" output.check
    }
    { format.article.crossref output.nonnull
      format.pages output
    }
  if$
  new.block
  note output
  fin.entry
}

答案2

我建议使用custom-bib包裹。

它开始处理通用.bst文件并生成自定义文件。Commandlatex makebst.tex将询问您大量问题以定义参考书目样式的每个参数。

可能您需要运行两次或更多次才能获得所需的结果,但至少对我来说,这个解决方案比学习.bst文件如何编码更容易。

相关内容