EmacsのDesktopを初めてまともに使う

以前 Twitter の timeline で M-x desktop-clear という文字を見かけて、何も考えずにそれを実行して痛い目にあったことがあるんだけど、そのうち

なんと打って痛い目にあったのか忘れてしまった。

うーん。忘却力の向上めざましい。

ということでそれっぽいものをログから必死に検索して見つけたのが 9/1 で、何を実行したのかもう一度書くと

M-x desktop-clear

だった。これは Emacs の持っている全 buffer をクリアしてしまうものなんだけど、desktop っていう言葉はなかなか出てこないなぁ。

Desktop ってなに

なんていうか Eclipse なんかだと Workspace とかそういう言葉になるのかな。まぁいろんなファイルをどういう風に開いているかなど、「Emacs のまさに今の状態」を表すものが Desktop らしい。調べると CentOS 5 の Emacs 21 にもあるので、今使われている多くの Emacs で標準的に使えるものと考えてよいみたい。

できること

もちろん

M-x desk<TAB>

とか打つと補完されるので分かるんだけど、Emacs 21 でも使える

desktop-clear
全bufferクリア
desktop-read
save した desktop を読み込む
desktop-remove
save しておいた desktop ファイルを削除
desktop-save
desktop を保存する

程度が分かればとりあえず十分かなと思う。

カスタマイズしないで全部手動でやることにした

Desktop はもちろん

M-x customize-group

して

desktop

でカスタマイズできる。

Emacs 終了時に自動的に desktop-save して起動時に自動的に desktop-read すると、いわゆるプロジェクト管理機能付きのエディタや IDE の Workspace 復元機能として使えるんだけど、個人的には

ViewSourceWith

を使って Firefox の textarea や Thunderbird のメールを書くときにも Emacs を使っているので、こういう機能が自動で走るととても邪魔くさいことが分かった。何も設定せずに本当に必要なときにだけ desktop-save & desktop-read を使う方針にしてみた。

More