我希望我的引用看起来像这样:
不减缓的碳排放将导致到 2100 年全球气温升高几摄氏度 [STOC13,第 119 页]。
(四个自定义大写字母(通常是作者姓氏)和两个年份数字)
而我的参考书目显示:
[STOC13] Stocker T.;Qin D.:IPCC气候变化2013:物理科学基础。剑桥大学出版社,2013年
(使用与参考书目中第一个条目相同的自定义引用标签([STOC13]) - 您知道 - 左栏中的标签,加上:姓氏在前,不使用“和”,没有斜体文章标题......)
我已经尝试过 makebst 自定义围兜,但无济于事,我目前最好的选择是:
和
\documentclass[
,11pt
]{scrartcl}
\usepackage[
backend=bibtex
,citestyle=alphabetic
,bibstyle=alphabetic
]{biblatex}
\bibliography{testbibfile}
\begin{document}
Unmitigated carbon emissions will lead to global warming of several
degrees Celsius by 2100 \citefield[119]{STOCKER}{[STOC13], }.
\printbibliography
\end{document}
和
@BOOK{STOCKER,
author = {T. Stocker and D. Qin},
title = {IPCC Climate Change 2013: The Physical Science Basis},
year = {2013},
publisher = {Cambridge University Press},
}
\citefield 感觉有点像作弊。此外,它使我的自定义字符串大胆的这并不是我打算做的。而且我的自定义引用显然没有转移参考书目中的左栏。
...
所以我的问题是:我如何才能完全定制我的引用和参考书目风格?
谢谢
答案1
使用 Biber 您可以完全自定义标签的生成style=alphabetic
。
这些选项几乎是不言自明的:使用加载时选项,minalphanames=1, maxalphanames=1
我们确保仅使用一个名称来生成标签。从姓氏strwidth=4
左边 ( ) 开始数四个字母,将它们转换为全部大写 ( )。忽略标签从较长列表中截断的事实,并且不插入标记来显示这一点(通常使用,这里会给出“STOC+”)。strside=left
uppercase=true
noalphaothers=true
\labelalphaothers
\documentclass{scrartcl}
\usepackage[backend=biber, style=alphabetic, minalphanames=1, maxalphanames=1]{biblatex}
\usepackage{filecontents}
\begin{filecontents}{\jobname.bib}
@BOOK{STOCKER,
author = {T. Stocker and D. Qin},
title = {IPCC Climate Change 2013: The Physical Science Basis},
year = {2013},
publisher = {Cambridge University Press},
}
\end{filecontents}
\addbibresource{\jobname.bib}
\DeclareLabelalphaTemplate{
\labelelement{
\field[final]{shorthand}
\field{label}
\field[strwidth=4,strside=left,uppercase=true,noalphaothers=true]{labelname}
}
\labelelement{
\field[strwidth=2,strside=right]{year}
}
}
\begin{document}
Unmitigated carbon emissions will lead to global warming of several
degrees Celsius by 2100 \autocite[119]{STOCKER}.
\printbibliography
\end{document}
看Biblatex 与 Biber:配置我的编辑器以避免未定义的引用了解如何从 BibTeX 切换到 Biber。另请参阅bibtex 与 biber 以及 biblatex 与 natbib 的比较。