百科全书参考书目为“浓缩版”,但有详细的引文吗?

百科全书参考书目为“浓缩版”,但有详细的引文吗?

所以,我一直在关注这个答案但它并没有完全满足我的要求。我想得到

Encyclopaedia Britannica, Vol. 2, “Babylonia and Assyria,” p. 849

在其他卷和页的其他文章的脚注/尾注中,\autocite[849]{britannica:babyloniaandassyria}但只有

Encyclopaedia Britannica, Encyclopedia Britannica, Inc., Chicago, 1943, 175th Anniversary Edition

在最终\printbibliography输出中。

所以,引用本身包含具体细节,但参考书目中只包含整个百科全书。这是否可能不经过过多的纠结就能实现?

当前 bib 文件片段。

\documentclass[english,oneside,openany]{book}
\usepackage[citestyle=authortitle-ibid,backend=biber,ibidpage=false]{biblatex}
\usepackage{showframe}

\begin{filecontents}{\jobname.bib}
@mvreference{encyclopaedia:britannica,
    address = {Chicago},
    author = {{Encyclopedia Britannica, Inc.}},
    edition = {175th Anniversary Edition},
    options = {useeditor=false},
    title = {Encyclopaedia Britannica},
    volumes = {24},
    year = {1943}
}

@inreference{britannica:babyloniaandassyria,
    crossref = {encyclopaedia:britannica},
    title = {Babylonia and Assyria},
    volume = {2},
}

@inreference{britannica:david,
    crossref = {encyclopaedia:britannica},
    title = {David},
    volume = {7},
}
\end{filecontents}
\addbibresource{\jobname.bib}

\DeclareFieldFormat[inreference]{citetitle}{\mkbibquote{#1\isdot}}
\DeclareFieldFormat[inreference]{title}{\mkbibquote{#1\isdot}}

\begin{document}

    \autocite[849]{britannica:babyloniaandassyria}
    \autocite[75]{britannica:david}

    \printbibliography

\end{document}

结果是: 结果

答案1

您可以声明一个源映射,并使用选项skipbib和来表示等于的skiplab条目。crossrefencyclopaedia:britannica

BibLaTeX 手册

skipbib=true, false默认:false如果启用此选项,则条目将从参考书目中排除,但仍可能被引用。此选项也可根据类型设置。

skiplab=true, false默认:false如果启用此选项, biblatex则不会为条目分配任何标签。正常操作不需要此选项。请谨慎使用。如果启用,则biblatex无法保证各个条目的唯一引用,并且需要标签的引用样式可能无法为条目创建有效引用。此选项也可以根据每个类型进行设置。

\documentclass[english,oneside,openany]{book}
\usepackage[citestyle=authortitle-ibid,backend=biber,ibidpage=false]{biblatex}

\begin{filecontents}{\jobname.bib}
@mvreference{encyclopaedia:britannica,
    address = {Chicago},
    author = {{Encyclopedia Britannica, Inc.}},
    edition = {175th Anniversary Edition},
    options = {useeditor=false},
    title = {Encyclopaedia Britannica},
    volumes = {24},
    year = {1943}
}

@inreference{britannica:babyloniaandassyria,
    crossref = {encyclopaedia:britannica},
    title = {Babylonia and Assyria},
    volume = {2},
    options      = {skipbib}
}

@inreference{britannica:david,
    crossref = {encyclopaedia:britannica},
    title = {David},
    volume = {7},
    options      = {skipbib}
}
\end{filecontents}
\addbibresource{\jobname.bib}

\DeclareFieldFormat[inreference]{citetitle}{\mkbibquote{#1\isdot}}
\DeclareFieldFormat[inreference]{title}{\mkbibquote{#1\isdot}}

\DeclareSourcemap{
  \maps{
    \map{ 
      \step[fieldsource=crossref,
        match={encyclopaedia:britannica},
        fieldset=options,
        fieldvalue={skipbib,skiplab}]
    }
  }
}
 
\begin{document}
    \autocite[849]{britannica:babyloniaandassyria}
    \autocite[75]{britannica:david}
    
    \printbibliography
\end{document}

在此处输入图片描述

在此处输入图片描述

相关内容