Qbilinux 日記

Linux に関係することだけではなく,最近は一般的なコンピュータやガジェット関係についても記載してます.

Mac で FreeWnn + Emacs + tamago-tsunagi という組み合わせで動かしてみた

Mac 用の Emacs が不安定なので何とかならないかなと試行錯誤.

色々な Emacs を試してみて,安定しているのはやっぱり ftp://ftp.math.s.chiba-u.ac.jp/emacs/ で配布されている Mac 用の Emacs パッチを当てているのが一番かなと.でも,日本語入力環境がやっぱりなじめない.

本当はこれに inline patch をマージしたいんだけど,その時間も取れそうにない.

仕方ないので,ふと思い立って試しに Mac に FreeWnn を入れて,tamago 経由で Emacs 上で日本語入力する環境を整えてみました.

Mac 用の Emacs パッチを当て Emacs を作成する手順はこんな感じかな.もうすぐ 24.5 が出るので,Mac 用の Emacs パッチもそれ対応になっていますね.

% tar zxvf emacs-24.5-rc1-mac-5.6.tar.gz
% cd emacs-24.5-rc1-mac-5.6
% xz -dc ../emacs-24.5-rc1.tar.xz | tar xvf -
% tar zxvf ../emacs-hires-icons-1.0.tar.gz
% cd emacs-24.5
% patch -p1 < ../patch-mac
% cp -pr ../mac .
% cp nextstep/Cocoa/Emacs.base/Contents/Resources/Emacs.icns mac/Emacs.app/Contents/Resources/Emacs.icns
% cp -pr ../emacs-hires-icons-1.0/etc/images/* etc/images
% cp -pr ../src/* src
% cp -pr ../lisp/term/mac-win.el lisp/term
% ./configure --with-mac --enable-mac-app=/Users/xxx/Applications
% make -j2
% make install

/Users/xxx/Applications 以下に Emacs.app をインストールして,/usr/local 以下に lisp などが入る形にしています.

次に FreeWnn.

ここまでする必要があるのかは不明だけど,とりあえず wnn 用のユーザーを追加.インストール時に wnn ユーザーが必要になるためです.

% dscl . -list /Users UniqueID | sort -n -k 2
% dscl . -list /Groups PrimaryGroupID | sort -n -k 2
% export NEWGID=$(expr $(dscacheutil -q group | awk '{print $2}' | sort -ug | tail -1) + 1)
% sudo dscl . -create /Groups/wnn gid $NEWGID
% sudo dscl . -create /Users/wnn
% sudo dscl . -create /Users/wnn UserShell /sbin/nologin
% sudo dscl . -create /Users/wnn RealName 'wnn'
% sudo dscl . -create /Users/wnn UniqueID 600
% sudo dscl . -create /Users/wnn PrimaryGroupID $NEWGID
% sudo dscl . -create /Users/wnn NFSHomeDirectory /Users/wnn

FreeWnn のソースは http://sourceforge.jp/projects/freewnn/releases/59257 から FreeWnn-1.1.1-a022.tar.bz2 をダウンロード.そのまま展開して configure & make & make install ですんなりコンパイルが通ってインストールできました.FreeWnn 一式は /usr/local/ 以下にインストールされます.

とりあえず,動作確認したいだけなので,自動起動するような設定は行ずに,手作業でコマンドラインから /usr/local/bin/Wnn4/jserver を実行することで Wnn サーバー起動.一応,エラーは出ずに動作しました.

tamago-tsunagi は http://sourceforge.jp/projects/tamago-tsunagi/ からダウンロード.使ったのは tamago-tsunagi-5.0.7.1.tar.gz.うまくスクリプトからはインストールできなかったので,普通に configure した後,無理矢理インストール.emacs はさきほどインストールしたものを使ってバイトコンパイルしています.

% ./configure
% EMACS=/Users/xxx/Applications/Emacs.app/Contents/MacOS/Emacs make
% DESTDIR=/tmp/tamago-tsunagi make install

その後,/tmp/tamago-tsunagi/usr/share/emcs/site-lisp/egg を実際に使うところにコピーという手順を踏みました.

.emacs.d/init.el 内に tamago 用の設定を記述して,Emacs を立ち上げると無事,Emacs の tamago 経由で FreeWnn を使うことができました.でも,久しぶりに FreeWnn を使ってみると,結構,辞書がアレなのでそこがちょっとって感じ.でも,キーバインドとか設定とかは自由にできるので,そういうところはストレスはないです.辞書を鍛えてあげれば何とかなるのかな?

tamago 用の設定はこれくらいです.

(add-to-list 'load-path "/eggをコピーしたディレクトリ")
(load-file "/eggをコピーしたディレクトリ/leim-list.el")
(setq jserver-list (list "localhost"))

しばらく使ってみて,良さそうなら FreeWnn を自動起動するように設定してみようかと思います.ネットで検索すれば,FreeWnn を自動起動する方法はいろんなところに書かれているみたいです.