在我的参考书目中,一本书应按如下方式显示:
达尔文,查尔斯。《查尔斯·达尔文的通信集,1821-1836》。剑桥 1985 年。
第一部分工作正常。我可以在代码中添加什么,以便标题后面跟着地址和年份(中间没有逗号或句号)?
\RequirePackage{filecontents}
\begin{filecontents*}{\jobname.bib}
@book{darwin,
Author = {Charles Darwin},
address= {Cambridge},
Title = {The Correspondence of Charles Darwin, 1821-1836},
Year = {1985}}
\end{filecontents*}
\documentclass{article}
\usepackage[style=verbose]{biblatex}
\addbibresource{\jobname.bib}
\begin{document}
Bla Bla Bla Bla Bla Bla \autocite{darwin} \autocite{wade}
\printbibliography
\end{document}
答案1
如果您使用( )biblatex-ext
的直接替换,那么您只需重新定义宏即可。verbose
ext-verbose
\locdatedelim
\RequirePackage{filecontents}
\begin{filecontents*}{\jobname.bib}
@book{darwin,
author = {Charles Darwin},
address = {Cambridge},
title = {The Correspondence of {Charles} {Darwin}, 1821--1836},
year = {1985},
}
\end{filecontents*}
\documentclass{article}
\usepackage[style=ext-verbose]{biblatex}
\addbibresource{\jobname.bib}
\renewcommand*{\locdatedelim}{\addspace}
\begin{document}
Lorem \autocite{darwin}
\printbibliography
\end{document}
如果你不能或者不想使用biblatex-ext
,你可以直接重新定义宏。
\newcommand*{\locdatedelim}{\addspace}
\newcommand*{\locpubdelim}{\addcolon\space}
\newcommand*{\publocdelim}{\addcomma\space}
\newcommand*{\pubdatedelim}{\addcomma\space}
\newbibmacro*{pubinstorg+location+date}[1]{%
\printlist{location}%
\iflistundef{#1}
{\setunit*{\locdatedelim}}
{\setunit*{\locpubdelim}}%
\printlist{#1}%
\setunit*{\pubdatedelim}%
\usebibmacro{date}%
\newunit}
\renewbibmacro*{publisher+location+date}{%
\usebibmacro{pubinstorg+location+date}{publisher}}
\renewbibmacro*{institution+location+date}{%
\usebibmacro{pubinstorg+location+date}{institution}}
\renewbibmacro*{organization+location+date}{%
\usebibmacro{pubinstorg+location+date}{organization}}
\renewbibmacro*{location+date}{%
\printlist{location}%
\setunit*{\locdatedelim}%
\usebibmacro{date}%
\newunit}
获得相同的功能biblatex-ext
,或者更具体的功能,例如
\newbibmacro*{pubinstorg+location+date}[1]{%
\printlist{location}%
\setunit*{\addspace}%
\usebibmacro{date}%
\newunit}
\renewbibmacro*{publisher+location+date}{%
\usebibmacro{pubinstorg+location+date}{publisher}}
\renewbibmacro*{institution+location+date}{%
\usebibmacro{pubinstorg+location+date}{institution}}
\renewbibmacro*{organization+location+date}{%
\usebibmacro{pubinstorg+location+date}{organization}}
这将抑制publisher
if 的给出。