在我的一个文档类中,我使用 bibtex,并设置了两个参考书目。一个是文档实际引用的来源,另一个是带有额外参考资料的来源,分别打印。
我希望第二个参考书目中的条目的样式在打印时是这种alpha
样式;但是 - 我希望它们按照作品出现的顺序排序(至少按年份,最好也考虑期刊的月份)。
现在,我实际上并不关心第二份参考书目中项目的标签,因为我们可以假设它们实际上从未被引用过。
根据我所描述的内容 - 我可以做什么“最不痛苦”的事情来获得我喜欢的顺序和进入风格?
答案1
我不确定我是否完全理解了您的格式目标。如果没有,请说明需要做什么。
建议的解决方案采用了稍微修改过的alpha
参考书目样式,按照 bib 文件中列出的顺序列出参考书目条目。我建议您按以下步骤操作:
在你的 TeX 发行版中找到该文件
alpha.bst
。复制此文件并将副本命名为 。alpha-nosort.bst
(不要直接编辑 TeX 发行版的原始文件。)在文本编辑器中打开文件
alpha-nosort.bst
。你用来编辑 tex 文件的程序将会执行 file。在 中
alpha-nosort.bst
,找到包含单个指令(大写)的行SORT
。在我的文件副本中,此指令出现在第 1187 行。注释掉(或删除)此指令。将文件保存
alpha-nosort.bst
在包含主 tex 文件的目录中或 BibTeX 搜索的目录中。如果选择后者,请确保适当更新 TeX 发行版的文件名数据库。如果您不确定前面这句话的意思,我建议您选择前一个选项。在您的主 tex 文件中,将指令更改
\bibliographystyle{alpha}
为\bibliographystyle{alpha-nosort}
。然后,运行完整的重新编译循环 - LaTeX、BibTeX 和 LaTeX 两次 - 以完全传播更改。
祝您 BibTeX 愉快!
这是一个 MWE(最小工作示例)及其相关输出。
\documentclass{article} % or some other suitable document class
\begin{filecontents}[overwrite]{mybib.bib}
@misc{zz:02, author="Zelda Zwicky", title="Further thoughts", year=3002}
@misc{aa:01, author="Anne Author", title="Initial Thoughts", year=3001}
\end{filecontents}
\bibliographystyle{alpha-nosort}
\begin{document}
\nocite{*} % entries in 'mybib.bib' aren't explicitly \cite'd
\bibliography{mybib}
\end{document}