如何根据引用期刊的语言领域将参考书目部分中的“et.al”更改为“等”

如何根据引用期刊的语言领域将参考书目部分中的“et.al”更改为“等”

如何修改 .bst 文件,使其能够根据引用期刊的语言自动将“et.al”更改为“等”?如果期刊的语言是 zh,我想用“等”代替“et.al”。

这是我的 .bst 文件的一部分

ENTRY
{
  author
  title
  publisher
  journal
  address
  year
  date
  pages
  translator
  booktitle
  institution
  country
  url
  volume
  number
  type
  id
  note
  language
}

FUNCTION {bbl.etal}
{ "et~al" }

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

感谢您的帮助!

各位,如果我没有表达清楚,请见谅。我希望在文档末尾的参考书目部分使用“et al.” 。并且我希望使用语言字段来确定 FUNCTION {bbl.etal} 的输出。

当我引用

@article{pedregosa2011scikit,
  title={Scikit-learn: Machine learning in Python},
  author={Pedregosa, Fabian and Varoquaux, Ga{\"e}l and Gramfort, Alexandre and Michel, Vincent and Thirion, Bertrand and Grisel, Olivier and Blondel, Mathieu and Prettenhofer, Peter and Weiss, Ron and Dubourg, Vincent and others},
  journal={Journal of machine learning research},
  volume={12},
  number={Oct},
  pages={2825--2830},
  year={2011},
  language={en}
}

它在参考书目部分正确显示

[1]F. Pedregosa, G. Varoquaux, A. Gramfort, et al. Scikit-learn:  Machine learning in python[J].Journal of machine learning research, 2011, 12(Oct): 2825-2830

然而,当我引用中国期刊时,就像这样

@article{何清2014大数据下的机器学习算法综述,
  title={大数据下的机器学习算法综述},
  author={何清 and 李宁 and 罗文娟 and 史忠植},
  journal={模式识别与人工智能},
  volume={27},
  number={4},
  pages={327--336},
  year={2014},
  language={zh}
}

显示“et al”而不是汉字“等”

[2]何清,李宁,罗文娟, et al.大数据下的机器学习算法综述[J].模式识别与人工智能, 2014,27(4): 327-336

另外,这不是一个错误,我只是想对“FUNCTION {bbl.etal}”做一些改进。

我对此还很陌生,再次对我的问题格式不当表示抱歉。

答案1

我明白了!

将“FUNCTION {bbl.etal}”替换为

FUNCTION {bbl.etal}
{
    language "zh" =
        { "等" }
        { "et~al" }
    if$
}

相关内容