我有以下书目设置
\documentclass[ngerman]{article}
\usepackage[ngerman]{babel}
%\usepackage{filecontents}
\begin{filecontents}{bla.bib}
@article{Leon1984,
author = "Frank {de León} and George Orwell",
title = "1984",
year = "1948",
journal = "Books about big brothers",
volume = "5",
number = "42",
pages = "100--111"
}
\end{filecontents}
\RequirePackage[backend=biber,
style=ieee-alphabetic, % does not work with maxalphanames
maxnames=99,
minalphanames=1,
maxcitenames=2,
maxalphanames=1,
firstinits=true,
doi=false,isbn=false,url=false,
backref=false,
dashed=false,
defernumbers=true,
]{biblatex}
\renewcommand*{\labelalphaothers}{}
% Label with full year
\DeclareLabelalphaTemplate{
\labelelement{
\field[final]{shorthand}
\field{label}
\field{labelname}
}
\labelelement{
\field{year}
}
}
\addbibresource{bla.bib}
\begin{document}
\cite{Leon1984}. \\
\printbibliography
\end{document}
输出如下:
我对“Frank de León”这个姓氏的显示方式不满意。我希望他的名字在参考书目中正确显示,我可以通过像这样的括号来实现:Frank {de León}
。但我想在引文中省略“de”这个词,只看到[莱昂1984]。你认为这可能吗?
由于这是一种非常罕见的情况,因此我很高兴能找到仅针对“de”的非通用解决方案。
我也尝试过useprefix
但根本没有效果。
提前致谢!
答案1
BibTeX 和 Biber 可以更好地处理名称前缀,如“de”、“van”、“von”等。如果您删除括号并将名称指定为
author = {Frank de León and George Orwell},
或者
author = {von Brandt, Ahasver},
也可以看看我应该如何在 bib 文件中输入作者姓名?。如果您写,Frank {de León}
那么 BibTeX 和 Biber 会将姓名解析为由名字“Frank”和姓氏“de León”组成。而对于输入,Frank de León
他们会看到名字“Frank”,姓氏“León”,前缀“de”。这样就更容易将“de Leon”与“Orwell”区分开来。
通过正确的输入,只需设置选项useprefix=false,
以告知biblatex
不要使用引用标签的前缀。
\documentclass[ngerman]{article}
\usepackage{babel}
\usepackage{csquotes}
\usepackage[backend=biber,
style=ieee-alphabetic,
maxnames=99,
maxcitenames=2,
minalphanames=1, maxalphanames=1,
giveninits=true,
useprefix=false,
doi=false, isbn=false, url=false,
backref=false,
dashed=false,
]{biblatex}
\renewcommand*{\labelalphaothers}{}
\DeclareLabelalphaTemplate{
\labelelement{
\field[final]{shorthand}
\field{label}
\field{labelname}
}
\labelelement{
\field{year}
}
}
\begin{filecontents}{\jobname.bib}
@article{Leon1984,
author = {Frank de León and George Orwell},
title = {1984},
year = {1948},
journal = {Books About Big Brothers},
volume = {5},
number = {42},
pages = {100--111},
}
\end{filecontents}
\addbibresource{\jobname.bib}
\begin{document}
\cite{Leon1984}.
\printbibliography
\end{document}