RE: [css3-text] definition of 'word-break: break-all' (was: [css3-text] feedback on 'word-break: keep-all;')

> > [1] http://unicode.org/reports/tr14/#Tailoring

> 
> So, what about 'word-beak: break-all', Example 4 talks about this with the conclusion being
> 
> [[
>   In this case the intersections of NU/NU, NU/AL, AL/AL and AL/NU are
>   affected.
> ]]

Good catch, I missed that.

> I think this is relatively close to the current definition:
> 
>   # In addition to normal opportunities, lines may break between any
>   # two letters within words except where forbidden by the ‘line-
>   # break’ property.
> 
> , if I read the "letter" in this sentence correctly where AL roughly equals the Letter general
> category and NU roughly equals the Number general category (but in that case, please link
> "letter" to the definition in 1.3). There are some minor differences however:
> 
> The ASCII characters in AL but not in Letter are #&*<=>@^_`~ [1]. In IE9, line breaks
> are allowed before and after these character with
> 'word-break: break-all', matching what the final sentence of Example 4 says but not the
> current prose.
> 
> But I am not sure changing the current definition to that sentence doesn't have any
> drawback.

This brings me up a question, as you wrote below, maybe we should allow more break opportunities than the two options above. U+002B PLUS SIGN for instance has Sm category and PR line break, so neither option gives break opportunity after, but IE9 breaks before and after.

Allowing breaking all grapheme cluster boundaries except where prohibited by the line-break property seems to better fit for CJK use cases, and matches better to the current implementations. I'll discuss with fantasai to see if there were any drawbacks.

> One other thing, it seems that in Chromium18 and Firefox15a1,
> 'word-break: break-all' really breaks all grapheme cluster boundaries, which means that,
> for example, it breaks before the '。' in
> 
>   測試。
> 
> , where normally such a break is prohibited. I would like to double check with the editors
> and folks on this list that this is indeed not conforming according to the spec.

You're right that is an implementation bug as per the current spec. Sites using break-all renders broken line breaking rules on those browsers today (one example of such site is here[1].) I was hoping to file a bug but haven't done yet.

[1] http://agora-web.jp/


Regards,
Koji

Received on Thursday, 10 May 2012 10:06:57 UTC