
我在引用具有所有格(所有格)的多篇論文(不同年份)的作者時遇到困難。我想要這樣的引文
史密斯(1997,2001)。
我設法擁有
史密斯(1997),
但不是為了
史密斯(1997,2001)。
我使用natbib
,我使用的新命令是:
\usepackage{natbib}
\newcommand\citeapos[1]{\citeauthor{#1}'s (\citeyear{#1})}
有人可以在這件事上幫助我嗎?
答案1
一個可能的解決方案:make \citeapos
take二參數:第一個將被饋送到\citeauthor
,第二個將被饋送到\citeyear
:
\usepackage{natbib}
\newcommand\citeapos[2]{\citeauthor{#1}'s (\citeyear{#2})}
建議用法:\citeapos{smith97}{smith97,smith01}
.
(我嘗試創建一個宏,從 中提取第一個鍵(即第一個逗號之前的所有內容)smith97,smith01
並將結果傳遞給\citeauthor
。但是,我不斷收到 形式的錯誤Argument of \@citex has an extra }
。這就是為什麼我建議設定一個兩個參數處理所有格引用標註的巨集。