Нежелательные разрывы строк в библиографии ссылок

Нежелательные разрывы строк в библиографии ссылок

Полный минимальный пример ZIP-файла

Я впервые работаю с LaTex и у меня возникли некоторые проблемы сБиблиография. Для некоторыхРекомендациино не для всех,doi странно представлен в новой строке с пробелом. Как я могу это изменить?Я использовал шаблон Springer отсюда:https://www.springernature.com/gp/authors/campaigns/latex-author-support

Вот соответствующая информация:

\documentclass[sn-apa]{sn-jnl}% APA Reference Style
\bibliography{sn-bibliography}
\bibliographystyle{sn-apacite}%

А вот икартина проблемы: введите описание изображения здесь

А вот записи в моем файле .bib:

@article{Cousineau2010, 
title={Outliers detection and treatment: a review.}, 
volume={3}, 
url={https://revistas.usb.edu.co/index.php/IJPR/article/view/844}, 
doi = {10.21500/20112084.844}, 
number={1}, 
journal={International Journal of Psychological Research}, 
author={Cousineau, Denis and Chartier, Sylvain}, 
year={2010}, 
pages={58–-67} 
}
@book{Cramer2008,
author = {Cramer, Henriette and Evers, Vanessa and Ramlal, Satyan and {Van Someren}, Maarten and Rutledge, Lloyd and Stash, Natalia and Aroyo, Lora and Wielinga, Bob},
booktitle = {User Modeling and User-Adapted Interaction},
doi = {10.1007/s11257-008-9051-3},
number = {5},
pages = {455--496},
title = {{The effects of transparency on trust in and acceptance of a content-based art recommender}},
volume = {18},
year = {2008},
}

Ссылка Крамера имеет книжный тип. Я не хочу, чтобы между doi Кузино и остальными ссылками было пробелов.Если я изменю ссылку Cousineau в моем файле .bib со статьи на продолжение, doi отображается правильно. Как изменить настройки ссылок на статьи?

Вот потенциально релевантный код из файла sn-jnl (строка 1685):

\if@APA@refstyle%   
\usepackage[natbibapa]{apacite}%   
\gdef\NumBib{NO}%   
\bibliographystyle{sn-apacite}%  
\def\refdoi#1{\urlstyle{rm}\url{#1}}%   
\renewcommand{\doiprefix}{}%   
\AtBeginDocument{%
\renewcommand{\BPBI}{.}% Period between initials - command from apacite.sty   }%   
\setlength{\bibsep}{1em}%  
\def\bibfont{\reset@font\fontfamily{\rmdefault}
\normalsize\selectfont}%

Пожалуйста, дайте мне знать, если для понимания проблемы необходима дополнительная информация.

Заранее большое спасибо.

решение1

Слишком долго для комментария.

Вот скверная идея. Если мы посмотрим на сгенерированный .bblфайл, то увидим

\begin{APACrefURL}
  {https://revistas.usb.edu.co/index.php/IJPR/article/view/844}
  \end{APACrefURL}

с env, определенным apacite.styкак

\newenvironment{APACrefURL}[1][]{%
  \ifx\@empty#1\@empty
    \BRetrievedFrom % Retrieved from
  \else
    \BRetrieved{#1}%  Retrieved <date>, from
  \fi
}{}

что в основном означает, что URL-часть никогда не получает никакого специального форматирования. Действительно, если мы изменим URL в примере, чтобы он содержал, _компиляция не удастся.

Но что, если бы мы могли заставить env читать URL как аргумент, а затем управлять форматированием. Для этого требуется либо современная установка LaTeX, либо пакет xparse.

\RenewDocumentEnvironment{APACrefURL}{ o m }{
  \IfNoValueTF{#1}{
    \BRetrievedFrom %
  }{
    \BRetrieved{#1} %
  }
  \url{#2}
}{}

Это использование \url, которое лучше, чем ничего.

Кажется, если мы также добавим

\AtBeginDocument{\usepackage{xurl}}

тогда форматирование URL кажется лучше (немного лучше переносы строк, но я все еще не думаю, что мы получаем перенос на любом символе, который xurlобычно можно было бы внести в таблицу)

Обратите внимание, что используемый код — это всего лишь sn-article.texшаблон из ссылки Springer.

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