Am 13.10.2020 um 11:55 schrieb Werner LEMBERG:
We could restore the old behaviour with a hack like

@tex
\gdef\urefallowbreak{%
\allowbreak
}
@end tex

in common-macros.itexi, I did not test this with the complete docs,
at least with your test example it does work, though.
I've just written an e-mail to 'bug-texinfo'.  Let's see what Gavin
replies.

Here is what Gavin replied:

It is a struggle.  I thought I could fix it by increasing the
\penalty inside \urefallowbreak, but this didn't work.  I found
that setting \pretolerance to -1 worked.  Formatting your input with
@tracingparagraphs=1 shows that the badness of the problem line is
422 with the desired breaking:

[]@textrm In a dif-fer-ent way, the full range of col-ors [][][]defined for X11
  (@texttt https://  en.  wikipedia.
@@penalty via @@0 b=422 p=0 d=196624

but the default value of \pretolerance is only 100.  Therefore it will
take the extra glue to reduce the badness, regardless of the size of the
penalty.

Reducing the length of the extra glue doesn't give good results
with all of the test cases that are already in our test file (in
doc/texinfo-tex-test.texi).  Hence, the only solution seems to be
to set \pretolerance to a negative value, to disable the first step
in the line breaking process.  However, there's no easy way to set this
for just a single paragraph, without affecting the rest of the document.

I've attempted to do so, however, in commit 36cc447a3.

Hopefully this will be enough but I wouldn't be surprised if another example
came along where the formatting was again substandard.

(I get my understanding of the line breaking process from chapter 19 of
"TeX by Topic" by V. Eijkhout.)
Running a doc build now with the new texinfo.tex version.

Michael

Reply via email to