我希望所有简称(如果已定义)都打印在参考书目中完整标题后的括号中。如果不定义自己的参考书目样式,这是否可行?
女士:
\documentclass[11pt,a4paper]{article}
\usepackage{polyglossia}
\setdefaultlanguage{english}
\usepackage{csquotes}
\usepackage[backend=biber,style=authoryear-ibid,language=american]{biblatex}
\usepackage{filecontents}
\begin{filecontents}{\jobname.bib}
@book{Hicks1925,
address = {Cambridge, MA},
author = {Diogenes Laërtius},
publisher = {Harvard University Press},
series = {Loeb Classical Library},
shorttitle = {DL},
title = {{Lives of Eminent Philosophers}},
translator = {Hicks, R. D.},
volume = {II},
year = {1925}
}
\end{filecontents}
\addbibresource{\jobname.bib}
\begin{document}
\citetitle{Hicks1925}
\printbibliography[heading=bibintoc]
\end{document}
这使:
拉尔修斯,狄奥吉尼斯 (1925)。《著名哲学家的生活》。RD Hicks 译。第 II 卷。洛布古典图书馆。马萨诸塞州剑桥:哈佛大学出版社。
而我想说的是:
拉尔修斯,狄奥吉尼斯 (1925)。《著名哲学家的生活》 (DL)。RD Hicks 译。第 II 卷。洛布古典图书馆。马萨诸塞州剑桥:哈佛大学出版社。
答案1
我不太确定你是否应该以shorttitle
这种方式使用该字段。也许shorthand
更合适?
shorttitle
无论如何,我们可以通过这个方便的修改直接在标题后打印
\renewbibmacro*{title}{%
\ifboolexpr{
test {\iffieldundef{title}}
and
test {\iffieldundef{subtitle}}
}
{}
{\printtext[title]{%
\printfield[titlecase]{title}%
\setunit{\subtitlepunct}%
\printfield[titlecase]{subtitle}}%
\setunit{\addspace}%
\printfield[parens]{shorttitle}%
\newunit}%
\printfield{titleaddon}}
这是标准宏,其中biblatex.def
添加了两行以打印shorttitle
。
平均能量损失
\documentclass[11pt,a4paper,british]{article}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{babel}
\usepackage{csquotes}
\usepackage[backend=biber,style=authoryear-ibid]{biblatex}
\usepackage{filecontents}
\begin{filecontents}{\jobname.bib}
@book{Hicks1925,
address = {Cambridge, MA},
author = {Diogenes Laërtius},
publisher = {Harvard University Press},
series = {Loeb Classical Library},
shorttitle = {DL},
title = {{Lives of Eminent Philosophers}},
translator = {Hicks, R. D.},
volume = {II},
year = {1925}
}
\end{filecontents}
\addbibresource{\jobname.bib}
\renewbibmacro*{title}{%
\ifboolexpr{
test {\iffieldundef{title}}
and
test {\iffieldundef{subtitle}}
}
{}
{\printtext[title]{%
\printfield[titlecase]{title}%
\setunit{\subtitlepunct}%
\printfield[titlecase]{subtitle}}%
\setunit{\addspace}%
\printfield[parens]{shorttitle}%
\newunit}%
\printfield{titleaddon}}
\begin{document}
\citetitle{Hicks1925}
\printbibliography[heading=bibintoc]
\end{document}