年份範圍以斜線代替破折號

年份範圍以斜線代替破折號

首先,MWE 及其輸出如下。

\documentclass{ctexart}
\usepackage[utf8, backend=biber, style=caspervector-ay]{biblatex}
%the style set alldates=iso in default

\begin{filecontents*}{\jobname.bib}
    @book{bookot,
        location  = {Place},
        publisher = {ABC},
        author    = {Name, Given},
        title     = {One title},
        year      = {2001},
    }
    @book{bookat,
        location  = {Place},
        publisher = {ABC},
        author    = {Name, Given},
        title     = {Another title},
        date      = {2001/2009},
    }
\end{filecontents*}
\addbibresource{\jobname.bib}

\begin{document}
    some quote from \cite{bookot,bookat}
    
    some quote from \parencite{bookot,bookat}
    
    some quote from \textcite{bookot,bookat}
    
    some quote from \textcite{bookot}
    
    some quote from \parencite*{bookot}
    
    \printbibliography
\end{document}

在此輸入影像描述

正如您所看到的,日期範圍的符號是-但不是/樣式caspervector-ay,即 2001-2009。那麼如何將日期範圍的符號設為/,也就是像 ISO 中將 2001-2009 設為 2001/2009 呢?

答案1

\bibdaterangesep日期範圍分隔符號由(在iso日期格式中\bibdaterangesep不使用:斜線是硬編碼的)控制。您可以按如下方式重新定義它

\renewrobustcmd*{\bibdaterangesep}{\slash}

相關內容