Emacs用Scala入力支援ライブラリであるENSIMEをセットアップしていたら、Emacsが次のようなエラーを吐いた。
. . . (cyclic-function-indirection char-valid-p)
最初はENSIMEのバグかなにかと必死で考えてみたが、検索しても一件もヒットしないので困っていたが、結局これはDDSKKの仕様とバイトコンパイルの罠?であった。
どうやらEmacsのバージョンを22.xから24.xにアップグレードしたことが影響したらしく、DDSKK内での処理に使われるマクロがバージョンにより分岐しており、さらにこの.elファイルがバイトコンパイルされていたことがエラーの引き金となっていた。
エラーの過程
エラーの解決法
/usr/share/emacs/site-lisp/skk/(ここはDDSKKへのパスに読み替える)skk-macs.elcを削除する
(skk-macs.elを削除してはいけない!)
これを実行したところ、めでたくENSIMEがセットアップされました。
よいEmacsライフを!