资料

安装、配置

MAC 上使用 Brew 安装

 brew install fzf

升级

brew update
brew upgrade fzf

Shell 集成

zsh

# Set up fzf key bindings and fuzzy completion
source <(fzf --zsh)

bash

# Set up fzf key bindings and fuzzy completion
eval "$(fzf --bash)"

fish

# Set up fzf key bindings
fzf --fish | source

快捷键

  • CTRL-KCTRL-J(或CTRL-PCTRL-N)上下移动光标
  • Enter键选择项目,CTRL-CCTRL-G/ESC退出
  • 在多选模式 ( -m) 下,TAB标记Shift-TAB多个项目
  • Emacs 风格的键绑定
  • 鼠标:滚动、单击、双击;多选模式下按住 Shift 键单击和 Shift 键滚动

默认命令(不同终端可能会存在冲突)

命令

显示模式

--height 将设置 fzf 的显示方式

fzf --height=40% --layout=reverse
fzf --height=40% --layout=reverse --info=inline
fzf --height=40% --layout=reverse --info=inline --border
fzf --height=40% --layout=reverse --info=inline --border --margin=1
fzf --height=40% --layout=reverse --info=inline --border --margin=1 --padding=1

模糊完备

  • vim **<TAB>
  • cd ** <TAB>
  • ssh ** <TAB> 远程连接
  • kill -9 **<TAB> 杀死进程
  • unset **<TAB>
  • export **<TAB>
  • unalias **<TAB>

预览

fzf --preview 'cat {}'

管道

ps -ef | fzf
seq 100 | fzf
history | fzf
cat /etc/hosts | fzf

Vim

vim $(fzf)
nvim $(fzf)
 

组合

vim $(find . -type f | fzf)

默认查询参数

vim $(find . -type f | fzf --query "mouseless")