DDSKK 14.1 がリリースされたので、早速 .emacs.d へインストールしよう。

本日、DDSKK14.1 がリリースされました。ddskk でGoogle検索すると、ほぼトップにきてしまうので、その責任を感じて最新版のインストールの方法を紹介しておきます。
また、DDSKK のインストールについては、WEB+DB PRESS Vol.58 に書いたのですが、文章量的に厳しくて削ってしまったので、この記事は未収録内容その5でもあります。

Daredevil SKK(通称DDSKK):Emacs生まれの日本語IM

Microsoft IME から ATOK などさまざまな IM がありますが、その中でも Emacs で日本語を入力するのであれば、筆者は DDSKK をお勧めします。DDSKK は一般的に SKK と呼ばれる IM の本家本元であり、現在も開発が続けられています。そして Elisp によって実装されているため、その機能のすべてを Elisp でコントロール可能であり、また Emacs+DDSKK という組み合わせは環境に左右されることのない日本語入力環境を提供してくれます。詳細は、上記サイトのほか SKK Manual: 便利な応用機能を参照してください。

インストール

DDSKK のインストールには、まず APEL というライブラリをインストールしてから、DDSKK 本体をインストールします。ここでは Mac OS X で ~/.emacs.d 以下にインストールする方法を解説しますが、インストールされた環境は、ほかの OS でも利用できます。

APEL のインストール

コマンドラインだけで簡単にインストールできます。

$ curl -O http://kanji.zinbun.kyoto-u.ac.jp/~tomo/lemi/dist/apel/apel-10.8.tar.gz
$ tar xvf apel-10.8.tar.gz
$ cd ./apel-10.8
$ make LISPDIR=~/.emacs.d/elisp VERSION_SPECIFIC_LISPDIR=~/.emacs.d/elisp INFODIR=~/.emacs.d/info EMACS=/Applications/Emacs.app/Contents/MacOS/Emacs
$ make install LISPDIR=~/.emacs.d/elisp VERSION_SPECIFIC_LISPDIR=~/.emacs.d/elisp INFODIR=~/.emacs.d/info

~/.emacs.d/elisp の apel と emu ディレクトリにインストールされ、バイトコンパイルもされます。
例では、make オプションの EMACS に念のため Emacs.app の Emacs を指定していますが、コンソール環境で emacs を実行して emacs23 が起動するのであれば必要ありません。

DDSKK 14.1 のインストール
$ curl -O http://openlab.ring.gr.jp/skk/maintrunk/ddskk-14.1.tar.gz
$ tar xvf ./ddskk-14.0.91.tar.gz
$ cd ./ddskk-14.1

として、SKK-CFG ファイルのどこでもよいので以下の行を追記します。

(add-to-list 'load-path "~/.emacs.d/elisp/emu")
(add-to-list 'load-path "~/.emacs.d/elisp/apel")
(setq APEL_DIR "~/.emacs.d/elisp/apel")
(setq EMU_DIR "~/.emacs.d/elisp/emu")
(setq SKK_DATADIR "~/.emacs.d/etc/skk")
(setq SKK_INFODIR "~/.emacs.d/info")
(setq SKK_LISPDIR "~/.emacs.d/elisp/skk")
(setq SKK_SET_JISYO t)

この設定をした後、

$ make install EMACS=/Applications/Emacs.app/Contents/MacOS/Emacs

このコマンドを実行すると、一発でインストールできます。このときの EMACS も環境によっては必要ありません。
なお、info ドキュメントが .emacs.d/info にインストールされるため、init.el でパスを通しておく方が良いでしょう。

(require 'info)
(add-to-list 'Info-additional-directory-list "~/.emacs.d/info")

skk-user-directory で設定ファイルディレクトリが指定可能に。

DDSKK は膨大な機能と細かい設定が可能なため、詳細についてはマニュアルを参考にしていただくとして、14.1 から新しくなった設定ファイルの管理について紹介しておきます。
これまでは .emacs や init.el に書かれた設定以外にホームディレクトリの .skk に設定を書くことができました*1。14.1 からは skk-user-directory という変数が追加され、これを有効にすることで指定したディレクトリに設定ファイルを置くことができます。つまり、最小限の設定はこんな感じです。

(setq skk-user-directory "~/.emacs.d/ddskk/") ; ディレクトリ指定
(when (require 'skk-autoloads nil t)
  ;; C-x C-j で skk モードを起動
  (define-key global-map (kbd "C-x C-j") 'skk-mode)
  ;; .skk を自動的にバイトコンパイル
  (setq skk-byte-compile-init-file t))

注意しなければいけない事は、skk-user-directory を設定すると .skk ファイルのかわりに init ファイルを使うことになります。つまり上記の設定の場合 ~/.emacs.d/ddskk/init に設定することになります。他の辞書ファイルなども以下のように変更されます。

今までの値~/.emacs.d/ddskkk にした場合の値
~/.skk~/.emacs.d/ddskk/init
~/.skk-jisyo~/.emacs.d/ddskk/jisyo
~/.skk-jisyo.BAK~/.emacs.d/ddskk/jisyo.bak
~/.skk-emacs-id~/.emacs.d/ddskk/emacs-id
~/.skk-record~/.emacs.d/ddskk/record
詳しくは skk.info の "便利な応用機能 > ユーザオプションの設定方法 > 設定ファイル" を見て下さい。
その他、ddskk の設定については myuhe さんの 今だからこそ始めるDDSKK などを参考にして下さい。他の新機能とかについてはまた今度。
追記
APEL インストールのコマンドラインが間違っていたのを修正。

*1:変数で指定することで場所を変更することもできました。