Emacs: buffer-menu-direct-jump


ショートカット機能(ジャンプ機能)

2月に公開した buffer-menu-color.el ですが、初回起動時の最初だけうまくトグルせず R(R), R(R)... と連続してしまうバグが見つかったので直しました。
ちなみに今では S でキーボードからもソートができるようですね。

それだけでは何なので、ショートカット機能も追加しておきました。
行頭(C のカラム)にジャンプ用の1文字のラベルが表示されそのキーでバッファが開けます。

自分の場合 Buffer 選択には通常 ido を使い、buffer-menu を使うのはバッファの整理をするときなので、移動で使う場面はあまりないのですが、メニューを開いているときはそこからバッファを開くこともあるので、そんなときカーソル移動が面倒な場合が多々あるのでそれなりに使えます。

ダウンロード

ここからダウンロードし、
load-path の通ったディレクトリに置き、 init.el 等に以下の一文を追加します。

sample
(require 'buffer-menu-color)

使い方

buffer list が表示されているとき j を押すと行頭にズラっと青反転した文字が出るので、開きたいバッファの文字キーを押します。

文字が設定されていなかったり(後述)、画面に表われない文字を押すとこのモードから抜けます。
メニューが画面内に表示しきれていない場合は SPACEBS で画面がスクロールします。

設定できる変数

buffer-menu-direct-jump-table

ショートカットに使うキーが1文字列としてまとめてセットされています。
ここで設定した文字数よりバッファの数が多いと溢れた部分には対応しません。
大文字小文字は区別されます。

buffer-menu-direct-jump-face

face が指定できます。

buffer-menu-direct-jump-function

実行する関数の設定です。ラベル行に移動してから実行される関数なので、'ignore にしておくとカソール移動のみにできます。

buffer-menu-direct-jump-scroll-keys

スクロールするキーが設定されています。

動作確認している Emacs のバージョン

GNU Emacs 25.3.1 (i686-w64-mingw32)
of 2017-09-18"