biblatex 中的 Suppbook(biblatex-chicago)与 bookinbook 一起使用时不会继承书籍的标题

biblatex 中的 Suppbook(biblatex-chicago)与 bookinbook 一起使用时不会继承书籍的标题

因此,我有一本印刷在一起的古典书籍合集,并希望用斜体引用合集中的每本书,因此需要使用@bookinbook来定义它们。但是,我还想引用作品的注释和介绍,为此我使用了 。由于某种原因,中没有继承父级@suppbook的标题,我怀疑这与 中的标题字段强制变为有关。@book@suppbook@bookinbook@bookmaintitle

我可以通过将标题复制到 中来轻松修复此问题@suppbook,但这样它就不会在参考书目中以简短格式使用。如果我只复制shorttitle,则需要注意的是不会hyperref产生将子级链接到父级的结果。使用booktitle甚至不会为@book本身生成标题,并且使用maintitle也会产生奇怪的结果。

有人有什么建议吗?我期望太多了吗?MWE 在这里(我包括了booktitlemaintitle案例):

\documentclass{article}
\usepackage{hyperref}
\usepackage[%
    style=notes, 
    backend=biber,
    booklongxref=false%  Use short for book when crossref
]{biblatex-chicago}

\begin{filecontents}{jobname.bib}
    @book{ed:manybooks,%
        editor    = {A. Ed},
        title     = {Many Books},
        subtitle  = {Super Long and Uninteresting Subtitle},
    }
    @suppbook{notemaker:booksn,%
        crossref  = {ed:manybooks},
        author    = {B. Notemaker},
        type      = {notes to},
    }
    @suppbook{intromaker:booksi,%
        crossref  = {ed:manybooks},
        author    = {C. Intromaker},
        type      = {introduction to},
        title     = {Many Books},
        subtitle  = {Super Long and Uninteresting Subtitle},
    }
    @bookinbook{writer:onebook,%
        crossref   = {ed:manybooks},
        author     = {D. Writer},
        translator = {E. Translo},
        title      = {One in Many},
    }  
    @book{ed:manybooks2,%%%%%%%%%%%%%%%%%%%%%% Try booktitle
        editor        = {A. Ed},
        booktitle     = {Many Books 2},
        booksubtitle  = {Another Super Long and Uninteresting Subtitle},
    }
    @suppbook{notemaker:booksn2,%
        crossref  = {ed:manybooks2},
        author    = {B. Notemaker},
        type      = {notes to},
    }
    @suppbook{intromaker:booksi2,%
        crossref  = {ed:manybooks2},
        author    = {C. Intromaker},
        type      = {introduction to},
        title     = {Many Books 2},
        subtitle  = {Another Super Long and Uninteresting Subtitle},
    }
    @bookinbook{writer:onebook2,%
        crossref   = {ed:manybooks2},
        author     = {D. Writer},
        translator = {E. Translo},
        title      = {The Second One in Many},
    }
    @book{ed:manybooks3,%%%%%%%%%%%%%%%%%%%%%% Try maintitle
        editor        = {A. Ed},
        maintitle     = {Many Books 3},
        mainsubtitle  = {Yet Another Super Long and Uninteresting Subtitle},
    }
    @suppbook{notemaker:booksn3,%
        crossref  = {ed:manybooks3},
        author    = {B. Notemaker},
        type      = {notes to},
    }
    @suppbook{intromaker:booksi3,%
        crossref  = {ed:manybooks3},
        author    = {C. Intromaker},
        type      = {introduction to},
        title     = {Many Books 3},
        subtitle  = {Yet Another Super Long and Uninteresting Subtitle},
    }
    @bookinbook{writer:onebook3,%
        crossref   = {ed:manybooks3},
        author     = {D. Writer},
        translator = {E. Translo},
        title      = {The Third One in Many},
    }
\end{filecontents}

\addbibresource{jobname.bib}

\begin{document}
    \nocite{*}
    \printbibliography
\end{document}

相关内容