根据 biblatex 样式打印括号内的年份或括号内的数字?

根据 biblatex 样式打印括号内的年份或括号内的数字?

如何根据是否使用authoryearnumeric样式来引用括号中的年份或括号中的数字?例如,我希望有一段统一的代码,如果authoryear使用,则打印“Knuth 的作品 (1984) ...”,如果使用,则打印“Knuth 的作品 [1] ...” numeric

\documentclass{article}
\usepackage[style=authoryear]{biblatex}
% \usepackage[style=numeric]{biblatex}
\addbibresource{biblatex-examples.bib}

\begin{document}
% Works for authoryear style, but not numeric style
\Citeauthor{knuth:ct:a}'s work \parentext{\citeyear{knuth:ct:a}}

% Works for numeric style, but not authoryear style
\Citeauthor{knuth:ct:a}'s work \autocite{knuth:ct:a}

\printbibliography
\end{document}

答案1

看起来带星号的变体\autocite可以解决问题。对于问题中的示例,您可以\Citeauthor{knuth:ct:a}'s work \autocite*{knuth:ct:a}同时使用authoryearnumeric样式。

相关内容