![Biblatex-chicago 书名和贡献名称重复](https://linux22.com/image/369878/Biblatex-chicago%20%E4%B9%A6%E5%90%8D%E5%92%8C%E8%B4%A1%E7%8C%AE%E5%90%8D%E7%A7%B0%E9%87%8D%E5%A4%8D.png)
我使用的材料来自一个系列中的几本书。所有书籍均由同一个人(此处为 Huot)编辑,而他为每本书的贡献恰好都相同(此处为“序言”)。
每卷都有另一位作者的贡献。
据我理解,booktitle
当书籍包含由多位作者单独命名的贡献时,应使用 (etc.) 来表示书籍,而当title
书籍包含贡献时,应使用 (etc.)。
下面的 MWE 说明了这种情况和我遇到的问题:
- 脚注 2 和 4 以同样的方式缩写了贡献出现的书。有人可能会说,这里并不存在歧义,因为流程很清晰,但在我的主要作品中情况并非如此,无论如何,我都不想让读者费力地跟着流程走
- 当然,也可以使用
longcrossref
它来使其明确,但当书籍包含许多字段时(大多数字段在此处省略,以方便 MWE 使用),这会导致脚注变得非常冗长;这种解决方案有些矫枉过正 - 人们可以通过省去
crossref
并重复条目中所需的字段来解决这个问题,但这违背了自动建立引文的整个目的...... - 最后两项的参考书目不完整,无论有没有该
crossref
功能。
我觉得自己是不是忽略了某些事情,或者是以错误的方式处理了这件事?
(旁注:我发现,稍后引用一个或另一个前言可以通过给出一个shorttitle
消除歧义的(实际上更长!)来处理,例如shortitle = {Preface (1)}
等等。)
梅威瑟:
\documentclass{memoir}
\usepackage{filecontents}
\begin{filecontents}{\jobname.bib}
@book{Book1,
Booksubtitle = {sub one},
Booktitle = {Book One},
Editor = {J.-L. Huot},
Series={Series},
Number = {1},
Publisher = {Publisher},
Location={Location},
Series = {Series},
Titleaddon = {title add-on 1},
Year = {2001}}
@inbook{Huot:preface1,
Author = {J.-L. Huot},
Crossref = {Book1},
Pages = {101--199},
Title = {Preface}}
@inbook{Arnaud:catalogue1,
Author = {D. Arnaud},
Crossref = {Book1},
Pages = {201--299},
Title = {Catalogue One},
subtitle={subtitle one}}
@book{Book2,
Booksubtitle = {sub two},
Booktitle = {Book Two},
Editor = {J.-L. Huot},
Series={Series},
Number = {2},
Publisher = {Publisher},
Location={Location},
Series = {Series},
Titleaddon = {title add-on 2},
Year = {2001}}
@inbook{Huot:preface2,
Author = {J.-L. Huot},
Crossref = {Book2},
Pages = {111--119},
Title = {Preface}}
@inbook{Arnaud:catalogue2,
Author = {D. Arnaud},
Crossref = {Book2},
Pages = {222--229},
Title = {Catalogue Two},
subtitle={subtitle two}}
\end{filecontents}
\usepackage[style=british,english=british]{csquotes}
\usepackage{polyglossia}
\setdefaultlanguage[variant=british]{english}
\usepackage[%
backend=biber,
language=british
]{biblatex-chicago}
\addbibresource{\jobname.bib}
\begin{document}
\mainmatter
Introductory sentence.\footcite[1]{Huot:preface1} Some other stuff.\footnote{\cite{Arnaud:catalogue1}. The same article can also be found elsewhere.}
Bla bla bla.
Introductory sentence.\footcite[2]{Huot:preface2} Some other stuff.\footnote{\cite{Arnaud:catalogue2}. The same article can also be found elsewhere.}
\backmatter
\printbibliography
\end{document}
输出剪辑:
答案1
使用条目的字段crossref
时,会自动映射到条目的字段(依此类推)。这意味着,您应该使用而不是在父条目中使用:Title
@book
Booktitle
@inbook
Title
Booktitle
\documentclass{memoir}
\usepackage{filecontents}
\begin{filecontents}{\jobname.bib}
@book{Book1,
Subtitle = {sub one},
Title = {Book One},
Editor = {J.-L. Huot},
Series={Series},
Number = {1},
Publisher = {Publisher},
Location={Location},
Series = {Series},
Titleaddon = {title add-on 1},
Year = {2001}}
@inbook{Huot:preface1,
Author = {J.-L. Huot},
Crossref = {Book1},
Pages = {101--199},
Title = {Preface}}
@inbook{Arnaud:catalogue1,
Author = {D. Arnaud},
Crossref = {Book1},
Pages = {201--299},
Title = {Catalogue One},
subtitle={subtitle one}}
@book{Book2,
Subtitle = {sub two},
Title = {Book Two},
Editor = {J.-L. Huot},
Series={Series},
Number = {2},
Publisher = {Publisher},
Location={Location},
Series = {Series},
Titleaddon = {title add-on 2},
Year = {2001}}
@inbook{Huot:preface2,
Author = {J.-L. Huot},
Crossref = {Book2},
Pages = {111--119},
Title = {Preface}}
@inbook{Arnaud:catalogue2,
Author = {D. Arnaud},
Crossref = {Book2},
Pages = {222--229},
Title = {Catalogue Two},
subtitle={subtitle two}}
\end{filecontents}
\usepackage[style=british,english=british]{csquotes}
\usepackage{polyglossia}
\setdefaultlanguage[variant=british]{english}
\usepackage[%
backend=biber,
language=british,
]{biblatex-chicago}
\addbibresource{\jobname.bib}
\begin{document}
\mainmatter
Introductory sentence.\footcite[1]{Huot:preface1} Some other stuff.\footnote{\cite{Arnaud:catalogue1}. The same article can also be found elsewhere.}
Bla bla bla.
Introductory sentence.\footcite[2]{Huot:preface2} Some other stuff.\footnote{\cite{Arnaud:catalogue2}. The same article can also be found elsewhere.}
\backmatter
\printbibliography
\end{document}
如果你在 bib 文件上以工具模式运行 biber,你会看到会发生什么:
biber --tool --output-resolve-crossrefs