Re: [clreq] Rewrite of Prohibition Rules for Line Start and Line End 行首行尾禁则 (#220)

建议将目前的三个「注」删除,修改为:
-------
具体地,可以分为四种级别:
1. 不处理(none):完全行首行尾禁则。常见于台湾香港等地报刊。
2. 基本处理(basic):点号(顿号、逗号、句号、冒号、分号、叹号、问号)、结束引号、结束括号、结束乙式书名号(篇名号)、连接号、间隔号、分隔号不能出现在一行的开头。开始引号、开始括号、开始单双书名号等符号,不能出现在一行的结尾。这是最推荐的方法。
3. GB法(GB-style):在执行「宽松」的基础上增加规定分隔号也不能出现在一行的结尾。
4. 严格处理(strict):在执行「GB法」的基础上再增加规定破折号、省略号不能出现在一行的开头。

本节与「3.1.6 标点符号的挤压」的关系:应优先按照排版风格处理标点挤压,再处理禁则。因为标点挤压处理会影响换行位置。

排版时如果进行禁则处理,应遵守「先挤进,后推出」原则,即不希望标点符号出现在行首时,应在已经标点挤压的基础上再次检讨是否有机会将其挤到前一行,最后没有挤压机会再从前一行取最后一个字至下一行。前行多出来的空间需按照优先顺序拉伸,最后没有拉伸机会再按平均拉大字距的方式处理。

<注> 原则上,一份文档内的级别应该统一。但若遇连续三个标点符号,如[。』」]等个别特殊状况局部采用「不处理」以避免字距过松造成体例不良,应该视为救济措施的个例,不作为推荐。
------
相应地,表 A.1 应修改表述
------
对于连接号、间隔号、分隔号,是否放入 basic 的考量:
鉴于 [Unicode 标准附件第十四号《Unicode 断行算法》(UAX14)](https://unicode.org/reports/tr14/)算法第十三(LB13)条规定了在 ‘]’、‘!’、‘;’、‘/’ 之前不能断行,即使这些字符跟在空格后面。因此,此规则实质上此条规定了分隔号(/)需要避头;算法第二十一条(LB21)规定:在连字符、其他连字符、定宽空格、小写假名等字符前面不能断行。根据此项规则,中文的连接号也要避头。因此在符合 Unicode 定义的环境里就已经支持上述 2. basic 的动作,不矛盾。

与 UAX14 矛盾的有两点:
1. 算法第十九条(LB19)规定:引号的前、后均不能断行。也就是说常用的蝌蚪引号(“ ”)默认是既要避头也要避尾。→ 此规定过于严格,已向 Unicode 提交 bug 报告
<img width="763" alt="bitouwei-unicode-quotation" src="https://user-images.githubusercontent.com/8192599/74391127-9bfdcc00-4e46-11ea-88fb-c582e19c0546.png">
2. 算法第二十二条(LB22)规定:两个省略号之间,以及字母数字叹号与省略号之间不能断行。也就是说,省略号不仅不能中间断开,而且要避头。→ 此规定过于严格,需要UA注意。

-- 
GitHub Notification of comment by ryukeikun
Please view or discuss this issue at https://github.com/w3c/clreq/issues/220#issuecomment-585498542 using your GitHub account

Received on Thursday, 13 February 2020 01:09:58 UTC