Jul 15, 2010

Cocoa Emacs, DDSKK, Zen-codingをインストールした時のメモ

MacBookにCocoa Emacs(Emacs 23)をビルドしてインストールした。 手順は『Emacs23 (Cocoa Emacs) 入門から中毒まで : 紹介マニア』という素晴しいサイトがあるので、ここを参照した。 Emacs 23.2にIMEパッチ(inline_patch-23.2-beta3)というパッチをあててビルドした。 作業はすんなりと済んだ。

IMEパッチをあててビルドしたが、なにかの時のために?elispで動作するSKK(DDSKK)をインストールすることにした。 作業手順は先ほどの『紹介マニア』さんのページにある。 以前、Emacs 22をインストールする際にも『紹介マニア』さんのページを参照して、Emacsの設定ディレクトリを~/.emacs.d/にしてあった。 elispのパッケージなども~/.emacs.d/lispなどに配置するようにしている。 APELは紹介された手順でインストールできたが、SKKはそのままだと~/.emacs.d/に配置できなかった。 そこで、DDSKKのtarballを展開したディレクトリにあるSKK-CFGを編集して以下を追記した。

(add-to-list 'load-path "~/.emacs.d/lisp/apel")
(add-to-list 'load-path "~/.emacs.d/lisp/emu")
(setq PREFIX "~/.emacs.d")
(setq APEL_DIR "~/.emacs.d/lisp/apel")
(setq EMU_DIR "~/.emacs.d/lisp/emu")
(setq SKK_DATADIR "~/.emacs.d/share/skk")
(setq SKK_INFODIR "~/.emacs.d/info")
(setq SKK_LISPDIR "~/.emacs.d/lisp/skk")
(setq SKK_SET_JISYO t)

コマンドラインでは

make install EMACS=/Applications/Emacs.app/Contents/MacOS/Emacs

とコンパイルに使用するEmacsを明示した。 これを指定しないとMac OS Xの/usr/bin/emacsが使用されて、インストールされたパッケージがEmacs.appから使用できない。

年頭くらいに話題になったZen-codingをEmacsでも使えるようにと、zencoding.elとyasnippet.elをインストールした。 「emacs zen-coding」でウェブ検索すればインストールの紹介記事をみるけられるが、自分は他の人がはまりそうにないところではまった。 参照したページから設定を自分のdot.emacsにコピペして、zencoding-modeを使おうとすると、「Invalid function: incf」をミニバッファにメッセージが表示されて期待通りに動作しない。 で、「incf」について検索して、EmacsのCLパッケージで定義されるマクロだということを知った。 「incf」はzencoding.pl内で定義されていないので、エラーが表示された。 「emacs incf」で検索して、『Emacs Lispプログラマはガンガン(require 'cl)しろよ - (rubikitch loves (Emacs Ruby CUI))』『舌足らずなブログ: おおえまくすよ マクロをつかわないとは なさけない』というページをみつけた。 dot.emacsに(eval-when-compile (require 'cl))を追加して、zencoding.elをバイトコンパイルして呼び出すようにした。 Emacsを愛用している人ならば「常識」なところで、躓いた、とほほ。

追記:

DDSKKのインストールについては、『紹介マニアどらふと版: Daredevil SKK 14.0.90を .emacs.d 以下にインストール』ですでに記事が掲載されていましたorz。

Posted at 19:00 in pc | WriteBacks (0) | Edit
WriteBacks
TrackBack ping me at
http://deppara.com/blog/pc/e20100715190000-cocoa-emacs-ddskk-zencoding.trackback
Post a comment

writeback message: Ready to post a comment.