假设我引用期刊文章为@article
,引用工作论文@rechreport
为type = {Working Paper}
,如以下 MWE 所示:
@techreport{liu2009role,
title = {The role of media in initial public offerings},
author = {Laura Liu and Ann E. Sherman and Yong Zhang},
year = {2009},
type = {Working Paper},
institution = {DePaul University; Hong Kong University of Science and Technology},
url = {https://papers.ssrn.com/sol3/papers.cfm?abstract_id=1737544}
}
@article{malkiel2013asset,
author = {Burton G. Malkiel},
title = {{Asset management fees and the growth of finance}},
year = {2013},
journal = {Journal of Economic Perspectives},
volume = {27},
number = {2},
pages = {97--108},
url = {https://www.aeaweb.org/articles?id=10.1257/jep.27.2.97}
}
与library.bib
loaded biblatex
as 一样
\usepackage[
backend=biber,
style=apa,
backref=true,
indexing=true
]{biblatex}
\addbibresource{library.bib}
渲染结果如下:
其中“cited”缩写为“cit.”/”Cit.”,一次大写,一次不大写。此行为似乎是由 中 URL 后面的句号引起的@techreport
,而 中不存在该句号@article
。
这是预期的行为吗?如果我不喜欢它,我该如何避免它?(例如,如何在条目@article
类型的 URL 后添加句号、删除它@techreport
或更改大写字母本身?
答案1
驱动techreport
程序被映射到misc
。misc
和article
驱动程序在字段后有两个不同的代码addendum
,分别是\newunit\newblock
和\setunit{\addspace}\newblock
。 此代码将纠正错误(或功能):
\usepackage{xpatch}
\xpatchbibdriver{misc}{\newunit\newblock
\iftoggle{bbx:related}}{\setunit{\addspace}\newblock
\iftoggle{bbx:related}}
以下是 MWE:
\begin{filecontents}[overwrite]{\jobname.bib}
@misc{liu2009role,
title = {The role of media in initial public offerings},
author = {Laura Liu and Ann E. Sherman and Yong Zhang},
year = {2009},
type = {Working Paper},
institution = {DePaul University; Hong Kong University of Science and Technology},
url = {https://papers.ssrn.com/sol3/papers.cfm?abstract_id=1737544}
}
@article{malkiel2013asset,
author = {Burton G. Malkiel},
title = {{Asset management fees and the growth of finance}},
year = {2013},
journal = {Journal of Economic Perspectives},
volume = {27},
number = {2},
pages = {97--108},
url = {https://www.aeaweb.org/articles?id=10.1257/jep.27.2.97}
}
\end{filecontents}
\documentclass{article}
\usepackage[
backend=biber,
style=apa,
backref=true,
indexing=true
]{biblatex}
\addbibresource{\jobname.bib}
\usepackage{xpatch}
\xpatchbibdriver{misc}{\newunit\newblock
\iftoggle{bbx:related}}{\setunit{\addspace}\newblock
\iftoggle{bbx:related}}{}{}
\begin{document}
\cite{liu2009role}
\cite{malkiel2013asset}
\printbibliography
\end{document}
这使:
如果您喜欢大写:
\xpatchbibdriver{article}{\setunit{\addspace}\newblock
\iftoggle{bbx:related}}{\newunit\newblock
\iftoggle{bbx:related}}{}{}
当然,您必须检查其他驱动程序正在做什么,以查看正确的行为是大写还是小写“cit。”。