Cocoa Emacs(Emacs23)をOS X Lion向けにフルスクリーン、インライン入力対応のパッチを当ててビルドする方法

2012-01-10


エディタを巡る宗教戦争も最近はVimが優勢な気もしますが、私はEmacsを愛用しています。

先月2011年12月号のSoftware DesignにCocoa Emacs(Emacs23)をMac OS X Lion向けにフルスクリーン、インライン入力対応のパッチを当ててビルドする方法が載っていたので実際に試してみました。

環境は

  • Mac OS X Lion
  • Cocoa Emacs(Emacs23.3b)
  • IMEにATOK定額制(ATOK24.0)

を使用しています。

まずはEmacs本体とパッチファイルの取得

wget ftp://ftp.ring.gr.jp/pub/GNU/emacs/emacs-23.3b.tar.bz2
tar xjf emacs-23.3b.tar.bz2
curl -o xcode_1.patch http://repo.or.cz/w/emacs.git/commitdiff_plain/c8bba48c5889c4773c62a10f7c3d4383881f11c1
curl -o xcode_2.patch https://raw.github.com/gist/1098107
curl -o fullscreen.patch https://raw.github.com/gist/1012927
curl -o lion.patch https://raw.github.com/gist/1101856
svn co http://svn.sourceforge.jp/svnroot/macemacsjp/inline_patch/trunk inline_patch-svn

ここからパッチを当てていきます。

cd emacs-23.3
patch -p1 < ../xcode_1.patch
patch -p1 < ../xcode_2.patch
patch -p1 < ../fullscreen.patch
patch -p1 < ../lion.patch
patch -p1 < ../inline_patch-svn/emacs-inline.patch
patch -p0 < ../inline_patch-svn/emacs-inline.patch
patch -p0 < ../inline_patch-svn/font.patch

これでOS X Lionのフルスクリーンモードに対応し、また日本語インライン入力に対応した64bitネイティブ版Cocoa Emacsをビルドできます。 あとは以下のコマンドを実行。

./configure –with-ns –without-x
make bootstrap
make install

“nextstep”ディレクトリ内に”Emacs.app”というファイルが生成されているのでこいつをMacのApplicationフォルダに放り込んでやります。

Emacsは.emacs(.emacs.d/init.el)に設定を記述していきますが、以下の4行を追記してやります。 パッチファイルを読んだ限りだとATOKはVer.22まではデフォルトで対応しているようですが、私が使用しているATOK定額制でインストールされたATOK24ではこの記述が必要でした。

#ATOK24.0の場合
#「*scratch*」バッファでIMを有効化した状態で「(mac-get-current-input-source)」を評価(C-j)で分かる
(setq default-input-method "MacOSX")
(mac-set-input-method-parameter "com.justsystems.inputmethod.atok24.Japanese" `title "漢")
(mac-set-input-method-parameter "com.justsystems.inputmethod.atok24.Japanese" `cursor-type 'box)
(mac-set-input-method-parameter "com.justsystems.inputmethod.atok24.Japanese" `cursor-color "magenta")

#Google IMEの場合
(setq default-input-method "MacOSX")
(mac-set-input-method-parameter "com.google.inputmethod.Japanese.base" `title "漢")
(mac-set-input-method-parameter "com.google.inputmethod.Japanese.base" `cursor-type `box)
(mac-set-input-method-parameter "com.google.inputmethod.Japanese.base" `cursor-color "magenta")

「(setq default-input-method “MacOSX”)」については設定ファイルの記述内容によると思いますが、私の場合はinit.elの最後に記述しないと有効になりませんでした。 恐らく何かの設定と干渉しているんだと思いますが…

これでEmacsを起動してやれば右上にフルスクリーンにするアイコンが出てきます。 また、IMEを切り替えるとモードラインの一番左にIMEの状態が表示されるようになります。

  • 日本語入力時

日本語入力時

  • 英数入力時

英数入力時


Profile picture of sakama

Written by sakama Data engineer who lives and works in Tokyo for successful data analytics You can follow me on Twitter

© 2022, sakama.dev - Built with Gatsby

Author

Profile picture of sakama

Written by sakama Data engineer who lives and works in Tokyo for successful data analytics You can follow me on Twitter

Socials

github.com/sakama

Recent Posts

Categories

Tags