在 BibTeX 中使用“amsplain”样式时,它会自动在引文中打印 MathReview MR 编号。例如,如果引文条目如下所示:
@book {Babook,
AUTHOR = {Baldwin, John T.},
TITLE = {Fundamentals of stability theory},
SERIES = {Perspectives in Mathematical Logic},
PUBLISHER = {Springer-Verlag},
ADDRESS = {Berlin},
YEAR = {1988},
PAGES = {xiv+447},
ISBN = {3-540-15298-9},
MRCLASS = {03-02 (03C45)},
MRNUMBER = {918762 (89k:03002)},
MRREVIEWER = {John B. Goode},
}
然后,MRNUMBER 会打印在引文中(但不打印 MRCLASS 或 MRREVIEWER)。
我想阻止这种情况发生,即防止在引文中打印 MRNUMBER。这网站建议添加
@preamble{"\providecommand{\MR}[1]{}"}
到 *.bib 文件的开头。但这对我来说不起作用。另一个建议是编辑 amsplain.bst 文件。
有人能告诉我如何编辑 amsplain.bst 文件以便不打印 MRNUMBER 吗?或者,还有其他方法可以实现这一点吗?
注意:我想避免从我的参考文件中的每个条目中单独删除 MRNUMBER。
答案1
添加的命令@preamble
很好,但如果您使用的文档类已经定义了\MR
,它将不会被指定的内容覆盖\providecommand
。
你可以覆盖全部通过将以下内容添加到文档的序言中来实现“预定义”,尽可能在序言的后面进行管理:
\AtBeginDocument{%
\def\MR#1{}
}
当然,可以更巧妙地做到这一点,首先检查是否\MR
已经存在定义,然后根据需要使用\newcommand
或\renewcommand
,但我现在没有时间进行测试。(我也忘记了一个是否
#
足够,或者需要两个;没有任何“通常”的手册提及这一点。)