我正在使用 biblatex 和 verbose-inote 風格,除了文件末尾的完整參考書目之外,還可以在腳註引用中包含參考文獻。
我想縮短腳註引文以僅包含作者的姓氏,但在文件最後的參考書目中打印完整的引文(名字和姓氏)。
我遇到了這個問題(Biblatex:姓氏只在 \footcite 中),關於如何修改腳註引用命令以僅包含姓氏,但是,它同樣會更改參考書目條目以僅包含姓氏。
我的 MWE 是:
\begin{filecontents}{bib.bib}
@article{Arzheimer.2006,
author = {Arzheimer, Kai and Carter, Elisabeth},
year = {2006},
title = {{P}olitical {O}pportunity {S}tructures and {R}ight-{W}ing {E}xtremist {P}arty {S}uccess},
pages = {419--443},
volume = {45},
journaltitle = {European Journal of Political Research}, shortjournal = {EJPR},
number = {3},
shorttitle = {Political Opportunity Structures}
}
\end{filecontents}
\documentclass[11pt]{scrartcl}
\usepackage[backend=bibtex, citestyle=verbose-inote, bibstyle=authortitle, autocite=footnote, isbn=false, doi=false, citepages=suppress, parentracker=false, dashed=false, sorting=nyt, maxcitenames=2, maxbibnames=5]{biblatex}
\usepackage[style=british]{csquotes}
% Commas as separators
\renewcommand*{\newunitpunct}{\addcomma\space}
% NO `in:' BEFORE JOURNALTITLE
\renewbibmacro{in:}{}
\usepackage{xpatch}
% Comma before issue + date
\xpatchbibmacro{journal+issuetitle}{%
\setunit{\addspace}%
\usebibmacro{issue+date}}%
{\setunit{\addcomma\addspace}%
\usebibmacro{issue+date}}%
{}{}
% No dot before number of articles
\xpatchbibmacro{volume+number+eid}{%
\setunit*{\adddot}%
}{%
}{}{}
% Number of articles in parentheses
\DeclareFieldFormat[article]{number}{\mkbibparens{#1}}
% Comma before and after journal volume
\renewbibmacro*{volume+number+eid}{%
\setunit*{\addcomma\space}% NEW
\printfield{volume}%
% \setunit*{\adddot}% DELETED
%\setunit*{\addcomma\space}% NEW
\printfield{number}%
\setunit{\addcomma\space}%
\printfield{eid}}
% Comma before date; date not in parentheses
\renewbibmacro*{issue+date}{%
\setunit*{\addcomma\space}% NEW
% \printtext[parens]{% DELETED
\iffieldundef{issue}
{\usebibmacro{date}}
{\printfield{issue}%
\setunit*{\addspace}%
% \usebibmacro{date}}}% DELETED
\usebibmacro{date}}% NEW
\newunit}
%Include shortjournal, journal abbreviation
\renewbibmacro*{journal}{%
\ifboolexpr{ test {\ifcitation} and not test {\iffieldundef{shortjournal}} }
{\printfield[journaltitle]{shortjournal}}
{\iffieldundef{journaltitle}
{}
{\printtext[journaltitle]{%
\printfield[titlecase]{journaltitle}%
\setunit{\subtitlepunct}%
\printfield[titlecase]{journalsubtitle}}}}}
\bibliography{bib}
\begin{document}
This is supposed to print only the authors' last names\autocite{Arzheimer.2006}. Whereas the bibliography should keep the full citation.
\printbibliography
\end{document}
答案1
答案來自莫埃韋可以適應verbose-inote
風格。只需將以下內容添加到您的序言中:
\renewbibmacro*{footcite:full}{%
\usebibmacro{cite:full:citepages}%
\printtext[bibhypertarget]{%
\usedriver
{\DeclareNameAlias{sortname}{labelname}}
{\thefield{entrytype}}}%
\usebibmacro{shorthandintro}}
這將使用消除歧義的姓氏;如果您無論如何都想強制使用姓氏,那麼您將需要新增為名稱格式定義的程式碼。