In the last few days I read a lot about fzf and how it allows the user to fuzzy-find everything. Even though all those fancy blog posts stir my geeky side, I decided to bring some attention to peco and how I superpower my linux setup with this handy tool.
What is peco?
Peco is a simple
Go executable that can be downloaded from the offical releases page at
https://github.com/peco/peco/releases and dropped in the
Let’s define a custom keybinding for the shell using
peco to search my command history. I’m a big fan of
fish and the following snippet defines a custom keybinding on Ctrl-r:
function fish_user_key_bindings bind \cr 'peco_select_history (commandline -b)' end
peco_select_history is defined as follows:
function peco_select_history if test (count $argv) = 0 set peco_flags --layout=bottom-up else set peco_flags --layout=top-down --query "$argv" end history|peco $peco_flags|read foo if [ $foo ] commandline $foo else commandline '' end end
Now whenever I press Ctrl-r, I have a lightning fast, super easy to use and powerful search for my shell.
Update: The video is a bit too big for my blog layout. Just watch it in fullscreen to see me switching between search modes.