F4.14.2kinsoku line-end prohibition设计

开括号、引号等标点不应出现在行尾

别名: 行尾禁则 · 避尾 · 开括号行末

概念解释

开括号、开引号、书名号的前半、部分前缀符号,是下一截内容的门。它们若停在行尾,门开在上一行,屋里的字却在下一行。行尾禁则(kinsoku line-end prohibition)禁止这些开启符单独收行:把它们带到下一行,与后面的正文站在一起。

机制

开启符的视觉承诺是「后面紧跟着被括住的内容」。行尾是一行的收束位置,把开启符放在那里,承诺落空一拍,读者还要带着「有东西没闭合」翻到下一行。贪婪折行只看剩余宽度,开启符宽度小,常常刚好能挤进行末,于是禁则被宽度计算主动破坏。与行首禁则对称:一个是收束符不能开门,一个是开启符不能关门。处理手段也对称——把开启符连同后一个字一起推到下一行,或略微压缩行内空隙把后一个字拉上来。不能只修行首不修行尾:窄栏里开启符行末和句读点行首会成对出现。

边界

数学式、代码里的开括号常要与运算符对齐,禁则让位。网址、路径里的斜杠和问号不是汉语开启符,按 URL 规则折,不要用书名号那套。后引号、右括号是收束符,归行首禁则,不要和开括号混进同一张「标点不能在行尾」的清单。西文开引号有时用悬挂到栏外的做法,那是拉丁引号传统,搬到中文书名号上会和字身网格打架。

怎么落地

  • 折行规则同时打开行尾禁则,覆盖开括号、开引号、书名号前半,不要只禁句号行首。
  • 在对话多、引用多的正文里扫每一行最后一个可见字符,开启符落在行末就记。
  • 若推到下一行会留下难看的大片空白,优先让开启符与后一字作为不可断的一对,而不是给整行加字距硬撑。

延伸

  • 同组F4.14.1 中文标点不应出现在行首,如逗号、句号 · F4.14.3 避头尾规则需要排版引擎支持,简单换行算法会破坏它 · F4.14.4 中西文标点全角半角混用会造成视觉节奏不一致
  • 相邻F4.03 行长 · F4.12 字距与词距
  • 站内检索kinsoku · line-end punctuation · opening bracket wrap

同组卡片

快捷操作

分享

分享当前页面

ios_share

https://hci.top/zh/handbook/F4.14.2