biblatex+hyperref: citetitle/citeauthor 並取得超鏈接

biblatex+hyperref: citetitle/citeauthor 並取得超鏈接

我發現自己經常使用 的\citetitle\citeauthor命令biblatex。它們是很棒的命令,但它們不提供指向參考書目中條目的超連結。為了克服這個問題,我必須\citetitle{Knuth} \cite{Knuth}使用

電腦程式設計的藝術[1]

其中 [1] 是參考書目的超連結。這看起來並不像我想要的那麼好。

我必須做什麼才能僅使用(或“\citeauthor”)命令來獲取參考書目的超連結\citetitle

附言。我也在使用這個hyperref包,但我認為這是顯而易見的。

答案1

這兩個引用命令均在 中定義biblatex.def。要新增鏈接,您可以在文件序言或設定檔中重新定義它們。的鏈結變體\citeauthor已在上一個問題。該命令可以類似地修改,但請注意您可能想要交換和格式\citetitle的順序。bibhyperrefcitetitle

\DeclareCiteCommand{\citetitle}
  {\boolfalse{citetracker}%
   \boolfalse{pagetracker}%
   \usebibmacro{prenote}}
  {\ifciteindex
     {\indexfield{indextitle}}
     {}%
   \printtext[bibhyperref]{\printfield[citetitle]{labeltitle}}}
  {\multicitedelim}
  {\usebibmacro{postnote}}

相關內容