Сжатие нескольких последовательных ссылок при использовании biblatex с загруженным стилем chem-acs

Сжатие нескольких последовательных ссылок при использовании biblatex с загруженным стилем chem-acs

В настоящее время я ссылаюсь, используя:

\documentclass[12pt,a4paper,bibliography=totoc]{scrreprt}
\usepackage[ngerman]{babel}
\usepackage[backend=biber,bibstyle=chem-acs,sorting=none,biblabel=brackets,sortcites=true]{biblatex}
\addbibresource{references.bib}
\begin{document}
Somebody told me.\cite{James2003,Allendorf2009,Rowsell2004}
\printbibliography
\end{document}

Предположим, что файл references.bib содержит:

@article{James2003,
author = {James, S. L.},
journal = {Chem. Soc. Rev.},
number = {5},
pages = {276--288},
title = {{Metal-organic frameworks}},
volume = {32},
year = {2003}
}

@article{Rowsell2004,
author = {Rowsell, Jesse L.C. and Yaghi, Omar M.},
journal = {Microporous Mesoporous Mater.},
pages = {3--14},
title = {{Metal-organic frameworks: a new class of porous materials}},
volume = {73},
year = {2004}
}

@article{Allendorf2009,
author = {Allendorf, M. D. and Bauer, C. A. and Bhakta, R. K. and Houk, R. J. T.},
journal = {Chem. Soc. Rev.},
number = {5},
pages = {1330--1352},
title = {{Luminescent metal-organic frameworks.}},
volume = {38},
year = {2009}
}

Выполнение latex -> biber -> latex -> latex -> dvips -> ps2pdf (эта процедура нужна по другим причинам) дает:

Somebody told me.[1, 2, 3]

Как мне получить сжатые последовательные ссылки, например

Somebody told me.[1-3]

Пакеты cite и natbib обеспечивают сжатие, но несовместимы с biblatex. У biblatex есть стиль numeric-comp, но мне нужно форматирование библиографии chem-acs. В документации biblatex упоминается опция sortcites=true, которая, похоже, действительно сортирует числа в скобках, но не обеспечивает сжатие.

Спасибо за вашу помощь!

решение1

Вы используете bibstyle=chem-acs, что означает, что стиль цитирования не изменился по сравнению с biblatexзаданным по умолчанию. Вероятно, вы chem-acsтакже хотите использовать стиль цитирования, что гораздо проще сделать с помощью style=chem-acs:

\begin{filecontents}{\jobname.bib}
@article{James2003,
author = {James, S. L.},
journal = {Chem. Soc. Rev.},
number = {5},
pages = {276--288},
title = {{Metal-organic frameworks}},
volume = {32},
year = {2003}
}

@article{Rowsell2004,
author = {Rowsell, Jesse L.C. and Yaghi, Omar M.},
journal = {Microporous Mesoporous Mater.},
pages = {3--14},
title = {{Metal-organic frameworks: a new class of porous materials}},
volume = {73},
year = {2004}
}

@article{Allendorf2009,
author = {Allendorf, M. D. and Bauer, C. A. and Bhakta, R. K. and Houk, R. J. T.},
journal = {Chem. Soc. Rev.},
number = {5},
pages = {1330--1352},
title = {{Luminescent metal-organic frameworks.}},
volume = {38},
year = {2009}
}
\end{filecontents}
\documentclass[12pt,a4paper,bibliography=totoc]{scrreprt}
\usepackage[ngerman]{babel}
\usepackage[backend=biber,style=chem-acs,biblabel=brackets]{biblatex}
\bibliography{\jobname}
\begin{document}
Somebody told me.\cite{James2003,Allendorf2009,Rowsell2004}
\printbibliography
\end{document}

Это автоматически устанавливает sorting=noneи sortcites=trueявляется стандартом для стилей химии.

Связанный контент