目标是用XeLaTeX配合BibTeX,生成GB/T2015的(作者, 年份)形式的文献引用。
实际效果是:
使用参考文献样式gbt7714排版参考文献出问题。一个是没有出现预期的(作者, 年份)引文形式,第二个是出现上面的标签,如Allen_2000。
文件有加载国标样式文件,其从GitHub下载下来的。
tex文件相关设置如下:
……
% 引用包区
\usepackage{gbt7714}
……
% 正文和引文
正文\cite{Allen_2000}正文正文正文正文正文\cite{FangYi_2016}正文正文正文正文正文正文正文正文正文正文正文正文正文正文正文正文正文正文正文正文正文正文正文正文正文正文正文正文正文正文\cite{FangYi_2016a}正文正文正文正文正文正文正文正文正文正文正文正文正文正文正文正文正文正文正文正文正文。
……
% 参考文献部分
\bibliographystyle{gbt7714-author-year}
\bibliography{graduationthesis}
……
相关tex文件和bib文件附件如下:
这是我修改后的编译结果, 先说修改内容, 注释掉
\usepackage{amsrefs}
这时编译结果为
现在的这些框是由 showkeys
宏包引起的, 可以选择保留或者注释.
然后说原因, 由于 amsref
宏包的引入, 它自动加载了一个名为 amsrn.bst
的参考样式格式, 这个格式位于
/texlive/2021/texmf-dist/bibtex/bst/amsrefs/amsrn.bst
它的优先级高于你引入的 gbt7714-author-year
, 双重样式下, 在使用 bibtex
编译的时候报错:
The top-level auxiliary file: graduationthesis.aux
The style file: amsrn.bst
Illegal, another \bibstyle command---line 15 of file graduationthesis.aux
: \bibstyle
: {gbt7714-author-year}
I'm skipping whatever remains of this command
Database file #1: graduationthesis.bib
(There was 1 error message)
顺便再一说, gbt7714-author-year
与 numerical
不需要下载, texlive 中自带, 直接使用样式即可, 它们位于
/texlive/2021/texmf-dist/bibtex/bst/gbt7714/gbt7714-author-year.bst
/texlive/2021/texmf-dist/bibtex/bst/gbt7714/gbt7714-numerical.bst
非常感谢,在你的回答的帮助下问题已经解决了。