Closed
Bug 1325807
Opened 7 years ago
Closed 5 months ago
Ideographic space (U+3000) should provide a soft wrap opportunity even with "word-break: keep-all"
Categories
(Core :: Layout: Text and Fonts, defect, P3)
Core
Layout: Text and Fonts
Tracking
()
RESOLVED
DUPLICATE
of bug 1719535
Tracking | Status | |
---|---|---|
firefox53 | --- | affected |
People
(Reporter: xidorn, Unassigned)
References
Details
Attachments
(4 files)
In the attached testcase, ideographic space (U+3000) is used to separate words, and "word-break: keep-all" is applied. In this case, there should be a soft wrap opportunity after each ideographic space here. In Blink, the text is broken after ideographic spaces, while WebKit behaves the same as Gecko. But I think it should provide wrap opportunity here, since it is a whitespace anyway. I guess this behavior was changed by bug 765166.
Reporter | ||
Comment 1•7 years ago
|
||
It seems Blink doesn't break line between ideographic space. So basically Blink reverts the WebKit's behavior to what Gecko had before bug 765166 :/
Reporter | ||
Comment 2•7 years ago
|
||
Oh, Blink also provide soft wrap opportunity for punctunations, which also makes sense to me...
Comment 3•7 years ago
|
||
Edge behaves very odd...
Comment 4•7 years ago
|
||
Hmm, they test keep-all with punctuation. So, it must be *their* expected behavior. Issue: https://bugs.chromium.org/p/chromium/issues/detail?id=141792 Review: https://codereview.chromium.org/1094863007 According to the patch and comment 11, they ban some break opportunities. Ishii-san said "what the spec[1] says is not that complicated; just disable soft wrap opportunities between "typographic letter units" (which is L*/N* grapheme clusters)". Example 6 of the spec is what this case is? https://www.w3.org/TR/css-text-3/#word-break
Reporter | ||
Comment 5•7 years ago
|
||
(In reply to Xidorn Quan [:xidorn] (UTC+10) from comment #1) > It seems Blink doesn't break line between ideographic space. So basically > Blink reverts the WebKit's behavior to what Gecko had before bug 765166 :/ Ah, I mean, *WebKit* doesn't break line between ideographic space. Blink does so.
Reporter | ||
Comment 6•7 years ago
|
||
(In reply to Masayuki Nakano [:masayuki] (Mozilla Japan) from comment #4) > Created attachment 8821840 [details] > Screenshot of Chromium's testcase > > Hmm, they test keep-all with punctuation. So, it must be *their* expected > behavior. I think their expected behavior makes sense, although I have one concern that some punctuation in languages like English may not be a word separator, e.g. "e.g.", or "U.S.A". So I guess half-width punctuations probably should not provide break opportunity. > According to the patch and comment 11, they ban some break opportunities. > Ishii-san said "what the spec[1] says is not that complicated; just disable > soft wrap opportunities between "typographic letter units" (which is L*/N* > grapheme clusters)". The spec is quite loose on this. It forces several rules, and impls are free to do whatever they want otherwise.
Comment 7•7 years ago
|
||
(In reply to Xidorn Quan [:xidorn] (UTC+10) from comment #6) > although I have one concern > that some punctuation in languages like English may not be a word separator, > e.g. "e.g.", or "U.S.A". So I guess half-width punctuations probably should > not provide break opportunity. That's what I was troubled when I worked on breaking lines in URL. (E.g., smilies too) At that time, we took CONSERVATIVE_BREAK_RANGE approach: https://dxr.mozilla.org/mozilla-central/rev/1156db49e976173fc3cf90d2126456fd1e2bae4b/intl/lwbrk/nsJISx4051LineBreaker.cpp#624-632
Updated•7 years ago
|
Priority: -- → P3
Updated•2 years ago
|
Severity: normal → S3
Comment 8•5 months ago
|
||
Legacy line segmenter breaks before and after U+0x3000 now. But ICU4X segmenter is expected behavior.
If I am wrong, please reopen this.
You need to log in
before you can comment on or make changes to this bug.
Description
•