Fzf: Difference between revisions
Appearance
	
	
imported>Dmarcoux  Add commands to source completion functions for bash and zsh  | 
				imported>Jiehong  Add example to search all packages  | 
				||
| Line 36: | Line 36: | ||
   fzf_key_bindings  |    fzf_key_bindings  | ||
end  | end  | ||
</syntaxhighlight>  | |||
= Examples =  | |||
== Search all nix packages ==  | |||
You can interactively search the list of available packages with:  | |||
<syntaxhighlight lang="bash">  | |||
nix-env -qa | fzf  | |||
</syntaxhighlight>  | </syntaxhighlight>  | ||
Revision as of 21:19, 5 February 2021
fzf is a general-purpose command-line fuzzy finder.
Shell extensions
fzf provides additional key bindings (CTRL-T, CTRL-R, and ALT-C) for shells
First install fzf in your profile, then use one of the following methods:
bash
To enable fzf in bash add the following line to .bashrc
if command -v fzf-share >/dev/null; then
  source "$(fzf-share)/key-bindings.bash"
  source "$(fzf-share)/completion.bash"
fi
zsh
To enable fzf in zsh add the following line to .zshrc
if [ -n "${commands[fzf-share]}" ]; then
  source "$(fzf-share)/key-bindings.zsh"
  source "$(fzf-share)/completion.zsh"
fi
fish
To enable fzf in fish, add the following to $HOME/.config/fish/functions/fish_user_key_bindings.fish
function fish_user_key_bindings
  if command -s fzf-share >/dev/null
    source (fzf-share)/key-bindings.fish
  end
  fzf_key_bindings
end
Examples
Search all nix packages
You can interactively search the list of available packages with:
nix-env -qa | fzf