如何在没有 biblatex 包的情况下抑制特定的 bibtex 条目(例如语言)

如何在没有 biblatex 包的情况下抑制特定的 bibtex 条目(例如语言)

是否可以在 biblatex 中抑制 bibtex .bbl 中的特定字段?有人提出了相关问题。以下可以抑制语言字段出现在输出中,当比布拉特克斯包存在。

\AtEveryBibitem{\clearlist{language}} % clears language

如何在不使用 biblatex 包的情况下(即在纯 bibtex 中)实现此抑制?我使用的amsplain是 bibtex 样式。bibtex 文件类似于以下内容(由https://zbmath.org/):

@Article{zbMATH02658504,
    Author = {A. {Einstein}},
    Title = {{Eine Theorie der Grundlagen der Thermodynamik.}},
    FJournal = {{Annalen der Physik, IV. Folge}},
    Journal = {{Ann. der Phys. (4)}},
    ISSN = {0003-3804},
    Volume = {11},
    Pages = {170--187},
    Year = {1903},
    Publisher = {Johann Ambrosius Barth, Leipzig},
    Language = {German},
    Zbl = {34.0962.01}
}

答案1

amsplain.bst

% The extra section to write out a language field was added
% for AMSPLAIN.BST.  Not present in plain.bst.

FUNCTION {format.language}
{ language empty$
    { "" }
    { " (" language * ")" * }
  if$
}

这将测试语言字段是否为空,并且不执行任何操作或将其输出()

因此如果你复制该文件并命名为 sayxamsplain.bst并使用

\bibliographystyle{xamsplain}

然后修改定义总是不做任何事

FUNCTION {format.language}
    { "" }

相关内容