参考:jacktasia/dumb-jump - GitHub


先日imguiの記事を書くときにdumb-jump-modeというタグジャンプツールを使って重宝したのでメモしておく。

対応言語もなかなかのもので現時点では

  • Bash
  • C/C++
  • C#
  • Clojure
  • CoffeeScript
  • Coq
  • Elixir
  • Emacs Lisp
  • Erlang
  • Faust
  • Fortran
  • Go
  • Haskell
  • Java
  • JavaScript
  • Julia
  • Lua
  • Objective-C
  • OCaml
  • Perl
  • PHP
  • Python
  • R
  • Ruby
  • Rust
  • Scala
  • Swift

となっている。

インストールなど詳細は参考サイトを見ればいいので最小限のことだけ記す。

使い方はC-M-g(ジャンプ)とC-M-p(戻る)を覚えておけばとりあえず使える。

インターフェースはデフォルトではpopupなので変更したければdumb-jump-selectorという変数に好みのインターフェースを設定する。現時点で選択肢はpopup,ivy,helmの3つ。

自分は

(setf dumb-jump-selector 'helm)

としている。

何もしないと検索対象が広すぎてイライラするかもしれないので.dumbjumpというファイルをプロジェクトのルートディレクトリに作って検索対象を追加したければ各行に+の後に続けてパスを記述する。検索対象から外したければ-の後にそのパスを記述する。

例えば

+path/to/dir
-build
-test

のようにする。

タグファイルの更新の手間がいらないので便利だと思う。あとgrepだと遅いのでagはインストールしたほうが良い。