Mac OS Lion へ Emacs 24.3 をインストール
24.1を使っていたが、Terminal上で使用した際に
OpenStep is not in use or not initialized
というメッセージが出ることに気付いた。ファンクションキーのキーバインドがこのエラーでまともに動作しなかった。原因について調べていたが、24.0.50でこのエラーが出る不具合があるとわかった。
bug#6940: 24.0.50; Entire buffer blinking when selecting text
該当しているかはわからないが、アップグレードすることに。とりあえず、portを使ってみたら24.3がインストールされた。24.2が最新と思っていたが・・・
ところが、24.3にした後でまた別の問題が。原因はよくわからないが、
Invalid face: modeling
なるメッセージが・・・今度はなんだと思ったら、これはEmacsの内部実装の変化が原因のようで、SKKがその影響を受けていたことが判明。
face名 modelineが削除されたことによるエラーとworkaround
SKKも最新にするか、ということで確認したところ、14.4でなく15.1というのがあったのでそれをインストール。一連の手順をまとめると以下のような感じ。
- sudo port install emacs
- curl -O http://openlab.ring.gr.jp/skk/maintrunk/ddskk-15.1.tar.gz
- tar xvfz ddskk-15.1.tar.gz
- cd ddskk-15.1
- SKK-CFGの「Apple Mac OS X における self-contained な Carbon/Cocoa Emacs の設定例」を編集
- make what-where
- sudo make install
これまではSKKは .emacs.d/lisp/skk 以下のものを使うようにしていたが、これを機にそれをやめることに・・・.emacs.d/init.elのSKKの定義は以下のようになった。
(require 'skk-autoloads) (setq default-input-method "japanese-skk") (setq skk-henkan-strict-okuri-precedence t) (setq skk-check-okurigana-on-touroku t) (setq skk-auto-insert-param t) (setq skk-egg-like-newline t) (setq skk-show-annotation t) (setq skk-large-jisyo "~/.emacs.d/share/skk/SKK-JISYO.L") (setq skk-tut-file "~/.emacs.d/share/skk/SKK.tut") (setq skk-user-directory "~/.emacs.d/share/skk") (setq skk-preload t) (setq skk-previous-candidate-keys (list "x"))
今までお世話になった以下の行を削除した。
(add-to-list 'load-path (expand-file-name "~/.emacs.d/lisp/skk"))
だが・・・まだ問題が。どうやら、24.3では
- ns-get-pasteboard
- ns-set-pasteboard
あたりの動作が変わっているようだ。この辺も調べて修正しないといけない関数がある。それについてはまた後日調べることにしよう。