private lab. このページをアンテナに追加 RSSフィード

2006-04-11 空はどんより

FedoraCore5(FC5)上のemacsでAnthyを使う

はじめに。やっぱりemacs!

私がUNIXにこだわる理由の一つはemacsであると言っても過言ではありません。Emacsがなければ私の生産性はきっと半分以下に落ちてしまうと思っています。

Thanks to GNU, Richard, 半田先生 and all emacs communities!!

ところでFreeのUNIXで日本語入力をする場合に問題として、漢字変換エンジンがあまり賢くない*1という不満がありました。私の場合は、OMRON SoftのWnn7を購入して利用していました。当時、emacs@linuxで「貴社の記者が汽車で帰社した」というセンテンスが一発で変換できたときの喜びはひとしおでした。ところでFC5には、Anthyという新しい漢字変換エンジンが搭載されています。この漢字変換エンジンはこれまでのFreeWnnやCannaに比べると効率の良い漢字変換を実現してくれると感じています。というわけで、今回のTIPSはAnthyをemacsから使えるようにするというものです。

RPMインストール

emacs, anthyに関連するパッケージは基本的にrpmで提供されていますから、導入は非常に簡単です。yumを使ってインストールを行うことをお勧めします。

# yum install emacs emacs-leim anthy-el

インストールはこれで完了です。

.emacsの設定

.emacsにanthyを使うための設定を記述します。もちろん、/usr/share/emacs/site-list/site-start.d/に作成しても良いです。

;; anthy
(set-language-environment "Japanese")
(setq default-input-method "japanese-anthy")

これは個人的な好みなのですが、CTRL-SPACEで入力モードのトグルができるようにしています。以下の記述を.emacsに追加してください。

(global-set-key [?\C-\ ] 'toggle-input-method)

SCIM対策

FC5上のX Windowで単純にemacsを起動すると、SCIMemacsの必要とするキーバインディングのいくつかを奪ってしまいます。個人的な好みとして設定しているCTRL-SPACEによる入力モードのトグルや、標準でeval-print-last-sexpにバインドされているCTRL-jなどが使えないのです。そこで、emacsを使うときにはSCIMからの干渉を受けないように設定を行う必要があります。

これはemacs起動時にコマンドラインから環境変数を設定することで実現することができます。

$ XMODIFIERS=@im=NONE emacs

/etc/profile.d/emacs.shとして、以下のような内容のファイルを作成して使っています。

alias emacs=’XMODIFIERS=@im=NONE emacs'

こうしておくことで、シェルからemacsを起動したときにはいつでも、SCIMの干渉を受けないような設定でemacsが起動します。

UTF-8への対応

日本語環境としてインストールした場合、FC5のデフォルトロケールは、ja_JP.UTF-8になります。そこでemacsでもエンコーディングUTF-8のファイルを読めるようにしたいと思います。

FC5で提供されているemacsは最初からUTF-8に対応した形でコンパイルされていますので、.emacsへの設定を追加するだけで行うことができます。

(prefer-coding-system ‘utf-8)

なお、UTF-8で記述されたファイルを端末上で閲覧するときには、lessコマンドの変わりにlvコマンドを使うようにすると便利です。

*1:ごめんなさいっ