读过这回答如何修改现有的参考书目样式,如果您只想应用小的更改(也就是说,如果您想避免使用定义一个全新的样式latex makebst
),我想知道是否有可能实现这一点没有必须创建一个新.bst
文件:我可以使用现有的参考书目样式(例如)并直接在我的文档plain
中对其进行更改吗?.tex
这背后的动机是,我希望能够快速更改底层参考书目样式(例如从纯文本到缩写),同时保留修改(例如字体变化),而无需创建新的修改样式文件。
所以我想知道是否可以实现这样的事情,在文档中使用.tex
:
\bibliographystyle{plain}
% modifications to the style come here, e.g. modify FUNCTION {date.block}
提前致谢!
答案1
不,您总是必须创建一个新.bst
文件。BibTeX.bst
在进行格式化时会读取文件,但不会与.tex
文件直接交互(它会扫描.aux
文件以查找引用和样式名称,但仅此而已)。您可以使用环境filecontents
将.bst
文件嵌入文件中.tex
,但这可能不太有用,因为.bst
文件往往很大(通常超过 1000 行)。请注意,您不必.bst
从头开始生成文件:制作重命名的副本并更改所需的部分是可行的(如果需要,请在单独的问题中询问您的修改)。
发展的原因之一biblatex
正是因为它将格式留给了文件.tex
。因此,biblatex
可以在 LaTeX 文档中调整样式。另一方面,biblatex
使用与传统 BibTeX 完全不同的一套标准样式,因此过渡可能并不简单,具体取决于您的要求。