![biblatex,authoryear-icomp:在脚注中用括号括住年份](https://linux22.com/image/244281/biblatex%EF%BC%8Cauthoryear-icomp%EF%BC%9A%E5%9C%A8%E8%84%9A%E6%B3%A8%E4%B8%AD%E7%94%A8%E6%8B%AC%E5%8F%B7%E6%8B%AC%E4%BD%8F%E5%B9%B4%E4%BB%BD.png)
我使用biblatex
cite-styleauthoryear
作为脚注,结果是
Chang 等人2005,页1116.
学院指导方针要求
Chang 等人(2005),页1116.
尽管。
为了实现这一点,需要修改哪些文件?到目前为止,我只能找到有关内联引用或参考书目的问题。
我的biblatex
选择是:
\usepackage[bibstyle=authoryear, autocite=footnote, dashed=false, firstinits=true,
citestyle=authoryear-icomp]{biblatex}
\let\cite\autocite
然后我通过 引用~\cite[1116]{chang05x}
。
答案1
您可以定义\foottextcite
基于\textcite
(即,带有括号)的宏。
编辑:示例现在使用style=authoryear-icomp
。
编辑2:添加了autocite=foottext
映射\autocite
到新选项的代码\foottextcite
。
\documentclass{article}
\usepackage[style=authoryear-icomp]{biblatex}
% The following is based on \textcite
\DeclareCiteCommand{\foottextcite}[\mkbibfootnote]% [\mkbibfootnote] added
{\usebibmacro{cite:init}}
{\usebibmacro{citeindex}%
\usebibmacro{textcite}}
{}
{\usebibmacro{textcite:postnote}}
\DeclareMultiCiteCommand{\foottextcites}[\mkbibfootnote]{\foottextcite}{\multicitedelim}
\DeclareAutoCiteCommand{foottext}[l]{\foottextcite}{\foottextcites}
\ExecuteBibliographyOptions{autocite=foottext}
\usepackage{filecontents}
\begin{filecontents}{\jobname.bib}
@misc{A01,
author = {Author, A.},
year = {2001},
title = {Alpha},
}
@misc{B02,
author = {Buthor, B.},
year = {2002},
title = {Bravo},
}
\end{filecontents}
\addbibresource{\jobname.bib}
\textheight=120pt% only for the example
\begin{document}
Some text \autocite{A01,B02}.
\printbibliography
\end{document}
编辑 3:为了完整起见,这里是\foottextcite
适合的定义authoryear
:
% The following is based on \textcite
\DeclareCiteCommand{\foottextcite}[\mkbibfootnote]% [\mkbibfootnote] added
{\boolfalse{cbx:parens}}
{\usebibmacro{citeindex}%
\usebibmacro{textcite}}
{\ifbool{cbx:parens}
{\bibcloseparen\global\boolfalse{cbx:parens}}
{}%
\multicitedelim}
{\usebibmacro{textcite:postnote}}
答案2
您可以\textcite
在文本引用中使用带括号的 for。如果这是您的首选引用,那么您可以将其设置为\cite
命令的默认行为,如下所示:
\let\cite\textcite