emacs23(Windows)でcmigemoを使う

目標

cmigemo + migemo.elをemacs23/windowsで動かす。

環境

WindowsXP + cygwin1.7 + emacs23

インストール方法

qkcのコンパイル(gcc / cygwin)

ソースの入手
http://hp.vector.co.jp/authors/VA000501/
For Unixをダウンロードして、cygwinコンパイル

$ cd /usr/src/qkc100
$ make
cygwinでパスの効いたフォルダへコピー
$ cp -p qkc.exe /usr/local/bin

cmigemoのコンパイル(gcc / cygwin)

ソースの入手
http://code.google.com/p/cmigemo/
Source archiveをダウンロードして、cygwinコンパイル

$ cd /usr/src/cmigemo-default-src
$ ./configure
$ make cyg

ここでエラーがでた。

src/wordbuf.c:118: error: `INT_MAX' が宣言されていません 

wordbuf.cを編集し、一行追加。

#include <limits.h>

もういちど、

$ make cyg

できた実行ファイル、cmigemo.exe, cygmigemo1.dllを、
Windowsでパスの効いた場所にコピーする。

辞書ファイルの作成
$ make cyg-dict
$ cd dict
$ make utf-8
$ cd ../
$ make cyg-install

ここらで、wgetperl、libiconvが必要となる。
指摘をうけたら、cygwinのsetup.exeで、インストールする。

migemo.elの配置

ソース入手
http://0xcc.net/migemo/

migemo-0.40.tar.gzを展開し、migemo.el.inを、
load-pathの効いた場所にコピー。名前をmigemo.elに
変更する。

.emacsへの追記

;;; ローマ字のまま日本語をインクリメンタルサーチする
(setq migemo-command "cmigemo")
(setq migemo-options '("-q" "--emacs" "-i" "\g"))
;; migemo-dictのパスを指定
(setq migemo-directory "c:/cygwin/usr/local/share/migemo/cp932")
(setq migemo-user-dictionary nil)
(setq migemo-regex-dictionary nil)
;; キャッシュ機能を利用する
(setq migemo-use-pattern-alist t)
(setq migemo-use-frequent-pattern-alist t)
(setq migemo-pattern-alist-length 1024)
;; 辞書の文字コードを指定.
(setq migemo-coding-system 'cp932-unix)

(load-library "migemo")
;; 起動時に初期化も行う
(migemo-init)