-
Notifications
You must be signed in to change notification settings - Fork 715
[css-text-3][css-text-4] Japanese small kana and line-break: normal
#10363
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Comments
https://www.w3.org/TR/css-text-3/#line-break-property Proposed text would be Option A: Allow either behavior in normal.
Option B: Forbid breaks before small kana in normal.
|
I think you are right that this would be an improvement. I have no strong preference between A and B. B should lead to more interop, so maybe that one? |
I think it also promises better behavior in the common/default case. A break before small kana is generally undesirable, so it should only be allowed if an author explicitly opts in to the "looser" behavior, and not when such characters appear in unstyled, untagged content. |
Discussed at today's JLReq TF meeting and reached a consensus. As a unified position, JLReq TF recommends option B: in normal, forbid breaks before small kana, as well as the prolonged sound mark U+30FC. The current JLReq also forbids small kana from appearing at the beginning of lines, as stated in section 3.1.7. In appendix C.3 addendum, it defines looser levels that allow breaks before small kana and some other characters. In traditional printing, there has been pressure to avoid kinsoku (prohibition of line breaks at certain points) as much as possible to reduce the need for adjustments for justification, which affects the productivity of line layout work. Additionally, when a justified line is shorter, the adjustments result in visible widening of character spacing. The looser levels were defined to accommodate such requirements. Text on the web has different properties. The cost of line adjustment is negligible. The default on the web is ragged right, meaning that adjustments do not negatively affect character spacing. Another reason to avoid separating small kana is that they are diacritical marks modifying the phonetic value of the previous character. Separating them forces readers to read the base character differently. Upon reaching the beginning of the next line, readers find that it actually had a different pronunciation. This effect would be worse for people with reading difficulties. These reasons underpin the recommendation. It is important that editors and designers have options. For example, when a line is shorter and justified, one might prefer looser rules to prevent spacing between characters from becoming too wide. |
The CSS Working Group just discussed
The full IRC log of that discussion<matthieud> fantasai: normal value for line-break currently specifiy that you can break between regular kana and normal kana<matthieud> s/normal/small <matthieud> fantasai: it's unsual to break there in japanese <matthieud> fantasai: proposal would be to not break before the small kana (you can break with line-break: loose) <matthieud> florian: the i18n group supports this <ChrisL> +1 to not breaking <matthieud> PROPOSED RESOLUTION: "normal" value for "line-break" should not break between regular kana and small kana <matthieud> RESOLVED: "normal" value for "line-break" must not break between regular kana and small kana |
Uh oh!
There was an error while loading. Please reload this page.
It turns out that WebKit has been shipping a prohibition against breaks before small kana for awhile. But only sometimes: it depends on whether the language is tagged or not, see testcase. Tagged content is looser, untagged content is stricter. Firefox afaict never allows breaks before small kana.
I think this opens up the question of, should we reconsider defaulting
line-break: normal
to prohibiting breaks before small kana? Since it seems to be Web-compatible to change, would that be more natural for Japanese?The text was updated successfully, but these errors were encountered: