Я использую пакет amsrefs для форматирования библиографии. Проблема в том, что иногда строки очень плохо набраны. Проблема часто возникает из-за поля doi. Смотрите изображение ниже.
Я бы принял ручной перенос строки, даже если запись не рваная с правой стороны. Простой \newline в поле страниц оставляет запятую в строке, что выглядит плохо (см. изображение ниже)
Есть идеи, как вручную разбить строки с правильными знаками препинания? Вот и MWE
\documentclass{article}
\usepackage{amsmath}
\usepackage{amsrefs}
\renewcommand{\PrintDOI}[1]{DOI~#1}
\begin{document}
\begin{bibdiv}
\begin{biblist}
\bib{14}{article}{
author={Kim, S.G.},
title={The unit ball},
journal={Kyungpook Math. J.},
volume={53},
date={2013},
pages={295--306},
doi={10.5666/KMJ.2013.53.2.295},
}
\end{biblist}
\end{bibdiv}
\end{document}
решение1
А как насчет этого крайне грязного трюка?
\documentclass{article}
\usepackage{amsmath}
\usepackage{amsrefs}
\renewcommand{\PrintDOI}[1]{DOI~#1}
\begin{document}
\DefineSimpleKey{bib}{doinewline}
\BibSpec{article}{%
+{} {\PrintAuthors} {author}
+{,} { \textit} {title}
+{.} { } {part}
+{:} { \textit} {subtitle}
+{,} { \PrintContributions} {contribution}
+{.} { \PrintPartials} {partial}
+{,} { } {journal}
+{} { \textbf} {volume}
+{} { \PrintDatePV} {date}
+{,} { \issuetext} {number}
+{,} { \eprintpages} {pages}
+{,} { } {status}
+{} {, \newline\PrintDOI} {doinewline}
+{,} { \PrintDOI} {doi}
+{,} { available at \eprint} {eprint}
+{} { \parenthesize} {language}
+{} { \PrintTranslation} {translation}
+{;} { \PrintReprint} {reprint}
+{.} { } {note}
+{.} {} {transition}
+{} {\SentenceSpace \PrintReviews} {review}
}
\begin{bibdiv}
\begin{biblist}
\bib{14}{article}{
author={Kim, S.G.},
title={The unit ball},
journal={Kyungpook Math. J.},
volume={53},
date={2013},
pages={295--306},
doinewline={10.5666/KMJ.2013.53.2.295},
}
\end{biblist}
\end{bibdiv}
\end{document}
решение2
Использовать\linebreak
команду для переноса строки с правильной расстановкой знаков препинания. См. раздел 8.5пакет документацииБольше подробностей:
Раздел 8.5 Разрывы строк в библиографии
Предположим, вам нужно рекомендовать LaTeX разрыв строки в определенном месте. Предложение разрыва строки в середине поля не представляет никаких трудностей: просто отредактируйте ваш конечный
.bbl
файл и вставьте\linebreak
команду:subtitle={Toward a transformative hermeneutics\linebreak[3] of quantum gravity},
Но что делать, если вам нужно принудительно перенести строку?междудва поля? На первый взгляд вы можете опасаться, что
subtitle={...hermeneutics of quantum gravity\linebreak[3]},
приведет к переносу строки перед запятой, которая
amsrefs
обычно вставляется после заголовка: Не бойтесь;amsrefs
программа это обнаружит и автоматически переместит запятую перед переносом строки, как вам нужно: