我正在使用文档类制作实验室日志memoir
,每个月的条目都有一个简短的摘要页面。在那一页上,空间会很紧张,所以我想从中删除该title
字段\footfullcite
。但是,我只知道在整个文档中删除它的方法(例如\DeclareFieldFormat{journaltitle}{}
)。
有没有什么方法可以让我仅删除脚注中包含的参考事件的标题,而完整的标题仍然打印在主参考书目中?
梅威瑟:
% arara: pdflatex: {options: [-halt-on-error]}
% arara: biber
% arara: pdflatex: {options: [-halt-on-error]}
\begin{filecontents}{test.bib}
@Article{Basl21,
author = {Basler, Sophie and Studer, Sabine},
journal = {Nat Chem},
title = {{Efficient Lewis acid catalysis of an abiological reaction in a de novo protein scaffold}},
year = {2021},
pages = {231--235},
}
\end{filecontents}
\documentclass[oneside]{memoir}
\usepackage[backend=biber,style=numeric]{biblatex}
\addbibresource{test.bib}
\begin{document}
\chapter{Test}
Foo bar baz\footfullcite{Basl21}.
\newpage
\printbibliography
\end{document}
目前看起来是这样的:
我查看biblatex.sty
了biblatex.def
biblatex
GitHub 页面但看不到\footfullcite
除此之外的定义:
\DeclareCiteCommand{\footfullcite}[\mkbibfootnote]
{\usebibmacro{prenote}}
{\usedriver
{\DeclareNameAlias{sortname}{default}}
{\thefield{entrytype}}}
{\multicitedelim}
{\usebibmacro{postnote}}
我也检查了numeric.bbx
样式和standard.bbx
文件,但找不到如何修改。如果能提供关于将来\footfullcite
查看哪些文件以定义命令的提示,我将不胜感激。cite
答案1
仅在引用中删除字段的经典方式(并且\footfullcite
仍然算作引用 - 即使它基本上复制了参考书目条目)是使用\AtEveryCitekey{\clearfield{<field>}}
。
\documentclass[oneside]{memoir}
\usepackage[backend=biber,style=numeric]{biblatex}
\AtEveryCitekey{\clearfield{title}}
\addbibresource{biblatex-examples.bib}
\begin{document}
\chapter{Test}
Foo bar baz\footfullcite{sigfridsson}.
\printbibliography
\end{document}
就像是
\DeclareFieldFormat{title}{}
从来都不是一个好主意,因为biblatex
仍然会尝试排版标题,并且只会在很晚的阶段才意识到没有什么可打印(并且因为有一个明确的检查)。