[Message Prev][Message Next][Thread Prev][Thread Next][Message Index][Thread Index]

[MD:730]high level font selection API



前回はあまり整理せずに要望を出してしまったので、整理しました。
;;; それでもあんまり整理されていないっていう話も(^^;;;

まず、fontはGUIで選べるようにしたいです。理由は、
1. high level APIだと、問答無用にすべてのcharsetに対して
   fontを登録してくれるので、BDF fontを置いていると普段
   使わないようなfontまで全部登録してしまう。
2. 複数の候補が出てきて、その中から選ぶほうが良い。
(3. 実際にfontが表示されて比較検討できるともっと嬉しい。) 
# これはやり方がわからなかったので、パス。(^^;;;
4. 目で見えたほうがわかりやすい。
です。

GUI font selectionは、low level APIが変更されても影響を受けないよう
に、high level APIの上に乗せたいのですが、現在のhigh level API では
問題が出てきます。そこで、
1. logfont-from-request-functions の関数は、recommended に合った順に
   logfontのリストをsortして返して欲しい。
   という事は、w32-logfont-list-from-recommendedはlogfontのリストを
   sortして返す、という事になります。
2. BDF font用のhigh level APIを整理する。
という事が必要になります。

GUI font selection の案は、
o... それぞれの選択した charset に対して、recommended に合うものを
     sort して表示し、その中から選択させる。
o... high level APIの選択過程を目に見えるようにする。
     (この前僕が作ったようなもの)
o... file に save する機能。
     (high leve APIに組み込んでしまうほうが良い?)
を備えたものが良いと思います。

BDF high level APIに関してですが、
etlの.notready/ps-print.tar.gzにbdf.elというのがあるのですが、
Meadowのbdf font selectionの実装はこれにあわせるのでしょうか。
bdf.el が将来のEmacsに含まれるのであれば、なるべくあわせたほ
うが混乱が少なくて良いと思います。
# directory-list で複数のディレクトリを検索できるのも良いし、
# directory の階層を辿ってあるディレクトリ以下のすべてのfontを
# 調べてくれるのも良いような。
# 両方あわせるのが一番良いのでしょうか。
あと、
o... BDF font用のwidth height等の判定用関数を作る。
     (w32-bdf-?)
o... Windows fontとBDF font用の関数を分ける。
o... 必要なら、Meadowがサポートするすべてのfontを扱える関数を
     新設する。
のが良いと思います。

後は、その他です。
w32-change-logfont-weight だけが引数をそのまま使わないで、元の値に
加えた値を使用するのはわかりにくいです。
w32-check-logfont のDoc stringの 2 or 12 elements は 2 or 13 
elements の間違いですよね。
# Windows font 部分はちゃんと見ていないので、もっとあったかもしれ
ません。

----
Yoshiki Hayashi