On Wed, 28 Feb 2024 at 20:53, Emanuel Han via ntg-context < ntg-context@ntg.nl> wrote: > 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. > > So the nihongo script which comes with ConTeXt handles *line breaks / > line wrapping*. But the line break rules defined in it need a rework, > because they don't follow the standards. The standards are documented here: > https://www.w3.org/TR/jlreq/#possibilities_for_linebreaking_between_characters > , and all affected characters are listed here: > https://www.w3.org/TR/jlreq/tables/table_en3.pdf > > 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, ...: > > Combinations of inseparable characters... (see > https://www.w3.org/TR/jlreq/#possibilities_for_linebreaking_between_character > ) and eventually more, which I didn't test. > > It might be useful to define three scripts nihongo_loose, nihongo_strict > and nihongo_very_strict which each implement one of the 3 cases described > here: https://www.w3.org/TR/jlreq/#addendum_a > > 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. > > I know, this is a lot of work. Hopefully we can achieve with joint efforts > to make ConTeXt Japanese ready. > > If I happen to have made false statements, please accept my apology. I > tried to be of help as far as I could. I grew up in Japan and know more or > less how typeset text should look like. > > Emanuel > > It would be nice if you can put your notes above into https://wiki.contextgarden.net/Chinese_Japanese_and_Korean or in general improve/maintain that page (e.g. the links about the fonts are broken at the moment) Perhaps with Jeong Dal ? Just to say, a few days ago I have seen https://ken-lunde.medium.com/genuine-han-unification-redux-3912b561ecae (only webp images, so a bit tricky to make a pdf) -- luigi