fzf 的介绍看这篇文章,这篇文章主要总结一下 Fzf 在 vim 下面的使用。

安装过程就不再说,安装后 :help fzf 可以查看所有帮助。

fzf-vim 安装之后, :FZF 命令会被添加。

" 在当前目录搜索"
:FZF
" 在 home 目录搜索"
:FZF ~
" fzf 全屏"
:FZF!

插件配置

常用的配置 :help 中都能看到。

" An action can be a reference to a function that processes selected lines
function! s:build_quickfix_list(lines)
  call setqflist(map(copy(a:lines), '{ "filename": v:val }'))
  copen
  cc
endfunction

let g:fzf_action = {
  \ 'ctrl-q': function('s:build_quickfix_list'),
  \ 'ctrl-t': 'tab split',
  \ 'ctrl-x': 'split',
  \ 'ctrl-v': 'vsplit' }

" Default fzf layout
" - down / up / left / right
let g:fzf_layout = { 'down': '~40%' }

let g:fzf_history_dir = '~/.local/share/fzf-history'

Usage

常用命令

在当前目录下查找

Files  :FZF

和 ctrip.vim 类似,使用回车, Ctrl-T, Ctrl-X 或者 Ctrl-V 可以分别在当前窗口,标签页,水平分隔或者垂直分隔窗口中打开。

FZF_DEFAULT_COMMANDFZF_DEFAULT_OPTS 环境变量也会被使用。

Vim 内部 Buffers, Windows 查找

跳转到 Buffer 内的某一行

:Lines

或者是当前 Buffer 内的行

:BLines

查找 Buffers

:Buffers

查找 Windows:

:Windows

查找可用的命令

:Commands

Normal Mode Mappings

:Maps

reference