Для библиографии моей диссертации я хочу добавить запятую после номера тома, когда в журнальной статье нет номера выпуска.
\documentclass{article}
\usepackage[utf8]{inputenc}
\usepackage{xpatch}
\usepackage[backend=biber, citestyle=nejm, sorting=none, natbib=true, isbn=false, url=false, doi=true, eprint = false, giveninits]{biblatex}
% remove pp
\DeclareFieldFormat{pages}{#1}
% No dot before number of articles
\xpatchbibmacro{volume+number+eid}{%
\setunit*{\adddot}%
}{%
}{}{}
% Number of articles in parentheses
\DeclareFieldFormat[article]{number}{\mkbibparens{#1}\addcomma}
% Comma before date; date not in parentheses
\renewbibmacro*{issue+date}{%
\setunit*{\addcomma\space}%
\iffieldundef{issue}
{\usebibmacro{date}}
{\printfield{issue}%
\setunit*{\addspace}%
\usebibmacro{date}}%
\newunit}
% comma after journal
\renewbibmacro*{journal+issuetitle}{%
\usebibmacro{journal}%
\setunit*{\addcomma\space}%
\iffieldundef{series}
{}
{\newunit
\printfield{series}%
\setunit{\addspace}}%
\usebibmacro{volume+number+eid}%
\setunit{\addspace}%
\usebibmacro{issue+date}%
\setunit{\addcolon\space}%
\usebibmacro{issue}%
\newunit}
\usepackage{filecontents}
\begin{filecontents}{sample.bib}
@article{einstein,
author = {Albert Einstein},
title = {On the electrodynamics of moving bodies},
journal = {Annalen der Physik},
volume = {322},
number = {10},
pages = {891--921},
year = {1905},
DOI = {http://dx.doi.org/10.1002/andp.19053221004}
}
@article{test,
author = {Example, Author},
journal = {Journal},
pages = {2},
title = {{Test paper}},
volume = {5},
year = {2018}
}
\end{filecontents}
\addbibresource{sample.bib}
\begin{document}
\nocite{*}
\printbibliography
\end{document}
В настоящее время вывод кода выглядит следующим образом:
Я попытался адаптировать код из этого вопроса, спрашивая об изменении разделителя при отсутствии номера томаприсутствует (https://tex.stackexchange.com/questions/199301/change-separator-for-articles-in-journals-without-volume-number-biblatex), для номера выпуска:
\renewcommand*{\bibpagespunct}{%
\ifentrytype{article}{%
\iffieldundef{number}
{\addcomma\space}}
{\space}}
Однако это удаляет пробел и запятую между годом и диапазоном страниц, когда присутствует номер проблемы, а не то, что я планировал навсе. Пожалуйста, кто-нибудь может помочь показать мне, где я иду не так.