[css3-text] 全角開き括弧と閉じ括弧

CSS3 Textのtext-trimプロパティ[1]のExample XVIの後ろに以下の文字に関する定義があります。
* 全角開き括弧
* 全角閉じ括弧
* 全角中点類
* 全角コロン類
* 全角句読点類

JLREQ付属書A 文字クラス一覧[2]でもこれらの文字を定義していますが、JLREQではその注1にあるとおり、Unicodeに対して網羅的であることをそのゴールとしていないため、全角のコードを省いていたりなどの事象があり、CSS3 Textで再定義する必要があります。

これを見直していたのですが、特に「開き括弧」「閉じ括弧」について「CJK Symbols and Punctuation block」を使うよりも「EAW=W」を使った方が良いかもしれないと思っています。あまり使われないとはいえ、U+FE5A[3]などが入っていないことや、Unicodeが拡張されていくにあたり、EAW=W|Fの文字コードにはフォントメーカーが全角の字形を入れる可能性が高いこと、などが理由です。

とは言え、EAW=Wで入れてしまうと、縦書グリフ[4]などが含まれてしまうので、これは除く必要があります。いずれにしてもこの部分の仕様がシンプルになるわけではないし、実用的にそれほど大きく変わるわけでもないので、現状でも大きく間違っているわけではないのですが、ブロックを使わない定義の方が拡張に強い、というのが一番大きいかもしれません。

Fullwidth opening punctuation
	(Ps && EAW=F|W && Decomposition<>vertical)
	+ U+2018 + U+201C
Fullwidth closing punctuation
	(Pe && EAW=F|W && Decomposition<>vertical)
	+ U+2019 + U+201D

この定義に変えて、実質上違うのは、以下の6つが追加されるだけなので差は小さいかもしれませんが、MSゴシックやメイリオなどはこれらのコードポイントに全角が入っているようです。

FE59	SMALL LEFT PARENTHESIS
FE5A	SMALL RIGHT PARENTHESIS
FE5B	SMALL LEFT CURLY BRACKET
FE5C	SMALL RIGHT CURLY BRACKET
FE5D	SMALL LEFT TORTOISE SHELL BRACKET
FE5E	SMALL RIGHT TORTOISE SHELL BRACKET

これ以外にも、今の仕様の定義上、抜けや間違いがあるのではないか、というご意見等ありましたら、お聞かせいただけると幸いです。

よろしくお願いいたします。

[1] http://dev.w3.org/csswg/css3-text/#text-trim-prop
[2] http://www.w3.org/TR/2009/NOTE-jlreq-20090604/ja/#character-classes-ja
[3] http://www.unicode.org/charts/PDF/UFE50.pdf
[4] http://www.unicode.org/charts/PDF/UFE30.pdf

Received on Saturday, 2 April 2011 14:20:11 UTC