將 BibTeX 風格的編輯器(小寫)更改為編輯器(斜體),類似於 apalike

將 BibTeX 風格的編輯器(小寫)更改為編輯器(斜體),類似於 apalike

我正在努力使 BibTeX 符合特定期刊的標準(它們與 APA 非常相似)。我使用可愛的套件 custom-bib 建立了一個自訂 .bst 文件,除了兩件事外,它運作得很好。

對於一本沒有作者但有編輯的書,我的 .bst 文件生成

Cook, E. 與 Kariukstis, L.(編),1990 年。樹木年代學方法:在環境科學中的應用, 克魯威爾學術出版社

但我希望它產生

Cook, E. 與 Kariukstis, L.(編輯),1990。

請注意(編輯)的區別以及標題斜體的缺失。我知道如果沒有實際的 .bst 文件,這是無法重現的,但我希望有人能給我正確的方向。也許以下功能是相關的。 BST 文法對我來說很難理解。

FUNCTION {bbl.editors}
{ "editors" }

FUNCTION {format.editors}
{editor "editor" format.names duplicate$ empty$ 'skip$
    {
      " " *
      get.bbl.editor
   "(" swap$ * ")" *
      *
    }
  if$
}

FUNCTION {format.names}
{ 'bibinfo :=
  duplicate$ empty$ 'skip$ {
  's :=
  "" 't :=
  #1 'nameptr :=
  s num.names$ 'numnames :=
  numnames 'namesleft :=
    { namesleft #0 > }
    { s nameptr
      "{vv~}{ll}{, jj}{, f{.}.}"
      format.name$
      bibinfo bibinfo.check
      't :=
      nameptr #1 >
        {
          namesleft #1 >
            { ", " * t * }
            {
              s nameptr "{ll}" format.name$ duplicate$ "others" =
                { 't := }
                { pop$ }
              if$
              numnames #2 >
                { "," * }
                'skip$
              if$
              t "others" =
                {
                  " " * bbl.etal *
                }
                {
                  bbl.and
                  space.word * t *
                }
              if$
            }
          if$
        }
        't
      if$
      nameptr #1 + 'nameptr :=
      namesleft #1 - 'namesleft :=
    }
  while$
  } if$
}

相關內容