あいまい検索したい(fzf)
$ fzf
$ コマンド | fzf
$ history | fzf
$ ps aux | fzf
$ git log --oneline | fzf
fzfは、あいまい検索(fuzzy find)できるコマンドです。
ほとんどすべての入力に対して「あいまい検索」で候補を絞り込むことができます。
コマンドの実行結果をパイプで渡すことで、あいまい検索の対象にできます。
インストールしたい(fzf)
$ brew install fzf
$ fzf --version
0.74.3 (Homebrew)
fzfはHomebrewでインストールできます。
プレビュー表示したい(--preview)
$ fzf --preview 'cat {}'
$ fzf --preview 'bat --color=always {}'
--previewで、選択中の候補をプレビュー表示できます。
{}は、選択中の候補(ファイル名)に置き換わるプレースホルダーです。
複数選択したい(-m / --multi)
$ fzf -m
$ fzf --multi
--multi(-m)で、複数の候補を選択できるようになります。
Tabで選択・選択解除、
Enterで選択済みの候補すべてを確定します。
シェル設定したい
1$ fzf --fish | source
fishでは、上記をコマンドラインで実行するかconfig.fishに追記することで、
Ctrl-R(コマンド履歴のあいまい検索)や
Ctrl-T(ファイルパスの挿入)などのキーバインドが使えるようになります。
1# ~/.bashrc に追記
2eval "$(fzf --bash)"
3
4# ~/.zshrc に追記
5eval "$(fzf --zsh)"
bash/zshの場合は、それぞれの設定ファイルにevalを追記します。
Homebrewでインストールした場合は、$(brew --prefix)/opt/fzf/installを実行して
シェル統合スクリプトを自動生成することもできます。