[Message Prev][Message Next][Thread Prev][Thread Next][Message Index][Thread Index]
HELLO 全部表示プロジェクト (was: 1st tyr of Meadow/3.00-dev (KIKU))
- X-ml-count: 6598
- Subject: HELLO 全部表示プロジェクト (was: 1st tyr of Meadow/3.00-dev (KIKU))
- From: Hideyuki SHIRAI (白井秀行) <shirai@xxxxxxxxxxx>
- Date: Fri, 30 Sep 2005 14:38:54 +0900 (JST)
- X-mailer: Mew version 4.2.53 on Emacs 22.0.50 / Mule 5.0 (SAKAKI)
白井です。
From: 小関 吉則 (KOSEKI Yoshinori) <kose@xxxxxxxxxxx> さん曰く
Subject: Re: 1st tyr of Meadow/3.00-dev (KIKU)
Message-ID: <2005092987mzlw6wxq.00kose@xxxxxxxxxxx>
Date: Thu, 29 Sep 2005 18:32:49 +0900
>
> >>>>> In [meadow-users-jp : No.6591]
> >>>>> “白井” = Hideyuki SHIRAI (白井秀行) wrote:
> 白井> ;; mule-unicode
> 白井> ((:char-spec mule-unicode-0100-24ff :height any :weight any :slant any)
> 白井> strict (bdf-font ,(expand-file-name "b16.bdf" dir))
> 白井> ((encoding . unicode-font-encoder)))
> ^^^^^^^^^^^^^^^^^^^^^
> もしかしてこの unicode-font-encoder は Mule-UCS を使わないと
> 使えない?
>
> つまり Mule-UCS がないと mule-unicode-* は豆腐のままってこと?
Mule-UCS なんて関係ないじゃん。と思ったら、unicode-font-encoder
は Mule-UCS が定義しているのね。
(w32-regist-font-encoder
'encode-unicode-font 'ccl-encode-unicode-font)
とかしておいて、encode-unicode-font を使えば Mule-UCS が無くても
大丈夫みたい。これ、Byte はいらないのかなぁ?
以下、本題。
HELLO に限らず Meadow が扱える font の登録方法は特にマニュアルが
あるわけではない(と思う)ので、従来からごにょごにょやっていたのだ
けど、「あぁ、こうやればいいんだ」と自分なりに理解したものを書い
ておきます。
(1) どんな character set があるか調べる。
fontset.el の setup-default-fontset() をじーーとみるのが一
番良いと思う。
(2) (1) で調べた character set を表示するのに必要な BDF file を
調べる。
これが結構大変なんだけど、きちんと全部表示できるようにした
X/UNIX 上の Emacs で M-x list-character-sets して、任意の
character list を出して、C-uM-x what-cursor-position した
XLFD 情報から、もとの BDF file を突き止めるぐらいかな。おいら
がやっているのは。
(3) (1) (2) をもとに w32-add-font() などをするわけだけど、もうひ
とつ必要な情報である font encoding を調べる。
これがいまいちやりかたがわからん。cut & try になることもある。
# X だと (2), (3), (4) は必要ないのだけどね。しょうがないよなぁ。
とりあえず、ぼくの font 設定をつけておきますね。基本的には
・intlfont (ただし、バージョンが古いので今のとファイル名が違う)
・CDAC font
・AkrutiFreeFonts font
・efont の unicode font
・その他、もしかすると、もうすでにどこからもらってきたのか忘れて
いるようなものもあるかも。
となっています。
## 続きの話もあるのだけど、それは dev-ML の方が良いかな?
--
白井秀行 (mailto:shirai@xxxxxxxxxxx)(w32-regist-font-encoder
'encode-unicode-font 'ccl-encode-unicode-font)
(w32-regist-font-encoder
'encode-indian-glyph-font 'ccl-encode-indian-glyph-font 1)
(let (;; intlfonts とその他の font
(dir "c:/usr/fonts/intlfonts")
;; http://www.m17n.org/emacs-indian/cdacfonts.tar.gz
(cdac "c:/usr/fonts/CDAC")
;; http://www.m17n.org/emacs-indian/AkrutiFreeFonts.tar.gz
(akruti "c:/usr/fonts/AkrutiFreeFonts"))
(w32-add-font
"font16-fontset"
`((spec
((:char-spec ascii :height any :weight normal :slant normal)
strict (bdf-font ,(expand-file-name "etl16-latin1.bdf" dir)))
((:char-spec ascii :height any :weight bold :slant normal)
strict (bdf-font ,(expand-file-name "etl16b-latin1.bdf" dir)))
((:char-spec ascii :height any :weight normal :slant any)
strict (bdf-font ,(expand-file-name "etl16i-latin1.bdf" dir)))
((:char-spec ascii :height any :weight bold :slant any)
strict (bdf-font ,(expand-file-name "etl16bi-latin1.bdf" dir)))
((:char-spec katakana-jisx0201 :height any :weight normal :slant normal)
strict (bdf-font ,(expand-file-name "8x16rk.bdf" dir))
((encoding . 1-byte-set-msb)))
((:char-spec katakana-jisx0201 :height any :weight bold :slant normal)
strict (bdf-font ,(expand-file-name "8x16rkbold.bdf" dir))
((encoding . 1-byte-set-msb)))
((:char-spec katakana-jisx0201 :height any :weight normal :slant any)
strict (bdf-font ,(expand-file-name "8x16rkmr.bdf" dir))
((encoding . 1-byte-set-msb)))
((:char-spec katakana-jisx0201 :height any :weight bold :slant any)
strict (bdf-font ,(expand-file-name "8x16rkmrbold.bdf" dir))
((encoding . 1-byte-set-msb)))
((:char-spec latin-jisx0201 :height any :weight normal :slant normal)
strict (bdf-font ,(expand-file-name "8x16rk.bdf" dir)))
((:char-spec latin-jisx0201 :height any :weight bold :slant normal)
strict (bdf-font ,(expand-file-name "8x16rkbold.bdf" dir)))
((:char-spec latin-jisx0201 :height any :weight normal :slant any)
strict (bdf-font ,(expand-file-name "8x16rkmr.bdf" dir)))
((:char-spec latin-jisx0201 :height any :weight bold :slant any)
strict (bdf-font ,(expand-file-name "8x16rkmrbold.bdf" dir)))
((:char-spec japanese-jisx0212 :height any :weight normal :slant normal)
strict (bdf-font ,(expand-file-name "jisksp16.bdf" dir)))
((:char-spec japanese-jisx0212 :height any :weight bold :slant normal)
strict (bdf-font ,(expand-file-name "jisksp16bold.bdf" dir)))
((:char-spec japanese-jisx0212 :height any :weight normal :slant any)
strict (bdf-font ,(expand-file-name "jisksp16.bdf" dir)))
((:char-spec japanese-jisx0212 :height any :weight bold :slant any)
strict (bdf-font ,(expand-file-name "jisksp16bold.bdf" dir)))
((:char-spec japanese-jisx0208 :height any :weight normal :slant normal)
strict (bdf-font ,(expand-file-name "jiskan16.bdf" dir)))
((:char-spec japanese-jisx0208 :height any :weight bold :slant normal)
strict (bdf-font ,(expand-file-name "jiskan16bold.bdf" dir)))
((:char-spec japanese-jisx0208 :height any :weight normal :slant any)
strict (bdf-font ,(expand-file-name "maru16.bdf" dir)))
((:char-spec japanese-jisx0208 :height any :weight bold :slant any)
strict (bdf-font ,(expand-file-name "maru16bold.bdf" dir)))
((:char-spec japanese-jisx0208-1978 :height any :weight normal :slant normal)
strict (bdf-font ,(expand-file-name "jiskan16-1978.bdf" dir)))
((:char-spec japanese-jisx0208-1978 :height any :weight bold :slant normal)
strict (bdf-font ,(expand-file-name "jiskan16bold-1978.bdf" dir)))
((:char-spec japanese-jisx0208-1978 :height any :weight normal :slant any)
strict (bdf-font ,(expand-file-name "jiskan16-1978.bdf" dir)))
((:char-spec japanese-jisx0208-1978 :height any :weight bold :slant any)
strict (bdf-font ,(expand-file-name "jiskan16bold-1978.bdf" dir)))
((:char-spec japanese-jisx0213-1 :height any :weight normal :slant normal)
strict (bdf-font ,(expand-file-name "jiskan16-2000-1.bdf" dir)))
((:char-spec japanese-jisx0213-1 :height any :weight bold :slant normal)
strict (bdf-font ,(expand-file-name "jiskan16-2000-1-bold.bdf" dir)))
((:char-spec japanese-jisx0213-1 :height any :weight normal :slant any)
strict (bdf-font ,(expand-file-name "jiskan16-2000-1-italic.bdf" dir)))
((:char-spec japanese-jisx0213-1 :height any :weight bold :slant any)
strict (bdf-font ,(expand-file-name "jiskan16-2000-1-italic-bold.bdf" dir)))
((:char-spec japanese-jisx0213-2 :height any :weight normal :slant normal)
strict (bdf-font ,(expand-file-name "jiskan16-2000-2.bdf" dir)))
((:char-spec japanese-jisx0213-2 :height any :weight bold :slant normal)
strict (bdf-font ,(expand-file-name "jiskan16-2000-2-bold.bdf" dir)))
((:char-spec japanese-jisx0213-2 :height any :weight normal :slant any)
strict (bdf-font ,(expand-file-name "jiskan16-2000-2-italic.bdf" dir)))
((:char-spec japanese-jisx0213-2 :height any :weight bold :slant any)
strict (bdf-font ,(expand-file-name "jiskan16-2000-2-italic-bold.bdf" dir)))
((:char-spec latin-iso8859-1 :height any :weight any :slant any)
strict (bdf-font ,(expand-file-name "etl16-latin1.bdf" dir))
((encoding . 1-byte-set-msb)))
((:char-spec latin-iso8859-2 :height any :weight any :slant any)
strict (bdf-font ,(expand-file-name "etl16-latin2.bdf" dir))
((encoding . 1-byte-set-msb)))
((:char-spec latin-iso8859-3 :height any :weight any :slant any)
strict (bdf-font ,(expand-file-name "etl16-latin3.bdf" dir))
((encoding . 1-byte-set-msb)))
((:char-spec latin-iso8859-4 :height any :weight any :slant any)
strict (bdf-font ,(expand-file-name "etl16-latin4.bdf" dir))
((encoding . 1-byte-set-msb)))
((:char-spec cyrillic-iso8859-5 :height any :weight any :slant any)
strict (bdf-font ,(expand-file-name "etl16-cyrillic.bdf" dir))
((encoding . 1-byte-set-msb)))
((:char-spec arabic-iso8859-6 :height any :weight any :slant any)
strict (bdf-font ,(expand-file-name "b16-ISO8859-6.bdf" dir))
((encoding . 1-byte-set-msb)))
((:char-spec greek-iso8859-7 :height any :weight any :slant any)
strict (bdf-font ,(expand-file-name "etl16-greek.bdf" dir))
((encoding . 1-byte-set-msb)))
((:char-spec hebrew-iso8859-8 :height any :weight any :slant any)
strict (bdf-font ,(expand-file-name "etl16-hebrew.bdf" dir))
((encoding . 1-byte-set-msb)))
((:char-spec latin-iso8859-9 :height any :weight any :slant any)
strict (bdf-font ,(expand-file-name "etl16-latin5.bdf" dir))
((encoding . 1-byte-set-msb)))
((:char-spec latin-iso8859-14 :height any :weight any :slant any)
strict (bdf-font ,(expand-file-name "b16-ISO8859-14.bdf" dir))
((encoding . 1-byte-set-msb)))
((:char-spec latin-iso8859-15 :height any :weight any :slant any)
strict (bdf-font ,(expand-file-name "b16-ISO8859-15.bdf" dir))
((encoding . 1-byte-set-msb)))
((:char-spec chinese-big5-1 :height any :weight any :slant any)
strict (bdf-font ,(expand-file-name "taipei16.bdf" dir))
((encoding . encode-big5-font)))
((:char-spec chinese-big5-2 :height any :weight any :slant any)
strict (bdf-font ,(expand-file-name "taipei16.bdf" dir))
((encoding . encode-big5-font)))
((:char-spec chinese-sisheng :height any :weight any :slant any)
strict (bdf-font ,(expand-file-name "sish16-etl.bdf" dir)))
;; ((encoding . encode-big5-font)))
((:char-spec chinese-gb2312 :height any :weight any :slant any)
strict (bdf-font ,(expand-file-name "gb16fs.bdf" dir)))
((:char-spec chinese-cns11643-1 :height any :weight any :slant any)
strict (bdf-font ,(expand-file-name "cns-1-16.bdf" dir)))
((:char-spec chinese-cns11643-2 :height any :weight any :slant any)
strict (bdf-font ,(expand-file-name "cns-2-16.bdf" dir)))
((:char-spec chinese-cns11643-3 :height any :weight any :slant any)
strict (bdf-font ,(expand-file-name "cns-3-16.bdf" dir)))
((:char-spec chinese-cns11643-4 :height any :weight any :slant any)
strict (bdf-font ,(expand-file-name "cns-4-16.bdf" dir)))
((:char-spec chinese-cns11643-5 :height any :weight any :slant any)
strict (bdf-font ,(expand-file-name "cns-5-16.bdf" dir)))
((:char-spec chinese-cns11643-6 :height any :weight any :slant any)
strict (bdf-font ,(expand-file-name "cns-6-16.bdf" dir)))
((:char-spec chinese-cns11643-7 :height any :weight any :slant any)
strict (bdf-font ,(expand-file-name "cns-7-16.bdf" dir)))
((:char-spec korean-ksc5601 :height any :weight any :slant any)
strict (bdf-font ,(expand-file-name "hanglg16.bdf" dir))) ;; "hanglm16.bdf"
((:char-spec thai-tis620 :height any :weight any :slant any)
strict (bdf-font ,(expand-file-name "thai-16.bdf" dir))
((encoding . 1-byte-set-msb) (relative-compose . -1)))
((:char-spec vietnamese-viscii-lower :height any :weight any :slant any)
strict (bdf-font ,(expand-file-name "etl16-viscii.bdf" dir))
((encoding . encode-viscii-font)))
((:char-spec vietnamese-viscii-upper :height any :weight any :slant any)
strict (bdf-font ,(expand-file-name "etl16-viscii.bdf" dir))
((encoding . encode-viscii-font)))
((:char-spec arabic-digit :height any :weight any :slant any)
strict (bdf-font ,(expand-file-name "etl16-arabic0.bdf" dir)))
((:char-spec arabic-1-column :height any :weight any :slant any)
strict (bdf-font ,(expand-file-name "etl16-arabic1.bdf" dir)))
((:char-spec arabic-2-column :height any :weight any :slant any)
strict (bdf-font ,(expand-file-name "etl16-arabic2.bdf" dir)))
((:char-spec ipa :height any :weight any :slant any)
strict (bdf-font ,(expand-file-name "etl16-ipa.bdf" dir))
((encoding . 1-byte-set-msb)))
((:char-spec lao :height any :weight any :slant any)
strict (bdf-font ,(expand-file-name "mule-lao-16.bdf" dir))
((encoding . 1-byte-set-msb)))
((:char-spec ethiopic :height any :weight any :slant any)
strict (bdf-font ,(expand-file-name "ethiomx16f-uni.bdf" dir))
((encoding . encode-ethio-font)))
((:char-spec tibetan :height any :weight any :slant any)
strict (bdf-font ,(expand-file-name "mule-tibmdx-16.bdf" dir)))
((:char-spec tibetan-1-column :height any :weight any :slant any)
strict (bdf-font ,(expand-file-name "mule-tibmdx-1col-16.bdf" dir)))
((:char-spec mule-unicode-0100-24ff :height any :weight any :slant any)
strict (bdf-font ,(expand-file-name "b16.bdf" dir))
((encoding . encode-unicode-font)))
((:char-spec mule-unicode-2500-33ff :height any :weight any :slant any)
strict (bdf-font ,(expand-file-name "b16.bdf" dir))
((encoding . encode-unicode-font)))
((:char-spec mule-unicode-e000-ffff :height any :weight any :slant any)
strict (bdf-font ,(expand-file-name "b16.bdf" dir))
((encoding . encode-unicode-font)))
;; indian
((:char-spec indian-is13194 :height any :weight any :slant any)
strict (bdf-font ,(expand-file-name "mule-iscii-16.bdf" dir)))
((:char-spec indian-2-column :height any :weight any :slant any)
strict (bdf-font ,(expand-file-name "mule-indian-16.bdf" dir)))
((:char-spec ,(decode-char 'ucs #x0900) :height any :weight any :slant any)
strict (bdf-font ,(expand-file-name "ind16-uni.bdf" dir))
((encoding . encode-unicode-font)))
((:char-spec ,(car (indian-font-char-range 'cdac:dv-ttsurekh))
:height any :weight any :slant any)
strict (bdf-font ,(expand-file-name "dvsr0ntt-16.bdf" cdac))
((encoding . encode-indian-glyph-font)))
((:char-spec ,(car (indian-font-char-range 'cdac:sd-ttsurekh))
:height any :weight any :slant any)
strict (bdf-font ,(expand-file-name "sdsr0ntt-16.bdf" cdac))
((encoding . encode-indian-glyph-font)))
((:char-spec ,(car (indian-font-char-range 'cdac:bn-ttdurga))
:height any :weight any :slant any)
strict (bdf-font ,(expand-file-name "bndr0ntt-16.bdf" cdac))
((encoding . encode-indian-glyph-font)))
((:char-spec ,(car (indian-font-char-range 'cdac:as-ttdurga))
:height any :weight any :slant any)
strict (bdf-font ,(expand-file-name "asdr0ntt-16.bdf" cdac))
((encoding . encode-indian-glyph-font)))
((:char-spec ,(car (indian-font-char-range 'cdac:pn-ttamar))
:height any :weight any :slant any)
strict (bdf-font ,(expand-file-name "pnam0ntt-16.bdf" cdac)))
((:char-spec ,(car (indian-font-char-range 'cdac:gj-ttavantika))
:height any :weight any :slant any)
strict (bdf-font ,(expand-file-name "gjav0ntt-16.bdf" cdac))
((encoding . encode-indian-glyph-font)))
((:char-spec ,(car (indian-font-char-range 'cdac:or-ttsarala))
:height any :weight any :slant any)
strict (bdf-font ,(expand-file-name "orsr0ntt-16.bdf" cdac))
((encoding . encode-indian-glyph-font)))
((:char-spec ,(car (indian-font-char-range 'cdac:tm-ttvalluvar))
:height any :weight any :slant any)
strict (bdf-font ,(expand-file-name "tmvl0ntt-16.bdf" cdac))
((encoding . encode-indian-glyph-font)))
((:char-spec ,(car (indian-font-char-range 'cdac:tl-tthemalatha))
:height any :weight any :slant any)
strict (bdf-font ,(expand-file-name "tlhm0ntt-16.bdf" cdac)))
((:char-spec ,(car (indian-font-char-range 'cdac:kn-ttuma))
:height any :weight any :slant any)
strict (bdf-font ,(expand-file-name "knum0ntt-16.bdf" cdac))
((encoding . encode-indian-glyph-font)))
((:char-spec ,(car (indian-font-char-range 'cdac:ml-ttkarthika))
:height any :weight any :slant any)
strict (bdf-font ,(expand-file-name "mlkr0ntt-16.bdf" cdac))
((encoding . encode-indian-glyph-font)))
((:char-spec ,(car (indian-font-char-range 'akruti:dev))
:height any :weight any :slant any)
strict (bdf-font ,(expand-file-name "dev2-n-16.bdf" akruti))
((encoding . encode-indian-glyph-font)))
((:char-spec ,(car (indian-font-char-range 'akruti:bng))
:height any :weight any :slant any)
strict (bdf-font ,(expand-file-name "bng2-n-16.bdf" akruti))
((encoding . encode-indian-glyph-font)))
((:char-spec ,(car (indian-font-char-range 'akruti:pnj))
:height any :weight any :slant any)
strict (bdf-font ,(expand-file-name "pnj2-n-16.bdf" akruti))
((encoding . encode-indian-glyph-font)))
((:char-spec ,(car (indian-font-char-range 'akruti:guj))
:height any :weight any :slant any)
strict (bdf-font ,(expand-file-name "guj1-n-16.bdf" akruti))
((encoding . encode-indian-glyph-font)))
((:char-spec ,(car (indian-font-char-range 'akruti:ori))
:height any :weight any :slant any)
strict (bdf-font ,(expand-file-name "ori1-n-16.bdf" akruti))
((encoding . encode-indian-glyph-font)))
((:char-spec ,(car (indian-font-char-range 'akruti:tml))
:height any :weight any :slant any)
strict (bdf-font ,(expand-file-name "tml1-n-16.bdf" akruti))
((encoding . encode-indian-glyph-font)))
((:char-spec ,(car (indian-font-char-range 'akruti:tlg))
:height any :weight any :slant any)
strict (bdf-font ,(expand-file-name "tlg2-n-16.bdf" akruti))
((encoding . encode-indian-glyph-font)))
((:char-spec ,(car (indian-font-char-range 'akruti:knd))
:height any :weight any :slant any)
strict (bdf-font ,(expand-file-name "knd1-n-16.bdf" akruti))
((encoding . encode-indian-glyph-font)))
((:char-spec ,(car (indian-font-char-range 'akruti:mal))
:height any :weight any :slant any)
strict (bdf-font ,(expand-file-name "mal2-n-16.bdf" akruti))
((encoding . encode-indian-glyph-font)))
;; おまけの bitmap
((:char-spec bitmap :height any :weight any :slant any)
strict (bdf-font ,(expand-file-name "etl8x16-bitmap.bdf" dir)))
))))