修改 CSE.bst 以停止按字母顺序对 bib 条目进行排序

修改 CSE.bst 以停止按字母顺序对 bib 条目进行排序

这个问题是基于这个帖子cse 引用样式

我有一个期刊风格要求,需要使用natbib引文管理包、sort&compress选项、上标风格引文标注和CSE-modifiedbib 风格。

因此,我尝试了:

\usepackage[super,sort&compress]{natbib} 
\bibliographystyle{CSE-modified}

但是,CSE-modified(或者,就此而言,CSE)设置为按作者姓氏的字母顺序对书目条目进行排序。我如何修改任一 bst 文件,以便 bib 条目按它们在文本中首次引用的顺序排版?

提前感谢你的帮助!

答案1

我建议您按如下方式进行:

  • 复制该文件CSE-modified.bst并将副本命名为CSE-nosort.bst

  • 在文本编辑器中打开文件CSE-nosort.bst。你用来编辑 tex 文件的程序就可以了。

  • 在文件的最末尾,找到只包含一个单词的两行:SORT。(在我的文件副本中,这些行的编号为 1465 和 1531。)

  • 注释掉这两行。

  • 将文件保存CSE-nosort.bst在包含主 tex 文件的目录中。或者,将文件保存在 BibTeX 搜索的目录中,并适当更新 TeX 发行版的文件名数据库。(如果您不知道前面这句话的意思,您可能应该选择第一个选项……)

  • 在你的主 tex 文件中,更改指令

     \bibliographystyle{CSE-modified}
    

     \bibliographystyle{CSE-nosort}
    

    并执行完整的(重新)编译循环:LaTeX、BibTeX,然后再进行两次 LaTeX。


满满的平均能量损失及其输出:

在此处输入图片描述

\documentclass{article} % or some other suitable document class

%% Create a sample bib file, with 8 dummy entries, "on the fly":
\begin{filecontents}[overwrite]{mybib.bib}
@misc{a,author="A",title="xx",year=3001}
@misc{c,author="C",title="zz",year=3003}
@misc{e,author="E",title="vv",year=3005}
@misc{f,author="F",title="uu",year=3006}
@misc{g,author="G",title="tt",year=3007}
@misc{h,author="H",title="ss",year=3008}
@misc{d,author="D",title="ww",year=3004}
@misc{b,author="B",title="yy",year=3002}
\end{filecontents}

\usepackage[super,sort&compress,square,comma]{natbib} 
\bibliographystyle{CSE-nosort}

\begin{document}
\noindent
\dots as shown in previous studies.\cite{g,e,d,c,a} % cite 5 of the 8 entries
\nocite{*} % make sure all 8 entries in the bib file are processed
\bibliography{mybib}
\end{document}

相关内容