Emacsでのバッファの切り替えはanythingが便利

湘南高校の友達のかっちゃんから「Emacsのバッファの切り替えのときのC-x C-bって不便だよね.良いのない?」と聞かれたのでブログで答えるよ.

答え : anything.el

僕はバッファを切り替えるときにはanythingを使っています.

僕は下の設定をしてるのでCommand+fでanythingが起動します.
例えば*scratch*バッファを開きたいときは

  • Command+f (これでanything起動)
  • scまで入力 (これで*scratch*バッファが光る) *1
  • Enter (これでそれまでいたバッファに*scratch*バッファが表れる

これでok.このとき打たれたキー入力はわずか4回.

画像にすると

Command+f

左側のウィンドウにフォーカスがある状態でanything起動


左下のpatternにはまだ何も入力されてない.

scまで入力

そこで*scratchの一部であるscという文字列を入力すると,左下にscが入力されて,右上ではバッファの中の*scratch*が選択されてる




このあとにEnterで左側のウィンドウに*scratch*バッファがロードされる.

anything.elのインストール方法

巷で話題の anything.el を使ってみた — ありえるえりあがわかりやすいと思う.

僕のanything.elの設定

いろいろあるけど結局bufferの切り替えにしか使ってない罠.

dotfiles/init-anything.el at master · suztomo/dotfiles · GitHub

c-source-file-name-historyはどこかで設定しないとEmacs終了時に履歴が空になるぽい.

おまけ: anythingに出会う前

  • C-x b で switch buffer
  • 文字を入力する前にTABを押して候補を表示
  • もってきたいバッファの先頭の数文字を入力してTAB
  • 補完されたらEnter

バッファ間移動がないので,C-x C-bよりはずっと早いと思う.

*1:ここでアスタリスクを入力しなくてもいいのがanythingのミソ