biblatex:为什么缩写的短标题后没有逗号?

biblatex:为什么缩写的短标题后没有逗号?

抱歉,这只是一个小问题,但我刚刚第一次意识到,当你引用一个没有简称的书目项目时,那么 - 使用style=verbose- 你通常会得到(除了第一个fullcite):

姓名,在物理学中,第 12 页。

但是,当此项的缩写shorttitle以 结尾时dot,您将获得以下内容:

姓名,在物理中。p.12. [标题后/页前没有逗号!]

我通常会省略“page”中的“p.”,所以我的结果是:

姓名,在物理中。12.

我想要得到:

姓名,在物理中。,12。

平均能量损失

% !TEX TS-program = lualatexmk
\documentclass[12pt, a4paper, DIV=calc]{scrartcl}

\usepackage{fontspec}    
    \setmainfont[Ligatures=TeX]{Times New Roman}

\usepackage[    style=verbose,
            abbreviate=false,
            url=false,
            backrefstyle=three,
            backend=biber
                ]{biblatex}
    \DeclareFieldFormat{postnote}{#1}       % postnotes without p. and pp.

\usepackage{filecontents}

\begin{filecontents}{\jobname.bib}
    @book{without:shorttitle,
    author = {Author W. Name},
    year = {2000},
    title = {In Physica},
    publisher = {Publisher},
    }
@book{with:shorttitle,
    author = {Author W. Name},
    year = {2000},
    title = {In Physica},
    shorttitle = {In Phys.},
    publisher = {Publisher},
    }
\end{filecontents}

\addbibresource{\jobname.bib}

\begin{document}

''First citation without shorttitle.''\footcite[12]{without:shorttitle}

''Second citation without shorttitle.''\footcite[12]{without:shorttitle}

''First citation with shorttitle.''\footcite[12]{with:shorttitle} 

''Second citation with shorttitle.''\footcite[12]{with:shorttitle} 

\end{document}

答案1

添加字段格式\isdot的定义citetitle似乎可以解决问题。

\DeclareFieldFormat{citetitle}{\mkbibemph{#1\isdot}}
\DeclareFieldFormat
    [suppbook,suppcollection,suppperiodical]
    {citetitle}{#1\isdot}

\adddot另一种解决方案是在文件中用以下文字替换句点.bib

@book{with:shorttitle,
    author = {Author W. Name},
    year = {2000},
    title = {In Physica},
    shorttitle = {In Phys\adddot},
    publisher = {Publisher},
    }

相关内容