flimenu 20160821.1330(in MELPA)
Flatten imenu automatically

概要

Emacsには標準機能でM-x imenuという簡易関数・変数定義ジャンプ機能が備わっています。
現在のファイルに限定されるものの、タグジャンプとは違いタグファイルなしでお手軽に定義に移動できます。
お手軽に定義へジャンプするパッケージといえばdumb-jump(レビュー) がありますが、外部プログラムに頼らない場合ならimenuも手軽でいいものです。

ところが、imenuは階層構造になっているため、候補選択まで時間がかかってしまう欠点があります。
そこで flimenu.el はimenuのインデックスを平滑化(FLatten)します。

相異点をわかりやすくするため、idomenuによりido化したimenuで比較してみます。

20160822043510.png
Fig1: 平滑化されていない

20160822043519.png
Fig2: 平滑化されている

なお、helmユーザならばM-x helm-imenuを使えば平滑化されたimenuが使えます。
idoでもimenus.el(レビュー)によって平滑化されています。

インストール

パッケージシステムを初めて使う人は
以下の設定を ~/.emacs.d/init.el の
先頭に加えてください。

(package-initialize)
(setq package-archives
      '(("gnu" . "http://elpa.gnu.org/packages/")
        ("melpa" . "http://melpa.org/packages/")
        ("org" . "http://orgmode.org/elpa/")))

初めてflimenuを使う方は
以下のコマンドを実行します。

M-x package-install flimenu

アップグレードする方は、
以下のコマンドでアップグレードしてください。
そのためにはpackage-utilsパッケージが必要です。

M-x package-install package-utils (初めてアップグレードする場合のみ)
M-x package-utils-upgrade-by-name flimenu

本日もお読みいただき、ありがとうございました。参考になれば嬉しいです。