有没有办法永久设置\bf
为\textbf
?我使用的 .bbl 文件使用 \bf,这会导致错误,我不得不手动将每个条目重置为 \textbf。每次我添加新的引文时,每次 .bbl 文件发生变化时,我都必须重做所有事情,否则我无法继续工作。例如以下内容:
\harvarditem{Wurm}{2004}{Wurm2004}
Wurm, F.~M. \harvardyearleft 2004\harvardyearright , `{Production of
recombinant protein therapeutics in cultivated mammalian cells}', {\em Nature
Biotechnology} {\bf 22}(11),~393--398.
\newline\harvardurl{https://doi.org/10.1038/nbt1026}
\documentclass[12pt,a4paper]{scrreprt}
\usepackage{natbib}
\bibliography{Mendeley}
\bibliographystyle{agsm}
答案1
\bf
和的语法\textbf
不同,最好将其改为\bf
be \bfseries
,你可以通过
\renewcommand\bf{\bfseries}
答案2
假设由于您使用其中一个 KOMA 类而出现错误,则可以通过从 article.cls 等中复制来添加旧字体命令的定义:
\makeatletter
\DeclareOldFontCommand{\rm}{\normalfont\rmfamily}{\mathrm}
\DeclareOldFontCommand{\sf}{\normalfont\sffamily}{\mathsf}
\DeclareOldFontCommand{\tt}{\normalfont\ttfamily}{\mathtt}
\DeclareOldFontCommand{\bf}{\normalfont\bfseries}{\mathbf}
\DeclareOldFontCommand{\it}{\normalfont\itshape}{\mathit}
\DeclareOldFontCommand{\sl}{\normalfont\slshape}{\@nomath\sl}
\DeclareOldFontCommand{\sc}{\normalfont\scshape}{\@nomath\sc}
\makeatother
答案3
由于您使用的是agsm
书目样式,因此实现目标的另一种方法是修改此书目样式,使其使用\bfseries
而不是\bf
。幸运的是,这很容易做到。我建议您按以下步骤操作:
在你的 TeX 发行版中找到该文件
agsm.bst
。复制此文件并将副本命名为agsm-bfseries.bst
。(你当然可以自由选择其他可能更简单的文件名。)在文本编辑器中打开该文件
agsm-bfseries.bst
;您用来编辑 tex 文件的程序就可以了。在里面
agsm-bfseries.bst
,找到名为的函数embolden
。它应该如下所示:FUNCTION {embolden} { duplicate$ empty$ { pop$ "" } { "{\bf " swap$ * "}" * } if$ }
在此函数中,更改
\bf
为\bfseries
。(是的,这确实就是全部需要更改的内容!)将文件保存
agsm-bfseries.bst
在主 tex 文件所在的目录中,或保存在 BibTeX 搜索的目录中。如果选择后者,请确保也更新 TeX 发行版的文件名数据库。在你的主 tex 文件中,更改指令
\bibliographystyle{agsm}
到
\bibliographystyle{agsm-bfseries}
然后,再重新运行 LaTeX、BibTeX 和 LaTeX 两次,以完全传播所有更改。
祝您 BibTeX 愉快!