在我的参考书目中,有一位姓氏为双的作者(例如 Pata Kata)。当我在文中引用这位作者时,它显示为(Pata Kata <year>),但我希望它只在引用中显示为(P. Kata <year>)(也就是说,在参考书目列表中,我仍然希望它打印为“Pata Kata, F.”,其中“F”是作者的名字首字母)。手动将作者字段更改为
作者 = {P. Kata,名字}
在 bib 条目中,也会改变作者在参考书目列表中的显示方式。所以这不是一个解决方案。我尝试\relax
在作者字段中使用命令,如下所示:
作者 = {{\relax{}P}ata} Kata,名字}
但不起作用。引文仍然打印为 (Pata Kata <year>)。
以防万一,我的参考书目中还有一位姓氏单一的作者,这与第一位作者的第二个姓氏 (Kata) 相吻合。该作者应被引用为 (Kata <year>)。
重要的是,我需要一个 biber 后端解决方案。我不想改用 bibtex,因为它不提供 biber 的灵活性,而且我已经使用了相当多 biber 功能。
以下是 MWE:
\documentclass{article}
\usepackage[utf8]{inputenc}
\usepackage[backend=biber,uniquelist=minyear,style=authoryear-comp,
giveninits=true,uniquename=init]{biblatex}
\begin{filecontents}{papers.bib}
@INPROCEEDINGS{ref1,
author = {{\relax{}P}ata Kata, Firstname},
title = {The title of Pata Kata's article},
year = {1997},
booktitle= {The Proceedings of this conference}
}
@INPROCEEDINGS{ref2,
author = {Kata, Anotherfirstname},
title = {Another title},
year = {2000},
booktitle= {The Proceedings of that conference}
}
\end{filecontents}
\addbibresource{papers.bib}
\begin{document}
First citation is~\parencite{ref1} and second is~\parencite{ref2}.
\printbibliography
\end{document}
答案1
您需要将以下内容添加到 bib 文件中:
shortauthor = {P. Kata, Firstname},
即
\documentclass{article}
\usepackage[utf8]{inputenc}
\usepackage[backend=biber,uniquelist=minyear,style=authoryear-comp,
giveninits=true,uniquename=init]{biblatex}
\begin{filecontents}{papers.bib}
@INPROCEEDINGS{ref1,
author = {Pata Kata, Firstname},
shortauthor = {P. Kata, Firstname},
title = {The title of Pata Kata's article},
year = {1997},
booktitle= {The Proceedings of this conference}
}
@INPROCEEDINGS{ref2,
author = {Kata, Anotherfirstname},
title = {Another title},
year = {2000},
booktitle= {The Proceedings of that conference}
}
\end{filecontents}
\addbibresource{papers.bib}
\begin{document}
First citation is~\parencite{ref1} and second is~\parencite{ref2}.
\printbibliography
\end{document}