自定义 biblatex harvard(作者年份)风格

自定义 biblatex harvard(作者年份)风格

希望有人能帮帮我!
我正在努力解决我的引用样式中的一个错误。我需要使用带有脚注的改良哈佛样式:
² Vgl. Robinson et al. (2017)
我的问题是,同一作者在一年内撰写的 2 篇文章没有出现在索引中。它们应该在脚注中产生“Robinson (2017)”和“Robinson (2017b)”,但没有。我只是不知道正确的 printfield 命令,因为它\printbibliography会产生所需的输出。

我通过使用以下配置实现了这一点:

\usepackage[autocite=footnote,style=authoryear-ibid,maxcitenames=1,natbib=true,backend=biber]{biblatex}

\DefineBibliographyStrings{german}{%
    andothers = {et al.},
}

\DeclareCiteCommand{\footcite}[\mkbibfootnote]
    {\usebibmacro{prenote}}
    {\usebibmacro{citeindex}
        \printnames{labelname}%
        \setunit{\addnbspace}
        \printtext[parens]{\printfield{year}}}
    {\multicitedelim}
    {\usebibmacro{postnote}}

参考书目如下:

@book{Crusoe2017,
 author = {Crusoe, Robinson},
 year = {2017},
 title = {The Survival},
 publisher = {{Island Publishing}},
 isbn = {978-1234567890}
}

@book{Crusoe2017b,
 author = {Crusoe, Robinson},
 year = {2017},
 title = {The Survival - Day 2},
 publisher = {{Island Publishing}},
 isbn = {978-1234567800}
}

最后,文件本身如下所示:

Crusoe states in his first publication\footcite[vgl][S. 75 f.]{Crusoe2017}   
(...) in contrast to his secone one\footcite[vgl][S. 5 f.]{Crusoe2017}

产生如下两个脚注:
²vgl Crusoe (2017), S. 75 f.
³vgl Crusoe (2017), S. 5 f.

最后一个脚注应该有一个附加索引,这在最终的参考书目中是可以的。
所以如果有人能提示一下该修改什么,那就太好了,谢谢!

答案1

您重新定义了\footcite命令,以便在指定时仅打印yearbibentry 的内容\printfield{year}。如果您还想拥有 dateextra 字段,则应\printlabeldateextra改为使用。

在全:

\documentclass{article}

\usepackage{filecontents}

\begin{filecontents}{\jobname.bib}
@book{Crusoe2017,
 author = {Crusoe, Robinson},
 year = {2017},
 title = {The Survival},
 publisher = {{Island Publishing}},
 isbn = {978-1234567890}
}

@book{Crusoe2017b,
 author = {Crusoe, Robinson},
 year = {2017},
 title = {The Survival - Day 2},
 publisher = {{Island Publishing}},
 isbn = {978-1234567800}
}
\end{filecontents}

\usepackage[autocite=footnote,style=authoryear-ibid,maxcitenames=1,natbib=true,backend=biber]{biblatex}

\DefineBibliographyStrings{german}{%
    andothers = {et al.},
}

\DeclareCiteCommand{\footcite}[\mkbibfootnote]
    {\usebibmacro{prenote}}
    {\usebibmacro{citeindex}
        \printnames{labelname}%
        \setunit{\addnbspace}
        \printtext[parens]{\printlabeldateextra}}
    {\multicitedelim}
    {\usebibmacro{postnote}}

\addbibresource{\jobname.bib}

\begin{document}

Crusoe states in his first publication\footcite[vgl][S. 75 f.]{Crusoe2017}   
(...) in contrast to his second one\footcite[vgl][S. 5 f.]{Crusoe2017b}

\printbibliography

\end{document}

在此处输入图片描述

相关内容