この記事は obsolete です。
http://d.hatena.ne.jp/rubikitch/20100718/anything
をご覧下さい。
ずいぶん前からアレゲな方々の間で話題になっていた anything.el を
ようやく試すことができた。
Emacs は様々な局面で「補完」することができるが、anything.el を使う
と、この補完 IF をある程度統一出来る。
機能の概要
anything を実行すると、以下の候補一覧が anything バッファに作成さ
れる。
「現在開いているバッファ」
「今まで開いたファイルの履歴」
「カレントディレクトリのファイル」
「今まで実行したコマンド」
何か文字を打つと、そのパターンにマッチした候補に絞り込まれる。候補
を C-n, C-p, C-v, M-v で選択したり、C-s や C-r で候補自体を検索する
ことも可能。
インストール方法
以下のファイルをダウンロードして、load-path の通ったところにコピー
する。
http://www.emacswiki.org/cgi-bin/wiki/download/anything.el
http://www.emacswiki.org/cgi-bin/wiki/download/anything-config.el
私が設定したこと
~/.emacs に以下の設定をした。“C-x b” の switch-to-buffer を
anything で上書きし、次と前の機能一覧に、それぞれ C-M-n と C-M-p で
移動できるようにした。
(require 'anything-config)
(define-key ctl-x-map (kbd "b") 'anything)
(define-key anything-map (kbd "C-M-n") 'anything-next-source)
(define-key anything-map (kbd "C-M-p") 'anything-previous-source)
以上の設定を行うと、“C-x b” で anything を使える。
補足
anything-sources を自分で設定することで、候補一覧をカスタマイズでき
る。ドキュメントはないようなので、インストールした *.el を直接見る
とよいと思う。
感想
拙作の cdutil.el
を使っているためか、それほど便利に感じなかった。
cdutil は自分で登録したファイルやディレクトリと、シェルの “cd …”
というエイリアスから補完候補を作成する elisp なんだけど、anything
から使えるようにすると面白いかも?と思った。
参考にしたページ
http://www.ftnk.jp/~fumi/cl/2009-05-28-2.html
http://dev.ariel-networks.com/Members/matsuyama/open-anything-emacs
http://yamashita.dyndns.org/blog/anythingel/
追記(2009-06-11):
“C-x b” を潰すのは自分には合わなかったようです。“C-x ;” に変更しま
した。anything.el は使わなくなる予感。。。