( )
我怎样才能得到没有 a和带有 的引用( )
?
例如:
1. Table 1: Spich et al, 2010
A text is written by (Spich et al, 2010).
我是否应该创建另一个名称而不是使用相同的名称\parencite
?
我的 MWE:
\DeclareCiteCommand{\parencite}[\mkbibparens]
{\renewcommand*{\postnotedelim}{\addcolon\space}%
\usebibmacro{cite:init}%
\usebibmacro{prenote}}
{\usebibmacro{citeindex}%
\printtext[bibhyperref]{\usebibmacro{cite}}}
{\multicitedelim}
{\usebibmacro{postnote}}
答案1
通常(例如,在biblatex
标准样式中,没有其他修改)\cite
会给出您想要的结果\parencite
,只是没有括号。
\documentclass[british]{article}
\usepackage[T1]{fontenc}
\usepackage{babel}
\usepackage{csquotes}
\usepackage[backend=biber, style=authoryear]{biblatex}
\addbibresource{biblatex-examples.bib}
\begin{document}
Lorem \autocite{sigfridsson}
ipsum \parencite{sigfridsson}
dolor \cite{sigfridsson}
\printbibliography
\end{document}
因此我要尝试的第一件事是\cite
。
不过,在没有看到你的代码的情况下,我无法判断它是否会像你希望的那样工作。很难说在你的设置中实现你想要的结果的最优雅的方式是什么,但是只要问题中的 的定义\parencite
正确,下面的方法应该可以工作。你可以简单地复制 的定义\parencite
,给它一个新名字,然后删除[\mkbibparens]
,这样就会产生括号。
\documentclass[british]{article}
\usepackage[T1]{fontenc}
\usepackage{babel}
\usepackage{csquotes}
\usepackage[backend=biber, style=authoryear-comp]{biblatex}
\DeclareCiteCommand{\parencite}[\mkbibparens]
{\renewcommand*{\postnotedelim}{\addcolon\space}%
\usebibmacro{cite:init}%
\usebibmacro{prenote}}
{\usebibmacro{citeindex}%
\printtext[bibhyperref]{\usebibmacro{cite}}}
{\multicitedelim}
{\usebibmacro{postnote}}
\DeclareCiteCommand{\nparencite}
{\renewcommand*{\postnotedelim}{\addcolon\space}%
\usebibmacro{cite:init}%
\usebibmacro{prenote}}
{\usebibmacro{citeindex}%
\printtext[bibhyperref]{\usebibmacro{cite}}}
{\multicitedelim}
{\usebibmacro{postnote}}
\addbibresource{biblatex-examples.bib}
\begin{document}
Lorem \autocite[381]{sigfridsson}
ipsum \parencite[382]{sigfridsson}
dolor \nparencite[383]{sigfridsson}
sit \cite[384]{sigfridsson}
\printbibliography
\end{document}