Kinsoku shori

Note: this article is based on a loose translation of the Japanese Wiki article on kinsoku shori.

Kinsoku Shori (禁則処理) are rules for how to wrap Japanese text. Certain characters in Japanese should not come at the end of a line, certain characters should not come at the start of a line, and some characters should never be split up across two lines. For example, periods and closing parentheses are not permitted at the start of a line. Many word processing and DTP software products have built-in features to control how Japanese text is wrapped.

Kinsoku Shori categories and processing rules are determined by Japanese Industrial Standard JIS X 4051.

Categories
Regarding prohibited characters, there are some conventions called "House Rules", which are characteristic rules of their publishers. Furthermore, there're many publishers whose rules contradict other publishers' ones. For that reason, there are lots of conventions which are not supported by Western DTP software tools, and that is the main cause of the growing demand of computerized phototypesetting systems.

Characters Not Permitted on the Start of a Line

 * Closing Brackets


 * Japanese characters that are not allowed at the start of a line

(Note: The above rule only applies to small (chiisai) kana. Full size kana can start a line.)
 * Hyphens


 * Delimiters


 * Mid-sentence Punctuation


 * Sentence-ending Punctuation

Note: Kinsoku Shori does not apply to Japanese characters while one line contains not enough characters

Characters Not Permitted at the End of a Line

 * Opening Brackets

Do Not Split

 * Characters that can't be separated


 * Numbers
 * Grouped characters
 * 漢字（かんじ） (Ruby characters following kanji characters)

Processing Rules

 * Burasage (Hanging Punctuation)
 * Move punctuation character to the end of the previous line.


 * Oidashi (Wrap to Next)
 * Send characters not permitted at the end of a line to the next line, increase kerning to pad out first line. Another use is to wrap a character from the first line with the goal of preventing a character that shouldn't start a line from coming first on the next line.


 * Oikomi (Squeeze)
 * Reduce kerning on the first line to pull a character not permitted at the start of a line from being the first character on the second line.
 * If the software does not have kerning ability, white space is sometimes added to the end of a line.


 * Do Not Split
 * Use Oidashi and Oikomi to process. If characters that can't be split up straddle the end of a line, move them in a block to the next line using Oidashi, or keep them all together on the previous line by using Oikomi.

금칙처리 禁則処理