我有一篇论文被期刊接受,编辑给我发邮件说他们准备发表它了,我只需要稍微修改一下参考文献的格式。到目前为止,我一直在随意使用 natbib 和 \bibliographystyle{unsrt}。所以我查看了他们的作者指南和以前发表的论文,他们告诉我他们想要的风格,但没有提供 .bst 或其他文件。
所以使用 latex 应该很容易,对吧?只需更改一些标志或其他东西,它就会更改所有参考文献的格式。所以我的问题的一半(虽然我担心我已经知道答案了)是,是否有某种方法可以找到与我所寻找的样式相匹配的样式(如果存在的话)?我找到了一些列表类型的东西,可以显示不同样式最终的样子,但我猜用这种方式找到东西会很困难。
好吧,我发现 biblatex-science 样式实际上几乎就是我需要的。唯一的问题是,它使文本中的引用出现在括号中,而不是方括号中,这正是我需要的。如果出于某种原因你不能稍微改变样式,我会理解(尽管我发现这个问题看起来好像可行?),好吧。
但是我该如何制作自己的 .bst 文件呢?似乎应该很简单,只需创建一个文件,上面写着“让作者姓名使用首字母缩写,让期刊名称使用斜体,让期号使用粗体”等。我发现这个问题但老实说,答案似乎并不乐观——一个需要 Linux(没有),一个引用一些第三方软件。
我是不是漏掉了什么?这是否只是人们几乎从来不用做的事情?有没有更简单的方法可以做我想做的事情?在此先感谢您的任何建议。
答案1
有多种方法可以获取参考书目样式。选择哪一种取决于您的具体情况。
.bst
使用制作自己的makebst
。此工具适用于 MikTeX 和 TeX live,可在 Windows、Linux 和 OS X 下运行。您将回答一系列问题,最后您将获得一个.bst
符合您给出的答案的文件。如果您必须更改一些非常不寻常的东西,此工具可能无法帮助您。此外,确实有很多问题。另请参阅有没有(简单的)方法来创建或个性化.bst 文件?修改现有
.bst
文件。当然,你只能修改重命名副本现有的.bst
。这取决于您需要更改的程度,这是一个可行的选择。但至少对我来说, 的波兰符号.bst
使得修改起来很麻烦。找到一种
biblatex
样式并进行修改。biblatex
样式使用更像 LaTeX 的语法,因此比.bst
文件更容易修改。您可以选择一种标准样式作为基础,也可以使用众多可用的自定义样式之一。但请注意,自定义样式可能更难修改,因为有些样式需要经过很长的时间才能获得正确的输出。大多数“应该很容易”的事情在 中实际上很容易biblatex
,但有些奇怪的变化应该很容易,但一点也不容易。此外,biblatex
仍处于开发阶段且是“新的”,因此它可能尚未出现在每个人的工作流程中,并且版本冲突(在合作者或机器之间)可能是一个问题。从头开始写一种新
biblatex
风格。至少对我来说,这归结为 3,因为我总是需要灵感和指导来做这样的事情。如果其他方法都失败了,还有手动
thebibliography
方法。
在 2. 和 3. 中,找到可用样式及其输出的列表很重要,这样您就可以确定从哪里开始。对于.bst
文件,有在哪里可以找到书目样式的集合?。 为了biblatex
我会使用 CTAN 主题网站 (https://www.ctan.org/topic/biblatex) 大多数样式都附带显示输出的示例文件。
显然,在理想世界中,您只会使用对您来说工作量最少的方法。
有几个注意事项:很少有期刊可以接受biblatex
投稿。Biblatex:向期刊投稿,可能会有一些技巧让事情顺利进行,但总体而言前景黯淡。有些期刊可能不接受外部文件,因此您无法将自定义.bst
文件捆绑到它们中。
如果您必须提交 Word 文件,我会认真考虑在从 TeX 转换后在 Word 中手动修改参考书目。无论如何,您都必须微调和检查转换后的文档。这是一个不错的选择,特别是如果您的参考书目不是太大且修改不多。
对于你的具体问题:我不认为我的答案Biblatex 数字样式:在引文和参考书目中用圆括号替换方括号太复杂了,我可以向你保证它能工作,但我得承认它需要的代码比你想象的要多一点。(这是那些“应该很容易”的事情之一……)
对于biblatex-science
,您很幸运,因为开发人员使用了稍微激进的方法。恢复方括号(即撤消他的更改)非常简单
\makeatletter
\renewcommand*{\bibleftbracket}{\blx@postpunct[}
\renewcommand*{\bibrightbracket}{\blx@postpunct]\midsentence}
\makeatother
平均能量损失
\documentclass{article}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage[british]{babel}
\usepackage{lmodern}
\usepackage{csquotes}
\usepackage[backend=biber, style=science]{biblatex}
\bibliography{biblatex-examples.bib}
\makeatletter
\renewcommand*{\bibleftbracket}{\blx@postpunct[}
\renewcommand*{\bibrightbracket}{\blx@postpunct]\midsentence}
\makeatother
\begin{document}
This is a test to cite \autocite{sigfridsson} and cite \autocite{worman} and cite \autocite{sigfridsson}.
\printbibliography
\end{document}