Überfüllte \hbox in Bibliographie-URL trotz hfuzz

Überfüllte \hbox in Bibliographie-URL trotz hfuzz

Obwohl ich hfuzz=…Warnungen für (ausreichend kleine) überfüllte Felder ausblende, wird bei einem überfüllten Feld in einer URL in meiner Bibliographie immer noch eine Warnung angezeigt. Warum? Wie kann ich die Warnung entfernen?

Zur Veranschaulichung erzeugt das folgende Beispiel bei der überfüllten Zeile im Haupttext keine Warnung (was zeigt, dass dies hfuzzder Fall ist), bei der (weniger) überfüllten Zeile in der Bibliografie hingegen schon.

\begin{filecontents}{example.bib}
  @techreport{report,
    author = {Unknown, U. and Unknown, U.},
    institution = {Institution},
    title = {Some title},
    url = {https://www.example.com/some-very-long-url-with-much-text/and-a-second-part-that-is-overly-long-as-well-and-fills-the-line/},
    year = {2015}
  }
\end{filecontents}
 
\documentclass{article}
\usepackage{natbib}
\usepackage{hyperref}
\bibliographystyle{abbrvnat}

\hfuzz=4cm

\begin{document}
This url \url{http://www.example.com/is-overly-long-but-raises-no-warnings/is-overly-long-but-raises-no-warnings/is-overly-long-but-raises-no-warnings} 
\citep{report}.

\bibliography{example}

\end{document}

Antwort1

Wenn Sie hinzufügen

\show\thebibliography

Du wirst sehen

> \thebibliography=\long macro:
#1->\bibsection \parindent \z@ \bibpreamble \bibfont \list {\@biblabel {\the \c
@NAT@ctr }}{\@bibsetup {#1}\global \c@NAT@ctr \z@ }\ifNAT@openbib \renewcommand
 \newblock {\par }\else \renewcommand \newblock {\hskip .11em \@plus .33em \@mi
nus .07em}\fi \sloppy \clubpenalty 4000\widowpenalty 4000 \sfcode `\.\@m \let \
NAT@bibitem@first@sw \@firstoftwo \let \citeN \cite \let \shortcite \cite \let 
\citeasnoun \cite .
l.18 \show\thebibliography

das stimmt, \sloppyund zwar

\DeclareRobustCommand\sloppy{%
  \tolerance 9999%
  \emergencystretch 3em%
  \hfuzz .5\p@
  \vfuzz\hfuzz}

So \hfuzzwird es innerhalb der Bibliographie auf .5pt zurückgesetzt. Sie können es neu definieren, \sloppyum einen größeren hfuzz zu haben oder hinzuzufügen

\usepackage{xurl}

damit die Leitung nicht überfüllt ist Bildbeschreibung hier eingeben

verwandte Informationen