![biblatex ieee 风格 相同作者](https://linux22.com/image/274761/biblatex%20ieee%20%E9%A3%8E%E6%A0%BC%20%E7%9B%B8%E5%90%8C%E4%BD%9C%E8%80%85.png)
我刚刚意识到,在使用ieee
中的样式时biblatex
,如果我的参考书目中有两篇文章的作者相同,那么第二篇文章的作者就会消失,取而代之的是一行。有没有简单的方法可以在不改变样式的情况下改变这种行为?
答案1
更新
在 的 v1.2 版本 (2016/12/30) 中biblatex-ieee
,Joseph Wright 添加了对dashed
选项 ( 的全面支持https://github.com/josephwright/biblatex-ieee/issues/30)现在只需添加
dashed=false
到biblatex
选项。
\documentclass[british]{article}
\usepackage[T1]{fontenc}
\usepackage{babel}
\usepackage{csquotes}
\usepackage[backend=biber, style=ieee, dashed=false]{biblatex}
\addbibresource{biblatex-examples.bib}
\begin{document}
Lorem \autocite{knuth:ct:a,knuth:ct:b}
\printbibliography
\end{document}
保留这个答案的旧版本是为了历史兴趣,也是为了那些无法访问较新版本biblatex-ieee
或类似风格的用户而保留的,因为这些用户没有选择关闭该dashed
行为。
旧答案
通常情况下– 这是在标准样式中,这就像添加到dashed=false
的加载选项一样简单biblatex
。但是,biblatex
样式ieee
和ieee-alphabetic
无法识别此选项,因为 – 正如@Joseph Wright 指出的那样 – 使用破折号是 IEEE 样式。
因此,您可以手动更改作者宏或禁用虚线函数所需的内部测试。
要更改作者宏以避免破折号,只需将以下代码片段添加到您的序言中。
\renewbibmacro*{author}{%
\ifboolexpr{
test \ifuseauthor
and
not test {\ifnameundef{author}}
}
{%
\printnames{author}%
\iffieldundef{authortype}
{}
{%
\setunit{\addcomma\space}%
\usebibmacro{authorstrg}%
}%
}
{\global\undef\bbx@lasthash}%
}
或者,您可以修改保存作者比较所需的哈希值的宏以使其不执行任何操作。
\renewbibmacro*{bbx:savehash}{}
平均能量损失
\documentclass[ngerman, a4paper]{article}
\usepackage[latin1]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{babel}
\usepackage{csquotes}
\usepackage[style=ieee-alphabetic, backend=bibtex]{biblatex}
\addbibresource{\jobname.bib}
\renewbibmacro*{bbx:savehash}{}
\begin{filecontents}{\jobname.bib}
@book{UthorA,
author = {Arnold Uthor},
title = {The Twice Intensely Tiring Lines of Erudition},
year = {1983},
}
@article{UthorB,
author = {Arnold Uthor},
title = {A Very Interesting Article},
journaltitle = {Journal of Articles},
year = {2000},
}
\end{filecontents}
\begin{document}
\nocite{*}
\printbibliography
\end{document}
答案2
尝试将以下行添加到您的 Bibtex 文件中:
@IEEEtranBSTCTL{IEEEexample:BSTcontrol,
CTLdash_repeated_names = "no"
}
并将以下行添加到您的 Tex 文件中,紧接着\begin{document}
:
\begin{document}
\bstctlcite{IEEEexample:BSTcontrol}
答案3
这个问题在这里得到解答:BibTeX 用“------”替换相似的作者姓名是否正常?
如果你正在写一篇要求的论文IEEEtrans
(尤其是如果这篇论文要发表在 IEEE 上),我会认真考虑简单地使用默认行为作为你的论文的结果。这不是一个需要编程解决的“侥幸”,这是确切地该风格是如何被编程并设计来执行的。
您应该始终根据对您的写作具有权威性的风格指南(老师的选择、大学风格指南、公司风格指南、芝加哥、APA、MLA、AP 等)而不是您的个人喜好来撰写论文和选择引用风格。