中治です。
>>>> In [semi-gnus-ja : No.3526]
>>>> tomo(a)etl.go.jp (守岡 知彦 / MORIOKA Tomohiko) wrote:
中治> 残りのご説明はきちんと理解できないのですが、すご〜く大雑把に言うと、
守> ;; 判りにくくてすみませんでした。(^_^;;;
いえいえ、詳しく説明していただいているのはわかるのですが、私には詳しすぎ
て…
一応、建築耐震構造が専門ですので、あまりこっちに深入りしないように心掛け
ているのです。
## と言いつつ、こんなことを…
中治> MUA が解釈して「このように表示して」とEmacsenに依頼、Emacsenは「そ
中治> のように」表示するだけ。
中治> ということですね。で、「この」や「その」は歴史的経緯からいろいろあっ
中治> て、それなりに問題が起こる(ように見える)こともある、と。
中治> 今回は、たまたま、1978 な 14dot のフォントがないからスケーリングが
中治> 行われた、と。
守> 中間にもう一段階あります。
あら…(^^;
守> ご存知のように現在の MULE では各文字は ISO/IEC 2022 の 94, 96, 94×94,
守> 96×96 図形文字集合 (MULE charset) とその中での code point という形で表
守> 現されます。よって、
実は、ご存知ではありませんでした。と言うか、普通に使うだけなら、そういう
ことは気にしなくてもよかったのです。
今回、「へぇ、なるほど」と思うところと、「???」と思うところがいろいろ出
てきて、少し楽しんでおります。
守> (make-char 'japanese-jisx0208-1978 33 34)
守> と
守> (make-char 'japanese-jisx0208 33 34)
守> は違う文字オブジェクトになります(Lisp object としてということで、本来は
守> 両者は同じ <IDEOGRAPHIC COMMA> という文字として扱われるべきです)。
違う文字が表示されました。「へぇ、なるほど」です。:-)
守> で、code point unify をするというのは
守> (make-char 'japanese-jisx0208-1978 33 34)
守> となるべき文字を
守> (make-char 'japanese-jisx0208 33 34)
守> にしてしまうということです。この例の場合、良いんですが、例えば、
守> (make-char 'japanese-jisx0208-1978 (+ 18 32) (+ 10 32)) = ?鴎
守> を
守> (make-char 'japanese-jisx0208 (+ 18 32) (+ 10 32)) = ?鴎
守> にするのはまずい訳です。
守> ;; (make-char 'japanese-jisx0212 #x6c #x3f) = ?鷗
守> ;; にするのは構わないといえます。
「違う文字オブジェクト」だから、ですね。ん? じゃあ、
(make-char 'japanese-jisx0208-1978 (+ 18 32) (+ 10 32)) と
(make-char 'japanese-jisx0212 #x6c #x3f) は、同じ文字オブジェクト?
守> さて、歴史的経緯とは、十分な種類の font がなかったり、そもそも多くの文字
守> を十分に区別可能な符号空間を持たない貧乏な実装・環境がなかった昔に、
守> JIS X 0208:1978 / 1983 の差異を誤魔化すために、両者を符号化文字の階層で
守> 同一視してしまうということをやってしまったということです。MULE では概ね
守> 符号空間の問題はないので、問題は利用者の環境に font があるかどうかに落ち
守> ています。にも関わらず、歴史的経緯で、Emacs-MULE は両者を符号化文字の階
守> 層で同一視するという病気を持っているということです。
わかりました。きっちり区別してそれなりの表示を行えないから、表示できるよ
うに、中でごまかして(うまくやって)いた。
## ということでいいのかなぁ…(^^;
守> 私としては (b) がお勧めですが:-P、(c) としては CCL で code point unify
守> せずに使うという激しい方法も考えられます(お勧めですが akr さん以外には
守> 困難でしょう(^_^;)が、前述の set-charset-registry を使って code point
守> unify して使うのが簡単でしょう。
思いきって時間をかけて、intlfonts をダウンロード、インストールしたところ、
スケーリングによる見苦しさはあるものの、表示はされています。これは (c)
に当たるのでしょうか? それまでは、(b)でした。
----====----====----====----
NAKAJI Hiroyuki (中治 弘行)
豊橋技術科学大学建設工学系