我已经使用 biblatex 包有一段时间了,自从更新我的 TeX 安装(el capitan 升级后)以来,我遇到了以下问题。
如果输入以下内容:
Such and such has been said \citep[111]{citekey}.
显示以下文本:
Such and such has been said (Author, 2016, p. 111).
如果输入以下内容:
\citet[111]{citekey} has said such and such.
显示以下文本:
Author, (2016, p. 111) has said such and such.
citep 命令按我期望的方式工作,但使用 citet 命令时,我不希望在作者姓名后放置逗号。我希望它显示如下:
Author (2016, p. 111) has said such and such.
如果我使用 \citeyearpar 命令,那就没问题,但我不想手动输入作者的姓名。
这是序言中的命令:
\usepackage[backend=bibtex, style=authoryear-icomp, url=true, isbn=false, natbib=true, sortcites=true, block=space, pagetracker=false, loccittracker=constrict]{biblatex}
下面是我的 bib 文件中条目的一个示例(使用 BibDesk 制作):
@article{poldrack2006,
Author = {Poldrack, Russell},
Journal = {Trends in Cognitive Sciences},
Number = {2},
Pages = {59--63},
Title = {{Can cognitive processes be inferred from neuroimaging data?}},
Volume = {10},
Year = {2006}}
我也尝试将条目更改为以下内容:
@article{poldrack2006,
Author = {Russell Poldrack},
Journal = {Trends in Cognitive Sciences},
Number = {2},
Pages = {59--63},
Title = {{Can cognitive processes be inferred from neuroimaging data?}},
Volume = {10},
Year = {2006}}
参考书目条目如下所示,并且没有问题:
Poldrack, Russell (2006). “可以从神经影像数据推断认知过程吗?” 引自:认知科学趋势10.2,第 59-63 页。
感谢您提供的任何帮助。
答案1
3.5
此问题已在 版本中得到解决biblatex
。(至少对于所有标准样式而言。自定义样式可能需要进一步调整,请参阅下文。)如果您仍遇到此问题,请更新您的 TeX 发行版。如果自定义样式出现此问题且更新后仍未解决,请通知样式作者。
如果你正在使用在线服务,请注意 Overleaf v1 仍然使用现在已经过时的 3.4 版本(2016/05/14)
biblatex
。Overleaf v2 有biblatex 2016/12/05 v3.7
,该问题应该已经得到解决。
biblatex
的新的上下文相关分隔符系统对宏的两遍结构有点困惑\textcite
(它在内部调用命令\cbx@textcite
来完成所有工作),你需要这行
\DeclareDelimFormat[cbx@textcite]{nameyeardelim}{\addspace}
以帮助它。
正如 PLK 在本期评论中指出的那样(#432) 已针对 3.5 版中的所有标准样式进行了解决biblatex
。如果您使用使用两遍\textcite
但尚未更新的自定义样式,则可能需要
\DeclareDelimcontextAlias{cbx@textcite}{textcite}
反而。
平均能量损失
\documentclass{article}
\usepackage[style=authoryear-icomp, natbib=true]{biblatex}
\addbibresource{biblatex-examples.bib}
\DeclareDelimFormat[cbx@textcite]{nameyeardelim}{\addspace}
\begin{document}
\citet{sigfridsson}
\citereset\textcite{sigfridsson}
\citereset\citep{sigfridsson}
\printbibliography
\end{document}