Hatena::ブログ(Diary)

ndkすごい RSSフィード

2010-02-19

imenuをつかった簡単OCaml on Emacs関数ジャンプレシピ

imenu.elで、関数定義にジャンプ - Happy OCaml!! - ocaml-nagoyaグループ

imenu.el の使い方と応用 — ありえるえりあ

巷で話題の anything.el を使ってみた — ありえるえりあ

2007-07-25 - http://rubikitch.com/に移転しました

参考文献の先が詳しいですが…。

とにかくEmacs詳しくないけどOCaml関数定義をジャンプさせたいだけなんだ!っていう人はこうしてくださいな。

  1. imenu

imenuは多分最初から入ってるのでok.

  1. tuareg-imenu

tuareg-imenu(http://caml.inria.fr/cgi-bin/hump.en.cgi?contrib=76)をダウンロードしてload-pathのところに配置。

.emacsには

;tuareg-imenu

(autoload 'tuareg-imenu-set-imenu "tuareg-imenu" "Configuration of imenu for tuareg" t)

(add-hook 'tuareg-mode-hook 'tuareg-imenu-set-imenu)

を追記。

  1. anything

anythingは

http://www.emacswiki.org/cgi-bin/wiki/download/anything.el

http://www.emacswiki.org/cgi-bin/wiki/download/anything-config.el

からダウンロードして配置。emacs-lispのバイトコンパイルをしてね!

.emacsには

;anything

(require 'anything-config)

(setq anything-sources (list anything-c-source-buffers

anything-c-source-bookmarks

anything-c-source-imenu

;;anything-c-source-recentf

anything-c-source-file-name-history

anything-c-source-locate

anything-c-source-complex-command-history)

)

(global-set-key "\C-f" 'anything)

を追記。

ちなみにanythingの呼び出しは

(global-set-key "\C-f" 'anything)

のようにC-fに割り当ててある(C-fで移動とかしない人なのでつぶしましちゃいました)。自由に変更してくださいな。

anything-c-source-imenuっていうのがimenuをanythingのsource(検索対象)に入れる関数。これを登録してある。

これもうこのままで動くはず。

Meadowだとなぜかanythingにimenuが表示されるときとされないときがある。

どうも開いたら一回M-x imenuで何か関数にジャンプしないといけないみたいだ。ちょっと面倒だけど、あまりある便利さの前にこのぐらいなんでもないっすよ!

ちなみにimenuっていうのは

関数の名前っぽいものを全体からスキャンしてストアしといててくれる。入力した関数名のところに一発ジャンプ、という優れものelisp

anythingっていうのは要は自動補完。でも何から何まで全部自動補完の対象になるとても便利なelisp。これの自動補完の対象にimenuの候補を加えればリストから選んで関数にジャンプできる(インクリメンタルサーチも出来る)。便利すぎる。

f:id:euphonictechnologies:20100219230020p:image

スパム対策のためのダミーです。もし見えても何も入力しないでください
ゲスト


画像認証

トラックバック - http://d.hatena.ne.jp/euphonictechnologies/20100219/1266587291
リンク元