'Uneven' breaks in long URLs (url)












4














I'm struggling with hyphenation of long URLs (using command url{}).



Line breaking works fine in cases when URL is just part of line which doesn't fit to text area width. That means URL is hyphenated correctly if line starts with some text before URL - or if hyphenated URL is followed by other text which is also hyphenated.



Problem is in parts of URL which are at the line alone




  1. first line of very long URL


  2. middle lines of very long hyphenated URL



At screenshot there is visible that both cases overflowed the text area - case 1 is clearly visible, but also case 2 overflowed by few pixels.



In real document overflowed area is variable depending on contents which makes sometimes collisions with objects on the right side (images, ...).



enter image description here



How to hyphenate URLs correctly to avoid such overflows?




  • ideal solution is perfectly aligned block


  • but acceptable is also solution with underflowed line instead of overflowed (earlier line break instead of late)



I guess problem is mainly caused by non-proportional font and is fixed if other proportional text is present at the same line, but how to handle alone parts of long URLs?



documentclass[a4paper]{book}

usepackage{fontspec}

usepackage{polyglossia}
setmainlanguage{czech}

usepackage{ulem}
usepackage[unicode]{hyperref}
defUrlBreaks{do{a}} % Force correct hyphenation for this example


usepackage{pdfpages}

usepackage{needspace}

begin{document}

Reference text. Reference text. Reference text. Reference text. Reference text. Reference text. Reference text. Reference text. Reference text. Reference text.newline
url{http://aaa.bbb.ccc/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa}newline
Some text before. url{http://aaa.bbb.ccc/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa} Some text after. Some text after. Some text after. Some text after. Some text after. Some text after. Some text after. Some text after. Some text after. Some text after. Some text after.

end{document}




Shorter MWE



documentclass[a4paper]{book}

usepackage{hyperref}
defUrlBreaks{do{a}}

begin{document}
Reference text. Reference text. Reference text. Reference text. Reference text. Reference text. Reference text. Reference text. Reference text. Reference text.newline
url{http://aaa.bbb.ccc/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa}newline
Some text before. url{http://aaa.bbb.ccc/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa} Some text after. Some text after. Some text after. Some text after. Some text after. Some text after. Some text after. Some text after. Some text after. Some text after. Some text after.
end{document}









share|improve this question









New contributor




Joseph is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.




















  • I have retagged your question, since XeLaTeX and MikTeX are not really responsible for this issue. I have also added a much shorter MWE that still reproduces the issue, but gets rid of unnecessary packages.
    – moewe
    8 mins ago
















4














I'm struggling with hyphenation of long URLs (using command url{}).



Line breaking works fine in cases when URL is just part of line which doesn't fit to text area width. That means URL is hyphenated correctly if line starts with some text before URL - or if hyphenated URL is followed by other text which is also hyphenated.



Problem is in parts of URL which are at the line alone




  1. first line of very long URL


  2. middle lines of very long hyphenated URL



At screenshot there is visible that both cases overflowed the text area - case 1 is clearly visible, but also case 2 overflowed by few pixels.



In real document overflowed area is variable depending on contents which makes sometimes collisions with objects on the right side (images, ...).



enter image description here



How to hyphenate URLs correctly to avoid such overflows?




  • ideal solution is perfectly aligned block


  • but acceptable is also solution with underflowed line instead of overflowed (earlier line break instead of late)



I guess problem is mainly caused by non-proportional font and is fixed if other proportional text is present at the same line, but how to handle alone parts of long URLs?



documentclass[a4paper]{book}

usepackage{fontspec}

usepackage{polyglossia}
setmainlanguage{czech}

usepackage{ulem}
usepackage[unicode]{hyperref}
defUrlBreaks{do{a}} % Force correct hyphenation for this example


usepackage{pdfpages}

usepackage{needspace}

begin{document}

Reference text. Reference text. Reference text. Reference text. Reference text. Reference text. Reference text. Reference text. Reference text. Reference text.newline
url{http://aaa.bbb.ccc/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa}newline
Some text before. url{http://aaa.bbb.ccc/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa} Some text after. Some text after. Some text after. Some text after. Some text after. Some text after. Some text after. Some text after. Some text after. Some text after. Some text after.

end{document}




Shorter MWE



documentclass[a4paper]{book}

usepackage{hyperref}
defUrlBreaks{do{a}}

begin{document}
Reference text. Reference text. Reference text. Reference text. Reference text. Reference text. Reference text. Reference text. Reference text. Reference text.newline
url{http://aaa.bbb.ccc/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa}newline
Some text before. url{http://aaa.bbb.ccc/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa} Some text after. Some text after. Some text after. Some text after. Some text after. Some text after. Some text after. Some text after. Some text after. Some text after. Some text after.
end{document}









share|improve this question









New contributor




Joseph is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.




















  • I have retagged your question, since XeLaTeX and MikTeX are not really responsible for this issue. I have also added a much shorter MWE that still reproduces the issue, but gets rid of unnecessary packages.
    – moewe
    8 mins ago














4












4








4







I'm struggling with hyphenation of long URLs (using command url{}).



Line breaking works fine in cases when URL is just part of line which doesn't fit to text area width. That means URL is hyphenated correctly if line starts with some text before URL - or if hyphenated URL is followed by other text which is also hyphenated.



Problem is in parts of URL which are at the line alone




  1. first line of very long URL


  2. middle lines of very long hyphenated URL



At screenshot there is visible that both cases overflowed the text area - case 1 is clearly visible, but also case 2 overflowed by few pixels.



In real document overflowed area is variable depending on contents which makes sometimes collisions with objects on the right side (images, ...).



enter image description here



How to hyphenate URLs correctly to avoid such overflows?




  • ideal solution is perfectly aligned block


  • but acceptable is also solution with underflowed line instead of overflowed (earlier line break instead of late)



I guess problem is mainly caused by non-proportional font and is fixed if other proportional text is present at the same line, but how to handle alone parts of long URLs?



documentclass[a4paper]{book}

usepackage{fontspec}

usepackage{polyglossia}
setmainlanguage{czech}

usepackage{ulem}
usepackage[unicode]{hyperref}
defUrlBreaks{do{a}} % Force correct hyphenation for this example


usepackage{pdfpages}

usepackage{needspace}

begin{document}

Reference text. Reference text. Reference text. Reference text. Reference text. Reference text. Reference text. Reference text. Reference text. Reference text.newline
url{http://aaa.bbb.ccc/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa}newline
Some text before. url{http://aaa.bbb.ccc/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa} Some text after. Some text after. Some text after. Some text after. Some text after. Some text after. Some text after. Some text after. Some text after. Some text after. Some text after.

end{document}




Shorter MWE



documentclass[a4paper]{book}

usepackage{hyperref}
defUrlBreaks{do{a}}

begin{document}
Reference text. Reference text. Reference text. Reference text. Reference text. Reference text. Reference text. Reference text. Reference text. Reference text.newline
url{http://aaa.bbb.ccc/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa}newline
Some text before. url{http://aaa.bbb.ccc/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa} Some text after. Some text after. Some text after. Some text after. Some text after. Some text after. Some text after. Some text after. Some text after. Some text after. Some text after.
end{document}









share|improve this question









New contributor




Joseph is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.











I'm struggling with hyphenation of long URLs (using command url{}).



Line breaking works fine in cases when URL is just part of line which doesn't fit to text area width. That means URL is hyphenated correctly if line starts with some text before URL - or if hyphenated URL is followed by other text which is also hyphenated.



Problem is in parts of URL which are at the line alone




  1. first line of very long URL


  2. middle lines of very long hyphenated URL



At screenshot there is visible that both cases overflowed the text area - case 1 is clearly visible, but also case 2 overflowed by few pixels.



In real document overflowed area is variable depending on contents which makes sometimes collisions with objects on the right side (images, ...).



enter image description here



How to hyphenate URLs correctly to avoid such overflows?




  • ideal solution is perfectly aligned block


  • but acceptable is also solution with underflowed line instead of overflowed (earlier line break instead of late)



I guess problem is mainly caused by non-proportional font and is fixed if other proportional text is present at the same line, but how to handle alone parts of long URLs?



documentclass[a4paper]{book}

usepackage{fontspec}

usepackage{polyglossia}
setmainlanguage{czech}

usepackage{ulem}
usepackage[unicode]{hyperref}
defUrlBreaks{do{a}} % Force correct hyphenation for this example


usepackage{pdfpages}

usepackage{needspace}

begin{document}

Reference text. Reference text. Reference text. Reference text. Reference text. Reference text. Reference text. Reference text. Reference text. Reference text.newline
url{http://aaa.bbb.ccc/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa}newline
Some text before. url{http://aaa.bbb.ccc/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa} Some text after. Some text after. Some text after. Some text after. Some text after. Some text after. Some text after. Some text after. Some text after. Some text after. Some text after.

end{document}




Shorter MWE



documentclass[a4paper]{book}

usepackage{hyperref}
defUrlBreaks{do{a}}

begin{document}
Reference text. Reference text. Reference text. Reference text. Reference text. Reference text. Reference text. Reference text. Reference text. Reference text.newline
url{http://aaa.bbb.ccc/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa}newline
Some text before. url{http://aaa.bbb.ccc/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa} Some text after. Some text after. Some text after. Some text after. Some text after. Some text after. Some text after. Some text after. Some text after. Some text after. Some text after.
end{document}






hyperref line-breaking url






share|improve this question









New contributor




Joseph is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.











share|improve this question









New contributor




Joseph is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.









share|improve this question




share|improve this question








edited 9 mins ago









moewe

85.7k9109331




85.7k9109331






New contributor




Joseph is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.









asked 10 hours ago









Joseph

505




505




New contributor




Joseph is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.





New contributor





Joseph is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.






Joseph is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.












  • I have retagged your question, since XeLaTeX and MikTeX are not really responsible for this issue. I have also added a much shorter MWE that still reproduces the issue, but gets rid of unnecessary packages.
    – moewe
    8 mins ago


















  • I have retagged your question, since XeLaTeX and MikTeX are not really responsible for this issue. I have also added a much shorter MWE that still reproduces the issue, but gets rid of unnecessary packages.
    – moewe
    8 mins ago
















I have retagged your question, since XeLaTeX and MikTeX are not really responsible for this issue. I have also added a much shorter MWE that still reproduces the issue, but gets rid of unnecessary packages.
– moewe
8 mins ago




I have retagged your question, since XeLaTeX and MikTeX are not really responsible for this issue. I have also added a much shorter MWE that still reproduces the issue, but gets rid of unnecessary packages.
– moewe
8 mins ago










3 Answers
3






active

oldest

votes


















2














url's are not hyphenated. They are broken. As they are actually set in math the parts are blocks of quite fix width, this makes it sometimes difficult to fill up a line.
You can add a bit stretchability after the a to avoid the problem:



documentclass[a4paper]{book}

usepackage{fontspec}

usepackage{polyglossia}
setmainlanguage{czech}

usepackage{ulem}
usepackage[unicode]{hyperref}
%defUrlBreaks{do{a}} %
% some stretchability:
defdo#1{apptoUrlSpecials{do#1{mathchar`#1 mskip 0mu plus 1mupenalty100}}}%
doa

begin{document}

Reference text. Reference text. Reference text. Reference text. Reference text. Reference text. Reference text. Reference text. Reference text. Reference text.newline
url{http://aaa.bbb.ccc/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa}newline
Some text before. url{http://aaa.bbb.ccc/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa} Some text after. Some text after. Some text after. Some text after. Some text after. Some text after. Some text after. Some text after. Some text after. Some text after. Some text after.

end{document}


enter image description here






share|improve this answer





















  • This seems to be the same issue as tex.stackexchange.com/q/466114/35864. I'm wondering if it would make sense to add that tiny bit of stretchable space to the biblatex definitions, since the result with one letter overflowing into the margin is visually unpleasant and also quite unintuitive when one looks at it for the first time: At least I would have thought that moving the protruding a into the next line would not have left the first line terribly underfull...
    – moewe
    3 mins ago



















1














You can use the xurl package:



documentclass[a4paper]{book}

usepackage{fontspec}

usepackage{polyglossia}
setmainlanguage{czech}
usepackage{showframe}
renewcommand{ShowFrameLinethickness}{0.3pt}
usepackage{ulem}
usepackage{xurl}
usepackage[unicode]{hyperref}

usepackage{pdfpages}

usepackage{needspace}

begin{document}

Reference text. Reference text. Reference text. Reference text. Reference text. Reference text. Reference text. Reference text. Reference text. Reference text.newline
url{http://aaa.bbb.ccc/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa}newline
Some text before. url{http://abc.bbb.ccc/abcabcaaaaaaabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabca} Some text after. Some text after. Some text after. Some text after. Some text after. Some text after. Some text after. Some text after. Some text after. Some text after. Some text after.

end{document}


enter image description here






share|improve this answer

















  • 1




    essentially the same answer as the one by @Kurt, but his identifies a bug, fixes it, and he says he will report it.
    – barbara beeton
    8 hours ago



















1














Just add the call of package xurl before package hyperref.



The following MWE



documentclass[a4paper]{book}

usepackage{fontspec}

usepackage{polyglossia}
setmainlanguage{czech}

usepackage{ulem}
usepackage[hyphens]{xurl} % <==========================================
usepackage[unicode]{hyperref}

usepackage{pdfpages}

usepackage{needspace}


begin{document}

Reference text. Reference text. Reference text. Reference text.
Reference text. Reference text. Reference text. Reference text.
Reference text. Reference text.newline
url{http://aaa.bbb.ccc/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa}newline
Some text before. url{http://aaa.bbb.ccc/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa} Some text after. Some text after. Some text after. Some text after. Some text after. Some text after. Some text after. Some text after. Some text after. Some text after. Some text after.

end{document}


gives you:



enter image description here



I will inform the maintainer of xurl about this bug. Meanwhile you can use the following (not perfect, but better than nothing ...) code ( I corrected the code in def: defUrlBreaks{doa}):



documentclass[a4paper]{book}

usepackage{fontspec}

usepackage{polyglossia}
setmainlanguage{czech}

usepackage{pdfpages}
usepackage{needspace}
usepackage{ulem}
usepackage{showframe}

%usepackage{xurl} % <==========================================
usepackage[unicode]{hyperref}
defUrlBreaks{doa}


begin{document}

Reference text. Reference text. Reference text. Reference text.
Reference text. Reference text. Reference text. Reference text.
Reference text. Reference text.

url{http://aaa.bbb.ccc/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa}

Some text before. url{http://aaa.bbb.ccc/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa} Some text after. Some text after. Some text after. Some text after. Some text after. Some text after. Some text after. Some text after. Some text after. Some text after. Some text after.

end{document}


with the result:



enter image description here






share|improve this answer























  • Looks fine, but what is the additional "13579/:" in the screenshot?
    – Joseph
    10 hours ago










  • @Joseph Ups, I did not saw that. I will check ...
    – Kurt
    10 hours ago










  • It's also in Bernard's example above :-) Maybe some debug feature?
    – Joseph
    10 hours ago












  • The numbers are due to a bug in xurl. It is adding all numbers to UrlSpecials, but without a second argument and that breaks them.
    – Ulrike Fischer
    10 hours ago











Your Answer








StackExchange.ready(function() {
var channelOptions = {
tags: "".split(" "),
id: "85"
};
initTagRenderer("".split(" "), "".split(" "), channelOptions);

StackExchange.using("externalEditor", function() {
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled) {
StackExchange.using("snippets", function() {
createEditor();
});
}
else {
createEditor();
}
});

function createEditor() {
StackExchange.prepareEditor({
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: false,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: null,
bindNavPrevention: true,
postfix: "",
imageUploader: {
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
},
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
});


}
});






Joseph is a new contributor. Be nice, and check out our Code of Conduct.










draft saved

draft discarded


















StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2ftex.stackexchange.com%2fquestions%2f467041%2funeven-breaks-in-long-urls-url%23new-answer', 'question_page');
}
);

Post as a guest















Required, but never shown

























3 Answers
3






active

oldest

votes








3 Answers
3






active

oldest

votes









active

oldest

votes






active

oldest

votes









2














url's are not hyphenated. They are broken. As they are actually set in math the parts are blocks of quite fix width, this makes it sometimes difficult to fill up a line.
You can add a bit stretchability after the a to avoid the problem:



documentclass[a4paper]{book}

usepackage{fontspec}

usepackage{polyglossia}
setmainlanguage{czech}

usepackage{ulem}
usepackage[unicode]{hyperref}
%defUrlBreaks{do{a}} %
% some stretchability:
defdo#1{apptoUrlSpecials{do#1{mathchar`#1 mskip 0mu plus 1mupenalty100}}}%
doa

begin{document}

Reference text. Reference text. Reference text. Reference text. Reference text. Reference text. Reference text. Reference text. Reference text. Reference text.newline
url{http://aaa.bbb.ccc/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa}newline
Some text before. url{http://aaa.bbb.ccc/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa} Some text after. Some text after. Some text after. Some text after. Some text after. Some text after. Some text after. Some text after. Some text after. Some text after. Some text after.

end{document}


enter image description here






share|improve this answer





















  • This seems to be the same issue as tex.stackexchange.com/q/466114/35864. I'm wondering if it would make sense to add that tiny bit of stretchable space to the biblatex definitions, since the result with one letter overflowing into the margin is visually unpleasant and also quite unintuitive when one looks at it for the first time: At least I would have thought that moving the protruding a into the next line would not have left the first line terribly underfull...
    – moewe
    3 mins ago
















2














url's are not hyphenated. They are broken. As they are actually set in math the parts are blocks of quite fix width, this makes it sometimes difficult to fill up a line.
You can add a bit stretchability after the a to avoid the problem:



documentclass[a4paper]{book}

usepackage{fontspec}

usepackage{polyglossia}
setmainlanguage{czech}

usepackage{ulem}
usepackage[unicode]{hyperref}
%defUrlBreaks{do{a}} %
% some stretchability:
defdo#1{apptoUrlSpecials{do#1{mathchar`#1 mskip 0mu plus 1mupenalty100}}}%
doa

begin{document}

Reference text. Reference text. Reference text. Reference text. Reference text. Reference text. Reference text. Reference text. Reference text. Reference text.newline
url{http://aaa.bbb.ccc/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa}newline
Some text before. url{http://aaa.bbb.ccc/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa} Some text after. Some text after. Some text after. Some text after. Some text after. Some text after. Some text after. Some text after. Some text after. Some text after. Some text after.

end{document}


enter image description here






share|improve this answer





















  • This seems to be the same issue as tex.stackexchange.com/q/466114/35864. I'm wondering if it would make sense to add that tiny bit of stretchable space to the biblatex definitions, since the result with one letter overflowing into the margin is visually unpleasant and also quite unintuitive when one looks at it for the first time: At least I would have thought that moving the protruding a into the next line would not have left the first line terribly underfull...
    – moewe
    3 mins ago














2












2








2






url's are not hyphenated. They are broken. As they are actually set in math the parts are blocks of quite fix width, this makes it sometimes difficult to fill up a line.
You can add a bit stretchability after the a to avoid the problem:



documentclass[a4paper]{book}

usepackage{fontspec}

usepackage{polyglossia}
setmainlanguage{czech}

usepackage{ulem}
usepackage[unicode]{hyperref}
%defUrlBreaks{do{a}} %
% some stretchability:
defdo#1{apptoUrlSpecials{do#1{mathchar`#1 mskip 0mu plus 1mupenalty100}}}%
doa

begin{document}

Reference text. Reference text. Reference text. Reference text. Reference text. Reference text. Reference text. Reference text. Reference text. Reference text.newline
url{http://aaa.bbb.ccc/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa}newline
Some text before. url{http://aaa.bbb.ccc/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa} Some text after. Some text after. Some text after. Some text after. Some text after. Some text after. Some text after. Some text after. Some text after. Some text after. Some text after.

end{document}


enter image description here






share|improve this answer












url's are not hyphenated. They are broken. As they are actually set in math the parts are blocks of quite fix width, this makes it sometimes difficult to fill up a line.
You can add a bit stretchability after the a to avoid the problem:



documentclass[a4paper]{book}

usepackage{fontspec}

usepackage{polyglossia}
setmainlanguage{czech}

usepackage{ulem}
usepackage[unicode]{hyperref}
%defUrlBreaks{do{a}} %
% some stretchability:
defdo#1{apptoUrlSpecials{do#1{mathchar`#1 mskip 0mu plus 1mupenalty100}}}%
doa

begin{document}

Reference text. Reference text. Reference text. Reference text. Reference text. Reference text. Reference text. Reference text. Reference text. Reference text.newline
url{http://aaa.bbb.ccc/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa}newline
Some text before. url{http://aaa.bbb.ccc/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa} Some text after. Some text after. Some text after. Some text after. Some text after. Some text after. Some text after. Some text after. Some text after. Some text after. Some text after.

end{document}


enter image description here







share|improve this answer












share|improve this answer



share|improve this answer










answered 9 hours ago









Ulrike Fischer

185k7289666




185k7289666












  • This seems to be the same issue as tex.stackexchange.com/q/466114/35864. I'm wondering if it would make sense to add that tiny bit of stretchable space to the biblatex definitions, since the result with one letter overflowing into the margin is visually unpleasant and also quite unintuitive when one looks at it for the first time: At least I would have thought that moving the protruding a into the next line would not have left the first line terribly underfull...
    – moewe
    3 mins ago


















  • This seems to be the same issue as tex.stackexchange.com/q/466114/35864. I'm wondering if it would make sense to add that tiny bit of stretchable space to the biblatex definitions, since the result with one letter overflowing into the margin is visually unpleasant and also quite unintuitive when one looks at it for the first time: At least I would have thought that moving the protruding a into the next line would not have left the first line terribly underfull...
    – moewe
    3 mins ago
















This seems to be the same issue as tex.stackexchange.com/q/466114/35864. I'm wondering if it would make sense to add that tiny bit of stretchable space to the biblatex definitions, since the result with one letter overflowing into the margin is visually unpleasant and also quite unintuitive when one looks at it for the first time: At least I would have thought that moving the protruding a into the next line would not have left the first line terribly underfull...
– moewe
3 mins ago




This seems to be the same issue as tex.stackexchange.com/q/466114/35864. I'm wondering if it would make sense to add that tiny bit of stretchable space to the biblatex definitions, since the result with one letter overflowing into the margin is visually unpleasant and also quite unintuitive when one looks at it for the first time: At least I would have thought that moving the protruding a into the next line would not have left the first line terribly underfull...
– moewe
3 mins ago











1














You can use the xurl package:



documentclass[a4paper]{book}

usepackage{fontspec}

usepackage{polyglossia}
setmainlanguage{czech}
usepackage{showframe}
renewcommand{ShowFrameLinethickness}{0.3pt}
usepackage{ulem}
usepackage{xurl}
usepackage[unicode]{hyperref}

usepackage{pdfpages}

usepackage{needspace}

begin{document}

Reference text. Reference text. Reference text. Reference text. Reference text. Reference text. Reference text. Reference text. Reference text. Reference text.newline
url{http://aaa.bbb.ccc/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa}newline
Some text before. url{http://abc.bbb.ccc/abcabcaaaaaaabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabca} Some text after. Some text after. Some text after. Some text after. Some text after. Some text after. Some text after. Some text after. Some text after. Some text after. Some text after.

end{document}


enter image description here






share|improve this answer

















  • 1




    essentially the same answer as the one by @Kurt, but his identifies a bug, fixes it, and he says he will report it.
    – barbara beeton
    8 hours ago
















1














You can use the xurl package:



documentclass[a4paper]{book}

usepackage{fontspec}

usepackage{polyglossia}
setmainlanguage{czech}
usepackage{showframe}
renewcommand{ShowFrameLinethickness}{0.3pt}
usepackage{ulem}
usepackage{xurl}
usepackage[unicode]{hyperref}

usepackage{pdfpages}

usepackage{needspace}

begin{document}

Reference text. Reference text. Reference text. Reference text. Reference text. Reference text. Reference text. Reference text. Reference text. Reference text.newline
url{http://aaa.bbb.ccc/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa}newline
Some text before. url{http://abc.bbb.ccc/abcabcaaaaaaabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabca} Some text after. Some text after. Some text after. Some text after. Some text after. Some text after. Some text after. Some text after. Some text after. Some text after. Some text after.

end{document}


enter image description here






share|improve this answer

















  • 1




    essentially the same answer as the one by @Kurt, but his identifies a bug, fixes it, and he says he will report it.
    – barbara beeton
    8 hours ago














1












1








1






You can use the xurl package:



documentclass[a4paper]{book}

usepackage{fontspec}

usepackage{polyglossia}
setmainlanguage{czech}
usepackage{showframe}
renewcommand{ShowFrameLinethickness}{0.3pt}
usepackage{ulem}
usepackage{xurl}
usepackage[unicode]{hyperref}

usepackage{pdfpages}

usepackage{needspace}

begin{document}

Reference text. Reference text. Reference text. Reference text. Reference text. Reference text. Reference text. Reference text. Reference text. Reference text.newline
url{http://aaa.bbb.ccc/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa}newline
Some text before. url{http://abc.bbb.ccc/abcabcaaaaaaabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabca} Some text after. Some text after. Some text after. Some text after. Some text after. Some text after. Some text after. Some text after. Some text after. Some text after. Some text after.

end{document}


enter image description here






share|improve this answer












You can use the xurl package:



documentclass[a4paper]{book}

usepackage{fontspec}

usepackage{polyglossia}
setmainlanguage{czech}
usepackage{showframe}
renewcommand{ShowFrameLinethickness}{0.3pt}
usepackage{ulem}
usepackage{xurl}
usepackage[unicode]{hyperref}

usepackage{pdfpages}

usepackage{needspace}

begin{document}

Reference text. Reference text. Reference text. Reference text. Reference text. Reference text. Reference text. Reference text. Reference text. Reference text.newline
url{http://aaa.bbb.ccc/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa}newline
Some text before. url{http://abc.bbb.ccc/abcabcaaaaaaabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabca} Some text after. Some text after. Some text after. Some text after. Some text after. Some text after. Some text after. Some text after. Some text after. Some text after. Some text after.

end{document}


enter image description here







share|improve this answer












share|improve this answer



share|improve this answer










answered 10 hours ago









Bernard

165k769193




165k769193








  • 1




    essentially the same answer as the one by @Kurt, but his identifies a bug, fixes it, and he says he will report it.
    – barbara beeton
    8 hours ago














  • 1




    essentially the same answer as the one by @Kurt, but his identifies a bug, fixes it, and he says he will report it.
    – barbara beeton
    8 hours ago








1




1




essentially the same answer as the one by @Kurt, but his identifies a bug, fixes it, and he says he will report it.
– barbara beeton
8 hours ago




essentially the same answer as the one by @Kurt, but his identifies a bug, fixes it, and he says he will report it.
– barbara beeton
8 hours ago











1














Just add the call of package xurl before package hyperref.



The following MWE



documentclass[a4paper]{book}

usepackage{fontspec}

usepackage{polyglossia}
setmainlanguage{czech}

usepackage{ulem}
usepackage[hyphens]{xurl} % <==========================================
usepackage[unicode]{hyperref}

usepackage{pdfpages}

usepackage{needspace}


begin{document}

Reference text. Reference text. Reference text. Reference text.
Reference text. Reference text. Reference text. Reference text.
Reference text. Reference text.newline
url{http://aaa.bbb.ccc/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa}newline
Some text before. url{http://aaa.bbb.ccc/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa} Some text after. Some text after. Some text after. Some text after. Some text after. Some text after. Some text after. Some text after. Some text after. Some text after. Some text after.

end{document}


gives you:



enter image description here



I will inform the maintainer of xurl about this bug. Meanwhile you can use the following (not perfect, but better than nothing ...) code ( I corrected the code in def: defUrlBreaks{doa}):



documentclass[a4paper]{book}

usepackage{fontspec}

usepackage{polyglossia}
setmainlanguage{czech}

usepackage{pdfpages}
usepackage{needspace}
usepackage{ulem}
usepackage{showframe}

%usepackage{xurl} % <==========================================
usepackage[unicode]{hyperref}
defUrlBreaks{doa}


begin{document}

Reference text. Reference text. Reference text. Reference text.
Reference text. Reference text. Reference text. Reference text.
Reference text. Reference text.

url{http://aaa.bbb.ccc/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa}

Some text before. url{http://aaa.bbb.ccc/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa} Some text after. Some text after. Some text after. Some text after. Some text after. Some text after. Some text after. Some text after. Some text after. Some text after. Some text after.

end{document}


with the result:



enter image description here






share|improve this answer























  • Looks fine, but what is the additional "13579/:" in the screenshot?
    – Joseph
    10 hours ago










  • @Joseph Ups, I did not saw that. I will check ...
    – Kurt
    10 hours ago










  • It's also in Bernard's example above :-) Maybe some debug feature?
    – Joseph
    10 hours ago












  • The numbers are due to a bug in xurl. It is adding all numbers to UrlSpecials, but without a second argument and that breaks them.
    – Ulrike Fischer
    10 hours ago
















1














Just add the call of package xurl before package hyperref.



The following MWE



documentclass[a4paper]{book}

usepackage{fontspec}

usepackage{polyglossia}
setmainlanguage{czech}

usepackage{ulem}
usepackage[hyphens]{xurl} % <==========================================
usepackage[unicode]{hyperref}

usepackage{pdfpages}

usepackage{needspace}


begin{document}

Reference text. Reference text. Reference text. Reference text.
Reference text. Reference text. Reference text. Reference text.
Reference text. Reference text.newline
url{http://aaa.bbb.ccc/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa}newline
Some text before. url{http://aaa.bbb.ccc/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa} Some text after. Some text after. Some text after. Some text after. Some text after. Some text after. Some text after. Some text after. Some text after. Some text after. Some text after.

end{document}


gives you:



enter image description here



I will inform the maintainer of xurl about this bug. Meanwhile you can use the following (not perfect, but better than nothing ...) code ( I corrected the code in def: defUrlBreaks{doa}):



documentclass[a4paper]{book}

usepackage{fontspec}

usepackage{polyglossia}
setmainlanguage{czech}

usepackage{pdfpages}
usepackage{needspace}
usepackage{ulem}
usepackage{showframe}

%usepackage{xurl} % <==========================================
usepackage[unicode]{hyperref}
defUrlBreaks{doa}


begin{document}

Reference text. Reference text. Reference text. Reference text.
Reference text. Reference text. Reference text. Reference text.
Reference text. Reference text.

url{http://aaa.bbb.ccc/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa}

Some text before. url{http://aaa.bbb.ccc/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa} Some text after. Some text after. Some text after. Some text after. Some text after. Some text after. Some text after. Some text after. Some text after. Some text after. Some text after.

end{document}


with the result:



enter image description here






share|improve this answer























  • Looks fine, but what is the additional "13579/:" in the screenshot?
    – Joseph
    10 hours ago










  • @Joseph Ups, I did not saw that. I will check ...
    – Kurt
    10 hours ago










  • It's also in Bernard's example above :-) Maybe some debug feature?
    – Joseph
    10 hours ago












  • The numbers are due to a bug in xurl. It is adding all numbers to UrlSpecials, but without a second argument and that breaks them.
    – Ulrike Fischer
    10 hours ago














1












1








1






Just add the call of package xurl before package hyperref.



The following MWE



documentclass[a4paper]{book}

usepackage{fontspec}

usepackage{polyglossia}
setmainlanguage{czech}

usepackage{ulem}
usepackage[hyphens]{xurl} % <==========================================
usepackage[unicode]{hyperref}

usepackage{pdfpages}

usepackage{needspace}


begin{document}

Reference text. Reference text. Reference text. Reference text.
Reference text. Reference text. Reference text. Reference text.
Reference text. Reference text.newline
url{http://aaa.bbb.ccc/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa}newline
Some text before. url{http://aaa.bbb.ccc/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa} Some text after. Some text after. Some text after. Some text after. Some text after. Some text after. Some text after. Some text after. Some text after. Some text after. Some text after.

end{document}


gives you:



enter image description here



I will inform the maintainer of xurl about this bug. Meanwhile you can use the following (not perfect, but better than nothing ...) code ( I corrected the code in def: defUrlBreaks{doa}):



documentclass[a4paper]{book}

usepackage{fontspec}

usepackage{polyglossia}
setmainlanguage{czech}

usepackage{pdfpages}
usepackage{needspace}
usepackage{ulem}
usepackage{showframe}

%usepackage{xurl} % <==========================================
usepackage[unicode]{hyperref}
defUrlBreaks{doa}


begin{document}

Reference text. Reference text. Reference text. Reference text.
Reference text. Reference text. Reference text. Reference text.
Reference text. Reference text.

url{http://aaa.bbb.ccc/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa}

Some text before. url{http://aaa.bbb.ccc/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa} Some text after. Some text after. Some text after. Some text after. Some text after. Some text after. Some text after. Some text after. Some text after. Some text after. Some text after.

end{document}


with the result:



enter image description here






share|improve this answer














Just add the call of package xurl before package hyperref.



The following MWE



documentclass[a4paper]{book}

usepackage{fontspec}

usepackage{polyglossia}
setmainlanguage{czech}

usepackage{ulem}
usepackage[hyphens]{xurl} % <==========================================
usepackage[unicode]{hyperref}

usepackage{pdfpages}

usepackage{needspace}


begin{document}

Reference text. Reference text. Reference text. Reference text.
Reference text. Reference text. Reference text. Reference text.
Reference text. Reference text.newline
url{http://aaa.bbb.ccc/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa}newline
Some text before. url{http://aaa.bbb.ccc/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa} Some text after. Some text after. Some text after. Some text after. Some text after. Some text after. Some text after. Some text after. Some text after. Some text after. Some text after.

end{document}


gives you:



enter image description here



I will inform the maintainer of xurl about this bug. Meanwhile you can use the following (not perfect, but better than nothing ...) code ( I corrected the code in def: defUrlBreaks{doa}):



documentclass[a4paper]{book}

usepackage{fontspec}

usepackage{polyglossia}
setmainlanguage{czech}

usepackage{pdfpages}
usepackage{needspace}
usepackage{ulem}
usepackage{showframe}

%usepackage{xurl} % <==========================================
usepackage[unicode]{hyperref}
defUrlBreaks{doa}


begin{document}

Reference text. Reference text. Reference text. Reference text.
Reference text. Reference text. Reference text. Reference text.
Reference text. Reference text.

url{http://aaa.bbb.ccc/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa}

Some text before. url{http://aaa.bbb.ccc/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa} Some text after. Some text after. Some text after. Some text after. Some text after. Some text after. Some text after. Some text after. Some text after. Some text after. Some text after.

end{document}


with the result:



enter image description here







share|improve this answer














share|improve this answer



share|improve this answer








edited 10 hours ago

























answered 10 hours ago









Kurt

35.1k847158




35.1k847158












  • Looks fine, but what is the additional "13579/:" in the screenshot?
    – Joseph
    10 hours ago










  • @Joseph Ups, I did not saw that. I will check ...
    – Kurt
    10 hours ago










  • It's also in Bernard's example above :-) Maybe some debug feature?
    – Joseph
    10 hours ago












  • The numbers are due to a bug in xurl. It is adding all numbers to UrlSpecials, but without a second argument and that breaks them.
    – Ulrike Fischer
    10 hours ago


















  • Looks fine, but what is the additional "13579/:" in the screenshot?
    – Joseph
    10 hours ago










  • @Joseph Ups, I did not saw that. I will check ...
    – Kurt
    10 hours ago










  • It's also in Bernard's example above :-) Maybe some debug feature?
    – Joseph
    10 hours ago












  • The numbers are due to a bug in xurl. It is adding all numbers to UrlSpecials, but without a second argument and that breaks them.
    – Ulrike Fischer
    10 hours ago
















Looks fine, but what is the additional "13579/:" in the screenshot?
– Joseph
10 hours ago




Looks fine, but what is the additional "13579/:" in the screenshot?
– Joseph
10 hours ago












@Joseph Ups, I did not saw that. I will check ...
– Kurt
10 hours ago




@Joseph Ups, I did not saw that. I will check ...
– Kurt
10 hours ago












It's also in Bernard's example above :-) Maybe some debug feature?
– Joseph
10 hours ago






It's also in Bernard's example above :-) Maybe some debug feature?
– Joseph
10 hours ago














The numbers are due to a bug in xurl. It is adding all numbers to UrlSpecials, but without a second argument and that breaks them.
– Ulrike Fischer
10 hours ago




The numbers are due to a bug in xurl. It is adding all numbers to UrlSpecials, but without a second argument and that breaks them.
– Ulrike Fischer
10 hours ago










Joseph is a new contributor. Be nice, and check out our Code of Conduct.










draft saved

draft discarded


















Joseph is a new contributor. Be nice, and check out our Code of Conduct.













Joseph is a new contributor. Be nice, and check out our Code of Conduct.












Joseph is a new contributor. Be nice, and check out our Code of Conduct.
















Thanks for contributing an answer to TeX - LaTeX Stack Exchange!


  • Please be sure to answer the question. Provide details and share your research!

But avoid



  • Asking for help, clarification, or responding to other answers.

  • Making statements based on opinion; back them up with references or personal experience.


To learn more, see our tips on writing great answers.





Some of your past answers have not been well-received, and you're in danger of being blocked from answering.


Please pay close attention to the following guidance:


  • Please be sure to answer the question. Provide details and share your research!

But avoid



  • Asking for help, clarification, or responding to other answers.

  • Making statements based on opinion; back them up with references or personal experience.


To learn more, see our tips on writing great answers.




draft saved


draft discarded














StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2ftex.stackexchange.com%2fquestions%2f467041%2funeven-breaks-in-long-urls-url%23new-answer', 'question_page');
}
);

Post as a guest















Required, but never shown





















































Required, but never shown














Required, but never shown












Required, but never shown







Required, but never shown

































Required, but never shown














Required, but never shown












Required, but never shown







Required, but never shown







Popular posts from this blog

A CLEAN and SIMPLE way to add appendices to Table of Contents and bookmarks

Calculate evaluation metrics using cross_val_predict sklearn

Insert data from modal to MySQL (multiple modal on website)