先日悩んでいた問題です。やっとできました。
まず正しく設定できた .emacs から。
(set-face-attribute 'default nil :family "ProFont" :height 120) (set-fontset-font "fontset-default" 'japanese-jisx0208 '("NfMotoyaCedar" . "iso10646-1")) (set-fontset-font "fontset-default" 'katakana-jisx0201 '("NfMotoyaCedar" . "iso10646-1")) (setq face-font-rescale-alist '((".*profont-medium.*" . 1.0) (".*profont-bold.*" . 1.0) (".*nfmotoyacedar-bold.*" . 1.4) (".*nfmotoyacedar-medium.*" . 1.4) ("-cdac$" . 1.3)))
次に駄目な場合の設定(日本語部分のみ)
(set-fontset-font "fontset-default" 'japanese-jisx0208 '("nfmotoyacedar" . "iso10646-1")) (set-fontset-font "fontset-default" 'katakana-jisx0201 '("nfmotoyacedar" . "iso10646-1"))
つまり、フォント名が正しくないという訳です。
ちなみに、Emacs 22.3 だと、これでオッケーでした。
正しいフォント名は下の行を scratch バッファで C-j すれば、どう゛ぁどう゛ぁっと表示されます。
(prin1-to-string (x-list-fonts "*"))
そして、色々試してみた結果、Osaka や Meiryo は「osaka」「meiryo」でも、ちゃんと変更されるようです。
ですが、Hiragino_Mincho_ProN などは、「hiragino_mincho_pron」では駄目なようです。これはかなりヤラれましたね。
しっかしまぁ、とりあえずフォントの問題が解決したようで何よりでした。
さて、次は、DDSKK ですね。
起動時に
Warning: `last-command-char' is an obsolete variable (as of Emacs at least 19.34); use `last-command-event' instead.
というエラーが出ますが、起動できているのでとりあえず置いておくとして、▽モードのときにqでカタカナ・ひらがなに変換できないのが超痛いです。
同じく▽モードのときに M-SPC で補完変換ができなかったのですが、C-h k で調べてみると、skk-j-mode-map ではなく、なぜか global-map が使われていたので、
(define-key skk-j-mode-map (kbd "M-SPC") 'skk-comp-start-henkan)
と設定しなおすことで解決しました。ですが、q は skk-insert というコマンドが正しく実行されているようで、そのくせに変換されずに確定されてしまうので困りものです。
ちなみに利用している ddskk は Daredevil SKK/13.1.50 (Syounai) です。