我biblatex
想模仿amsplain
参考书目中文章条目的样式。具体来说,我仍然需要使卷、号和年份部分出现在以下形式中
速度(年份),编号 n
— “数字”字段位于(括号内的)年份之后 — 如下amsplain
例所示:
以下是我目前为止所取得的进展biblatex
。来源是:
\documentclass[12pt]{memoir}
\usepackage[style=numeric,backend=bibtex]{biblatex}
\begin{filecontents}{ref.bib}
@article{EulerE1776,
Author = {Euler, Leonhard},Title = {All about E},
Journal = {Math.\ Psychol.},
Year = {1776},Volume = {4},number={1},
pages={1--2718}
}
\end{filecontents}
\addbibresource{ref.bib}
\begin{document}
\nocite{*}
\printbibliography
\end{document}
我的biblatex.cfg
是:
% BIBLATEX.CFG
% mimic amsplain
%
\ProvidesFile{biblatex.cfg}
%
\renewcommand*{\newunitpunct}{\addcomma\space}
%
\DeclareNameAlias{sortname}{last-first}
%
\DeclareFieldFormat
[article,inbook,incollection,inproceedings,patent,thesis,unpublished]
{title}{\mkbibemph{#1}}% no quote marks
\DeclareFieldFormat{journaltitle}{#1}
%
\DeclareFieldFormat
[article,inbook,incollection,inproceedings,patent,thesis,unpublished]
{volume}{\mkbibbold{#1}}
\DeclareFieldFormat{pages}{#1}% no prefix for the `pages` field in the bibliography
%
\renewbibmacro{in:}{%
\ifentrytype{article}{}{\printtext{\bibstring{in}\intitlepunct}}}
该配置的输出biblatex
是:
我认为我必须至少修改\DeclareBibliographyDriver{article}
一些 bibmacro 的定义,甚至修改一些,但我无法深入了解文档来了解如何做到这一点。
笔记:由于其他原因,我必须使用biblatex
而不是仅仅amsplain
使用带有的样式bibtex
。
答案1
journal+issuetitle
我们只需要修改中的宏standard.bbx
。为了方便起见,我将 的定义分散到volume+number+eid
各处journal+issuetitle
,而不是将其保留为单独的宏。
\DeclareFieldFormat[article,periodical]{number}{\bibstring{number}~#1}% number of a journal
\renewbibmacro*{journal+issuetitle}{%
\usebibmacro{journal}%
\setunit*{\addspace}%
\iffieldundef{series}
{}
{\newunit
\printfield{series}%
\setunit{\addspace}}%
\printfield{volume}%
\setunit{\addspace}%
\usebibmacro{issue+date}%
\setunit{\addcomma\space}%
\printfield{number}%
\setunit{\addcolon\space}%
\usebibmacro{issue}%
\setunit{\addcomma\space}%
\printfield{eid}
\newunit}
我们基本上将宏分为volume+number+eid
体积和数字部分,并将日期打印移到两者之间。