使用 时biblatex
,addendum
字段会打印在书目条目的最末尾。如何将其前面的标点符号更改为分号(而不更改所有字段后的标点符号)?
在上面所示的示例中,下面给出了源,该addendum
字段恰好用于一个article
条目,但标点符号的变化需要很强大,因为它很可能适用于任何其他类型的条目,例如book
。
\documentclass{memoir}
\usepackage[style=numeric,backend=bibtex]{biblatex}
\begin{filecontents}{shortbib.bib}
@article{Euler1776,
Author = {Euler, Leonhard},Title = {All about E},
Journal = {Math.\ Psych.},Year = {1776},Volume = {4},Pages={1--2718},
Addendum={popularization of earlier technical article}}
\end{filecontents}
\addbibresource{shortbib.bib}
\begin{document}
\nocite{*}
\printbibliography
\end{document}
我正在使用以下内容biblatex.cfg
,并且我认为我需要以某种方式添加它。
\ProvidesFile{biblatex.cfg}
%
\renewcommand*{\newunitpunct}{\addcomma\space}
\renewcommand{\subtitlepunct}{\addcolon\addspace}
%
\DeclareNameAlias{sortname}{last-first}
%
\DeclareFieldFormat
[article,inbook,incollection,inproceedings]
{title}{\emph{#1}}% no quote marks
\DeclareFieldFormat{journaltitle}{{#1}}
%
\DeclareFieldFormat
[article,inbook,incollection,inproceedings]
{volume}{\textbf{#1}}
%
\DeclareFieldFormat{pages}{#1}% no prefix for the `pages` field
\renewbibmacro{in:}{%
\ifentrytype{article}{}{\printtext{\bibstring{in}\intitlepunct}}}
答案1
addendum+pubstate
我们可以在宏中添加相关的标点符号命令
\renewbibmacro*{addendum+pubstate}{%
\setunit{\addsemicolon\space}%
\printfield{addendum}%
\newunit\newblock
\printfield{pubstate}}