Emacs24を入れてみました。
なぜかふとEmacsを24にしてみようと思い立ったので入れてみました。
OS X用だとSourceForgeで.dmgが配布されているのでそこからダウンロードしてきました。
普通に古いのと置き換えました。
起動するとinit.el内でエラーがいくつか出ていたのでとりあえず困らなそうなやつは全部コメントアウトしました。
で、問題が一つ。
どうもflyspellがデフォルトで機能しているらしく
Error enabling Flyspell mode: (Searching for program No such file or directory ispell)
というメッセージが。
ispellはインストールしてないのでインストールします。
portsとかbrewとかで入れられるらしいんですが面倒くさいのでソースから入れました。(僕のMacにはportを入れてない。)
$ tar -xvzf ispell-3.3.02.tar.gz $ cd ispell-3.3.02 $ cp local.h.macos local.h $ make all
そしたらエラーが出た。
correct.c:248: error: conflicting types for ‘getline’ /usr/include/stdio.h:449: error: previous declaration of ‘getline’ was here make: *** [correct.o] Error 1
コンフリクトしてるらしい。
とりあえず適当に置換します。
$ chmod 644 correct.c $ vim correct.c :%s/getline/_getline/g 保存して閉じる $ make all 今度は通ったはずなので $ sudo make install
無事インストール出来ました。
再びEmacs起動してみます。
やっぱりispellが無いとか言われる・・・。
まぁインストールは出来てるわけだからパスの問題だろうと言うことで
$ which ispell /usr/local/bin/ispell
init.elに追記
(setq ispell-program-name "/usr/local/bin/ispell")
もっかい起動して適当なファイルを開いてみます。
バッファには
Starting new Ispell process [default] ...
と出ているので大丈夫そうです。
例えばですがPHPで
$a = 'enviroment';
とか書いちゃうとアンダーライン付いてスペルミスしていることを教えてくれます。