和欧間スペース提案:和文と欧文記号との間について

JLReq TF の皆さま、

和欧間スペースのデフォルトを定めるテーブルのUnicideへの提案について議論が進んでいます。その中で、和文文字と欧文記号の間にデフォルトでスペースを空けるべきかについての議論 <https://github.com/kojiishi/unicode-auto-spacing/issues/11>が出てきたので、JLreq TFの場で再度確認しておきたく思います。

背景
現在Unicodeに提出されている案は、JLReq-dのために開発した「Unicode に拡張した字間プロパティの設計 <https://github.com/w3c/jlreq/blob/gh-pages/docs/spacing_property/spacing_property.md>」に概ね沿っています。これは2021年の3月から8月頃までメーリングリストおよびミーティングでの集中的な議論の結果が反映されています。JLReqからの主な変更点は「cl-19漢字等」を漢字と記号に分けたこと、「cl-27欧文用文字」を文字と記号に分けたことの二点です。漢字とラテン文字の間には空白が開きますが、記号は全角かプロポーショナルに関わらず、どの文字とも空白が開かないクラス“O”として定義されています。

その当時の議論の中から拾い出してみると、下の敏先生のコメントにこの変更に至った背景がよくまとまっています。

2021/03/22 14:30、Kobayashi Toshi <binn@k.email.ne.jp>のメール:
>> 現在 cl-19 に入っている全ての約物、記号は cl-19 から除外して良いでしょうか?

> 基本的に除外してよいのではないかと,私は思っています.というのも,記号類
> とラテン文字の字間は,あまり考えていないというか,あまり問題とされていな
> かったのではないかな.
> 前に話題になった,①②などとラテン文字が並ぶ場合,とくに箇条書きの番号の
> 場合など,次に配置するのが和字ではベタ,英字では四分アキとなることは,実
> 務ではでてくるケースで,いつも悩んでいました.で,私は手作業でベタにして
> いました.*なども後ろにラテン文字がきて,そこが四分アキになるのも,あま
> り奇麗ではない.
> 和欧文のアキは,いってみれば通常の文章の途中の問題であり,多くな仮名と漢
> 字との連続の問題です.記号類は,ある意味で特別な場合であり,そうして特別
> の場合は,個別箇所で工夫が必要な箇所ですから.
> そして,マイナス四分スペースは文字コードとしてないが,空けるための四分ス
> ペースなど空ける文字コードはあります.空けたい場合は,これで処理できます.
> (逆に空いているものを詰める場合は,スペースはないので,前後の文字をspan
> タグで括って,何らかの指示をしないといけないので,けっこう面倒です.)


敏先生が述べられた、箇条書きの①などの後に来る文字が和字か欧文かで開始地点が違ってしまう問題は、プロポーショナルの ”(1)” や “1.” など文字で書く場合にも同様の問題があります。このような経緯で、記号は全角・プロポーショナルともどの文字ともベタという提案になりました。

この提案に対して、「和文文字と欧文記号の間にはデフォルトで空白があるべきではないか」との意見が提出されています。ここはJLReqからの変更点でもあるので、もう一度議論して合意を形成しておきたいと思います。

乞うご意見。抽象的な議論より、上記の箇条書きのように実際のケースを見てゆくと良いかもしれません。



議論に際し、この提案の位置付けについて、下記の点に留意していただければありがたいです。
・どの文字間に空間を開けるかは、著者の好み、内容、フォントなどにも左右され、よってこれしかない、という唯一の基準は決められません。合理的なデフォルトが目標です。また安定したデフォルトを提供することによって、カスタマイズを容易にします。つまり差分でカスタマイズの指定が可能になります。
・文字の使われ方を判断できませんので英単語と、「表Aは」「β線」のように文字単独で記号的に使われる場合を区別できません。文字が全角となっているかどうかも判断できません。これらは上のレイヤーによるカスタマイゼーションの対象となります。
・メールや、メモや、表計算ソフト、ウェブページなどに、言語やフォントに左右されず高速に実行できるデフォルトを提供します。凝ったウェブページや、OpenTypeフィーチャーで字形を変えられるアプリケーションにとっては良いカスタマイズのベースになります。既に和欧文間空白の機能を持っているアプリケーションにとっては、必ずしも必要なものではないでしょう。
・ユーザーがカスタマイズを行いたい場合、望ましいのはCSSやアプリケーションの文書設定などでそれが可能なことですが、そのような高度な機能のない場合は、空白の挿入が簡便な方法です。自動的に空いてしまった空白を削る簡単な方法はありませんので、両方の場合が同じくらいあるなら空けない保守的な方向に妥協するのがより安全です。
・入る空白の幅は別個の問題です。フォントや好みなどによって、伝統的な四分だったり、六分、八分、ゼロ、などの設定が考えられます。

このような条件・目的での、合理的なデフォルトは何かの議論が必要です。

木田

Received on Thursday, 28 March 2024 12:12:05 UTC