先日、Meadowを3.00にバージョンアップしたといっていましたが、それはDDSKKのインストールを試すのが目的でありました。自宅のiMacにインストールされているEmacs、銭谷さんのCarbon Emacsでもddskkを使えるようにしたいと思ったものですから、まずは成功の実績のあるMeadowで試そうと、そういうつもりだったのです。しかし、ネットインストールしたMeadow 3.00にはDDSKKがインストールされていたものですから、その目論見は外れたというわけです。
DDSKKのインストールについては、SKK Openlabで公開されているマニュアルを参照するのがよいでしょう。APELは、Carbon Emacsには収録済みだから、2.2 DDSKK のインストールからですね。ダウンロードした書庫ファイルを展開して、そしてmakeを使えというのですが、私は自分の使っているiMacに開発環境をインストールしていないので、makeも入っていない、当然使えないわけで、だから違う方法を試みる必要があったのです。しかし、違う方法といっても、make installとやらがなにをやっているかわからないことには、どうしようもありません。なので、makefileを読んだのでした。
その結果、make installは、
$ /Applications/Emacs.app/Contents/MacOS/Emacs -batch -no-site-file -l SKK-MK -f SKK-MK-install
とやればよいことがわかりました。また、ファイルがどのディレクトリにインストールされるか確認する、make what-whereについては、以下のコマンドを実行してやればよいことがわかりました。
$ /Applications/Emacs.app/Contents/MacOS/Emacs -batch -no-site-file -l SKK-MK -f SKK-MK-what-where
さて、ここでさらなる設定が必要となります。上記のコマンドでインストールすると、ファイルはCarbon Emacsのpackage内にインストールされてしまいます。こうなると、Carbon EmacsがバージョンアップするたびにDDSKKもインストールしてやらなければならなくて、それはちょっと面倒だな。だから、ホームディレクトリに作られているディレクトリ、~/.emacs.d以下にインストールしたいな。
そういう場合はどうしたらいいかというと、SKK-CFGというファイルに設定を書くといいそうです。しかし、このSKK-CFGがなぜか書き込めない設定になっていたため、chmodでパーミッションを変更して、ええと、次のようにしました。
$ chmod 666 skk-cfg
SKK-CFGに書き込めるようになったら、次の設定を加えます。
(setq SKK_DATADIR "~/.emacs.d/etc/skk") (setq SKK_INFODIR "~/.emacs.d/info") (setq SKK_LISPDIR "~/.emacs.d/site-lisp/skk")
what-whereでインストールされる先を確認して、installでインストール。かくして、ファイルは無事狙いのディレクトリにインストールされました。
DDSKKをインストールしたら、それを使えるようにしないといけません。.emacsに必要な設定を書き加えます。
;;; apel用のload-path (normal-top-level-add-to-load-path '("apel")) ;;; skk用の設定 (setq load-path (append (list (expand-file-name "~/.emacs.d/site-lisp/skk")) load-path)) (require 'skk-autoloads) (global-set-key "¥C-x¥C-j" 'skk-mode) (global-set-key "¥C-xj" 'skk-auto-fill-mode) (global-set-key "¥C-xt" 'skk-tutorial) (setq skk-server-host "localhost") (setq skk-server-portnum 1178) (setq skk-jisyo-code 'utf-8-unix) (setq skk-henkan-show-candidates-keys '(?a ?o ?e ?u ?h ?t ?n)) ;;; コントロールキーをシステムに取られないようにする (setq mac-pass-control-to-system nil)
apelのload-pathはいらないかも知れないけど、書いて、それでちゃんと動いているので、そのままにしてあります。
SKKの設定は、まずはload-pathに~/.emacs.d/site-lisp/skkを追加して、DDSKKのファイルがEmacsから見付けられるようにします。それから、SKKを有効にする数行が続いて、そして辞書の設定。ここでは辞書サーバを使っているので、ファイルの指定はしていません。AquaSKKをskkservとして利用しています。ホストを指定して、ポートを指定して、そして個人辞書のエンコード設定を書いて、ここではutf-8-unix、改行コードがLFのUTF-8を指定しています。そして、私はDvorakを使っているので、変換時の確定キーをDvorakで使いやすいように変更。そして最後に、mac-pass-control-to-systemをnilにすることで、C-jをAquaSKKに取られないようにして、以上で設定は終了です。
最初はAquaSKKとDDSKKで個人辞書を共有したかったのですが、それで辞書が壊れたりしたらいやだから、辞書サーバを使うことにしたのでした。AquaSKKはDDSKKの個人辞書を読むような設定が入っていますし、もちろんAquaSKKの個人辞書も読むわけで、ということはDDSKKだろうとAquaSKKだろうと、両方の個人辞書を利用できるということになりますよね。といったわけで、危ない橋を渡ることなく、望んだことが実現できました。
DDSKKが導入されたことで、Carbon Emacsの使い勝手も向上しました。今のところメインにするつもりはないのですが、便利なプラットフォームとして使っているうちに、Macintoshでも手放せなくなるかも知れません。正直それは避けたいんですけど、はたしてどうなりますことやら。