2011年3月17日

HomebrewでEmacs23.3+フルスクリーン


以前、同じようなネタを紹介したが、今回Emacsを23.3にあげて、フルスクリーン環境を整備した。
あのときは、Emacsのバージョンが23.2だっただけではなく、なぜかフルスクリーンにならなかった。

今回はHomebrewを使ってEmacsをインストールし、無事darkroom-modeを動かすことに成功した。インラインパッチもちゃんと動いている。

パッチのところを、ここあたりを参考に、

def patches
{:p1 => [ "http://cloud.github.com/downloads/typester/emacs/feature-fullscreen.patch"],
:p0 => [ "http://jaist.dl.sourceforge.jp/macemacsjp/47986/inline_patch-23.2-beta3.tar.gz"]} if ARGV.include? "--cocoa"
end

として、

brew install emacs --cocoa

とするだけだ。

ちょっとはまったのは、fullscreenパッチのダウンロードURLが変わっていたのか、僕がいじっているうちに変えてしまったのか、先ほどのcola-zeroさんのサイトどおりの
http://github.com/downloads/typester/emacs/featureーfullscreen.patchはだめで、http://cloud.github.com/downloads/typester/emacs/feature-fullscreen.patchでないと動かない。

あとは、darkroom-mode.elだが、こちらは以下のように、Windows用のw32なんとかと書かれているコードを削除して、(ns-toggle-fullscreen)とすればよい。


; (w32-fullscreen-off)
(ns-toggle-fullscreen)

init.elには、こんな感じがいいかもしれない。

;; Darkroom-mode
(require 'darkroom-mode)
(global-set-key [f10] 'darkroom-mode)


typester氏のフルスクリーンは、OSXのツールバーも覆ってくれるので、これを使ってdarkroom-modeに切り替えると、ほんとうにEmacsの一フレームだけになる。
液晶パネル全体のスクリーンショットは右上のような感じ。
ウィンドウの横でちらちらとFireboxのページがのぞいていたり、Mailの未読数が増えていたりすると、仕事に集中できない。
そんなときは、F10をぽんと押してこのモードに切り替えてしまえば、ほんとうに執筆に集中できる。

そうそう、執筆に集中といえば、次の二つもinit.elに追加しておくとずいぶん使い勝手があがる。

(mac-add-key-passed-to-system 'shift)
(add-hook 'minibuffer-setup-hook 'mac-change-language-to-us)

前者は、記号を入力するときに、デフォルトだと半角の記号が直接入力されてしまう問題を回避してくれる。
後者は、日本語入力をしていても、ミニバッファに入ると英語モードに切り替えてくれる。
どちらも、ちょっとした「いらっ」を解決してくれる設定だ。