Thank you all for your suggestions and contributions to the wiki.
I don't intend to nag, but when looking at what ConTeXt is
producing, I need to state that the result is still far away from a
properly typeset Japanese text.
We have different rules, depending what kind of character is
surpassing the text width (or is in its last position).
Rule 1:
Before closing brackets, closing quotation marks, iteration
marks, the Prolonged sound mark and small Kana, line breaking is
prohibited.
’”)〕]}〉》」』】ヽヾゝゞ々ーぁぃぅぇぉァィゥェォっゃゅょッャュョ etc.
The actual programmed behaviour by the nihongo script is that, if
in the position which exceeds the line width, these characters jump to
the next line and take the previous character with them. If they're in
the last position of the line, they stay where they are. This behaviour
is correct.
Rule 2:
After opening Brackets and opening quotation marks, line breaking
is prohibited (but not before).
‘“(〔[{〈《「『【
The actual programmed behaviour by the nihongo script is that
these characters jump to the next line and take the previous character
with them. This behaviour is wrong. They should jump to the next line
without taking the previous character with them, just like any regular
character. The difference to a regular character is that they jump
already when still within the line length, and they're in the last
position of the line. The correct behaviour can be seen in LibreOffice
Writer in action.
Rule
3:
Comma (tōten), full width comma, full stop
、,。
The actual programmed behaviour by the nihongo script is that, if
in the position which exceeds the line width, these characters jump to
the next line and take the previous character with them. This behaviour
is wrong.
They have to be put back to the end of the previous line, but
beyond the specified line length. (JIS Z 8125) (Search for "Line
adjustment by hanging punctuation" under
https://www.w3.org/TR/jlreq/ )
If they're in the last position of the line, they stay where they
are. The correct behaviour can be seen in LibreOffice Writer in action.
Rules
4, 5, ...:
According the
line gap (Otared uses
\setupwhitespace[big], which is exceeding common line gaps), I'd like to
quote from
https://www.w3.org/TR/jlreq/ :
It is common that the line gap for the kihon-hanmen is set to
a value between half-em spacing and the one em spacing of the character
frame used for the kihon-hanmen. Half-em spacing can be chosen in cases
where the line length is short, but one em spacing or close to it is
more appropriate when the line length is longer than 35 characters.
I like the standard line gap which is provided by ConTeXt, which
is equivalent to \setupwhitespace[0pt]. Even when using ruby,
it works well. I found the best voffset for ruby to be -1.7ex.
The line
adjustment provided by ConTeXt by default is not meeting the
needs for Japanese (and Chinese) text, which follow a grid pattern.
Especially the last line of a paragraph is squeezed, which is "hurting
the eye".
When characters need to jump to the next line due to previously
discussed line breaking rules, ConTeXt seems to apply "Line adjustment
by inter-character spacing expansion", which is a valid method according
to
https://www.w3.org/TR/jlreq/#line_adjustment , although "Line
adjustment by inter-character spacing reduction" is preferred.
The last point which ConTeXt is missing, when talking about
Japanese typesetting, is vertical writing.