'Uneven' breaks in long URLs (url)
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
first line of very long URL
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, ...).
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
New contributor
add a comment |
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
first line of very long URL
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, ...).
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
New contributor
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
add a comment |
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
first line of very long URL
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, ...).
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
New contributor
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
first line of very long URL
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, ...).
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
hyperref line-breaking url
New contributor
New contributor
edited 9 mins ago
moewe
85.7k9109331
85.7k9109331
New contributor
asked 10 hours ago
Joseph
505
505
New contributor
New contributor
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
add a comment |
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
add a comment |
3 Answers
3
active
oldest
votes
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}
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 thebiblatex
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 protrudinga
into the next line would not have left the first line terribly underfull...
– moewe
3 mins ago
add a comment |
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}
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
add a comment |
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:
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:
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
add a comment |
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.
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
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
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}
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 thebiblatex
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 protrudinga
into the next line would not have left the first line terribly underfull...
– moewe
3 mins ago
add a comment |
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}
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 thebiblatex
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 protrudinga
into the next line would not have left the first line terribly underfull...
– moewe
3 mins ago
add a comment |
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}
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}
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 thebiblatex
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 protrudinga
into the next line would not have left the first line terribly underfull...
– moewe
3 mins ago
add a comment |
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 thebiblatex
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 protrudinga
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
add a comment |
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}
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
add a comment |
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}
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
add a comment |
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}
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}
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
add a comment |
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
add a comment |
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:
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:
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
add a comment |
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:
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:
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
add a comment |
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:
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:
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:
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:
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
add a comment |
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
add a comment |
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.
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.
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
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
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
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
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