我一直在写一篇论文,但一直苦苦思索引用风格。众所周知,有些大学和部门对他们的要求非常具体...
我使用“Bath”样式的 frombiblatex
和natbib
命令来引用。大多数时候,该命令\citep
可以完成我的内联引用,但有时我需要使用具有不同页码的多个引用,例如。
(姓氏 2050,12;姓氏 2 2030,40)。
我通常使用以下命令执行此操作\citealp
:
(\citealp[12]{last_name_fake_2050}; \citealp[40]{last_name_2_fake_2030}).
我的问题我的大学要求的格式是 (姓氏年份,页码;姓氏年份,页码)。对于命令\citep
和单个引用,我使用以下代码进行管理:
\documentclass{article}
\usepackage[utf8]{inputenc}
\usepackage[style=bath,backend=biber,maxcitenames=2,natbib=true,uniquelist=false,uniquename=false]{biblatex}
\DeclareDelimFormat[parencite, bib]{nameyeardelim}{\addspace}
\DeclareFieldFormat{postnote}{#1}
\DeclareFieldFormat{multipostnote}{#1}
\addbibresource{references.bib}
\begin{document}
\printbibliography
\end{document}
但是,使用这个\citealp
命令,我最终得到了
(姓氏,2050, 12; 姓氏 2,2030, 40)
我想删除姓氏和日期之间的逗号,就像我使用命令所做的那样\citep
。我需要了解如何执行此操作。
举例来说:
\documentclass{article}
\usepackage[utf8]{inputenc}
\usepackage[style=bath,backend=biber,maxcitenames=2,natbib=true,uniquelist=false,uniquename=false]{biblatex}
\DeclareDelimFormat[parencite, bib]{nameyeardelim}{\addspace}
\DeclareFieldFormat{postnote}{#1}
\DeclareFieldFormat{multipostnote}{#1}
\addbibresource{references.bib}
\begin{document}
when I use citep command
\citep[12]{last_name_fake_2050}
when I use citealp
(\citealp[12]{last_name_fake_2050}; \citealp[40]{last_name_2_fake_2030})
\printbibliography
\end{document}
参考文献中的这两个条目
@article{last_name_2_fake_2030,
title = {Fake article 2},
author = {Last name 2, First},
year = {2030},
}
@article{last_name_fake_2050,
title = {Fake article 1},
author = {Last Name, First},
year = {2050},
}
答案1
使用biblatex
的多重引用功能,则无需摆弄多个引用命令和手动括号。请参阅使用 BibLaTeX 进行页面多处引用。
multicite 命令不适用于natbib
兼容名称,因此您必须使用\parencites
或\autocites
。
\documentclass{article}
\usepackage[utf8]{inputenc}
\usepackage[style=bath, backend=biber, maxcitenames=2, uniquelist=false, uniquename=false]{biblatex}
\DeclareDelimFormat[parencite, bib]{nameyeardelim}{\addspace}
\DeclareFieldFormat{postnote}{\mknormrange{#1}}
\addbibresource{biblatex-examples.bib}
\begin{document}
Lorem \autocite[12]{sigfridsson}
ipsum \autocites[12]{sigfridsson}[40]{worman}
\printbibliography
\end{document}
如果您坚持使用,您可以通过注意基本上只是 来\citealp
解决问题,因此您不仅需要在 中更改分隔符,还需要在上下文中更改分隔符。\citealp
\cite
nameyeardelim
parencite
cite
\documentclass{article}
\usepackage[utf8]{inputenc}
\usepackage[
backend=biber,
style=bath,
maxcitenames=2, uniquelist=false, uniquename=false,
natbib=true,
]{biblatex}
\DeclareDelimFormat[cite, parencite, bib]{nameyeardelim}{\addspace}
\DeclareFieldFormat{postnote}{\mknormrange{#1}}
\addbibresource{biblatex-examples.bib}
\begin{document}
Lorem \autocite[12]{sigfridsson}
ipsum (\citealp[12]{sigfridsson}; \citealp[40]{worman})
\printbibliography
\end{document}
给出相同的输出。