我的导师想要一种特殊的参考书目样式(我找不到任何使用这种样式的期刊...),我无法以正确的方式修改 .bst 文件。
它看起来应该是这样的:
Schramm F、Müller A、Hammes H 2011,环氧化物和硫杂丙环对纤毛虫的体外毒性。 环境科学技术45(期刊卷号-此号码应加下划线):5812-5819。
我用网上的一个 bst 生成器创建了一个 .bst 文件(http://www.podoblaz.net/cml/?id=39),效果还不错,但是没有为卷号加下划线的选项!我尝试手动修改 .bst 文件,但没有成功。如果有人能帮助我,那就太好了!
答案1
看起来你在帖子中提到的网站,BST 生成器,是该实用程序的一个方便的 GUI 前端makebst
,它是定制围兜包裹。很好。
我知道您的主要问题是如何设置指令来为卷号加下划线(而不是斜体)。
首先使用 Web 实用程序创建 bst 文件。当您进行到问题 58 时,选择“Volume italic”(第二个选项)。完成其余过程。
假设你的新 bst 文件名为
underline.bst
。在编辑器中打开它;你用于 tex 文件的编辑器就可以了。找到名为 的函数
emphasize
。它可能看起来像这样:FUNCTION {emphasize} { duplicate$ empty$ { pop$ "" } { "\emph{" swap$ * "}" * } if$ }
创建一个新的函数,调用
uline
如下FUNCTION {uline} { duplicate$ empty$ { pop$ "" } { "\uline{" swap$ * "}" * } if$ }
并将其插入到函数正下方的 bst 文件中
emphasize
。找到名为 的函数
format.vol.num.pages
,如果您选择“斜体”作为突出显示卷号的选项(并且还告诉实用程序省略问题编号),它可能看起来像这样:FUNCTION {format.vol.num.pages} { volume field.or.null duplicate$ empty$ 'skip$ { "volume" bibinfo.check } if$ emphasize eid empty$ { format.journal.pages } { format.journal.eid } if$ }
在此函数中,将其替换
emphasize
为uline
。将文件保存
underline.bst
在主 tex 文件所在的目录中或 BibTeX 搜索的目录中。如果选择第二个选项,请务必更新 TeX 发行版的文件名数据库。您需要在 tex 文件中加载该
ulem
包——最好使用该选项normalem
,以便的普通含义\emph
不会被破坏——以便\uline
识别该指令:\usepackage[normalem]{ulem}
切换(或更新)参考书目样式后,请务必再重新运行 LaTeX、BibTeX 和 LaTeX 两次,以完全传播所有更改。