[Message Prev][Message Next][Thread Prev][Thread Next][Message Index][Thread Index]
[MD:3664] w32-list-fonts and XLFD.
- X-ml-count: 3664
- Subject: [MD:3664] w32-list-fonts and XLFD.
- From: Keiichi Suzuki <keiichi@xxxxxxxxx>
- Date: 30 Sep 2002 11:12:18 +0900
- User-agent: Nana-gnus/7.1.0.32 SEMI/1.14.3 (Ushinoya) FLIM/1.14.3 (Unebigoryōmae) APEL/10.3 Emacs/20.7 (i386-*-nt5.0.2195) MULE/4.1 (AOI) Meadow/1.15-20020801 (SHOUBU:63)
>>>>> meadow-develop の No. 3649
>>>>> Message-Id: <ulm5lsy4e.fsf@xxxxxxxxxxxxxxxxx> で、
>>>>> "himi" == MIYASHITA Hisashi (宮下 尚:HIMI) <himi@xxxxxxxxxxx>さま曰く...
>> さて, woman.el をロードできないという話を読んだもので少し眺めて
>> みたのですが, woman.el には NTEmacs 用 (eq window-system 'w32)
>> の時にはシンボル系の font を使う,なんてコードが入っています。
himi> ...もう、なんというのか、せっかくGerdが入れた、faceによる
himi> 調整機構はどうなったというのだろうか。;_;
himi> ## そんなものを理解している人が殆どいないせいか?
himi> ## でも、そうでなかったら、window system毎に怪しげなフォント選択を
himi> ## する、Emacs Lispがぼこぼこ入っちゃうのになぁ。;_;
Patch でもつくって開発側に文句^H^Hお願いするというのが正しい姿か
な? まだ,数は少なそうだから早いうちに芽を摘んでおけば,その後は
そのコードを参照して... ということで,良い方向に向かうのではない
かと。
;; だれかやらない? ^^;;
himi> でも、symbolといっても、encodingが違う可能性が高いし、ある
himi> 意味では仕方ないのかもしれないけどねぇ。でも、本来は、
himi> charsetを定義して、表示するべきものだと思うんだが。こうい
himi> う発想は、いわゆるI18N/M17Nの考え方に触れていない人々には、
himi> なじんでないということは言えそうだけど。ぶちぶち。
charset って現状もう作れないんじゃなかったっけ?
>> で, woman.el をロードできないのは, x-list-fonts
>> (w32-list-fonts) が現状では動かないというのが原因なので,これは
>> 何とかするとして...
himi> おっと、こっちは直してなかったけど、単にfontsetのlist部分
himi> が問題になっているだけだよね。多分、Meadowでは、もう、
himi> fontsetの必要は無いと思うけど、一応、互換性の為にfontset
himi> nameのlistupもするようにしときますか。 かえって混乱の種だっ
himi> たりして。^^;;;
Font ととして list up するのではなくて, fontset として list up
した方が感覚的に合うような気がするのだけれど,そんなことはない?
>> woman.el はシンボル系の font を探すのに x-list-fonts の結果を
>> XLFD 形式で検索していますので,たとえ w32-list-fonts を直したと
>> しても font 指定は文字列を前提にしているようですので, Meadow と
>> は非互換になってしまいそうです。
himi> ん、Meadowでも、互換性を保つ為にFR layerの指定方法は、単に
himi> 名前としてのstringで行います。だから、symbol系のfontのFR
himi> nameを、その文字列matchに合致するような名前で登録しておけ
himi> ば良いのですけどね。なんだかばかばかしい気もするけど。:-P
>> それと Emacs の x-list-fonts って, X で使える font は全部と
>> れますね。この辺もどうしましょ。
himi> これはどういうことが問題になるでしょうか?
NTEmacs:
1. Elisp package が system の font 名(XLFD "-SYMBOL-")と内容を知っ
ている。
2. x-list-fonts (System にある font 群)のなかから,都合の良いも
のを探して使う。
Meadow:
1. Elisp package が system の font 名(w32での名前 "Symbol")と内
容を知っている。
2. x-list-fonts (Meadow に登録されているもののみ)の中から,都合
の良いものを探すが,フツー symbol 何てものを登録する人はいな
いので見つからない。
Meadow でやろうとすると...
2. w32-enum-logfont の中から,都合の良いものを探す。
ようにしないとうまく行かないと思う。想定できる状態できれい(作者
の思惑どおり)に表示しようとすると,これができないと辛いんじゃな
いかな?
思うに, x-list-fonts は, w32-enum-logfont の結果を XLFD の
list として返すようにする。
... ただ,こうしたところで
(set-face-font 'woman-symbol-face woman-symbol-font
(and (frame-live-p woman-frame)
woman-frame))
なんてしているだけだから,うまく扱えるわけではないのだけれど。
>> なんだか,これからこういうものが増えてきそうな気がするのですが,
>> どうしましょう。 ;_;
himi> というわけで、一応、そういうことはあらかじめ考えてあるつも
himi> りです。FRは、「font(LF)の選び方」を指定するlayerなので、
himi> その気になれば、かなり滅茶苦茶なことさえ出来るはずです。い
himi> わば、fontsetのchar/charset以外の選択手段も用意された
himi> versionという感じですね。
辛いところではあるけれど,いろいろな font を使えるようになるとい
うことは,現実として,それを駆使したプログラムが出てくることは避
けがたいと思います。
XLFD を捨てるという道を選んだ以上,それらのプログラムに対応する
ためには,何らかの変更が必要になるでしょう。しかし,それらに一つ
一つ対応するのはかなりの労力になると思います。また,労力だけでは
なく「Meadow じゃ動かないんだ。NTEmacs を使おう。」ということに
なるのは悲しいものがあります。
以前,冗談で言いましたが, LF layer (Elisp loader で良いと思いま
す)で, (不毛な作業にはなりそうだけれど)XLFD に対応するのが現実
的なのではないかと思いますが,どうでしょうか?
--
鈴木圭一 / keiichi@xxxxxxxxx
PGP finger print (DH/DSS)
0B32 B37E 6DE9 3BC1 68A4 4089 7AAF 2B03 ECBD 614B