fzf by ruby
1 github地址
2 简介
软件通过匿名管道和grep扩展了bash的功能,将bash的自动补全功能由渐进式增量补全增强为正则表达式 搜索式补全,并配以图形选择界面.当然,正则表达式的功能有所削减但也丝毫不影响使用.
3 使用
可以在bash下利用特殊触发字符,或在vim中通过命令FZF使用,也可以用在shell脚本中(fzf::run)
3.1 vim插件配置
- 将fzf的根目录加入到vim的运行时库文件夹变量中
- 在命令中使用FZF 或FZF目录就可以
3.2 一般用法
- 使用选项-x指定使用扩展匹配模式,可以使用简单的模式匹配
^match match$ ‘match !‘match !match match在开头 match在结尾 包含match 不包含match 不匹配 - 使用
-m
选项可以使用多行同时选中模式,可以使用tab或S-tab
键选中多个匹配项 - 目录及目录名补全
1: vim **<TAB> 2: vim ../**<TAB> 3: vim /usr/bin**<TAB>
- 进程号补全
1: kill -9 <TAB>
- 主机和环境变量补全
1: ssh **<TAB> 2: telnet **<TAB> 3: unset **<TAB> 4: export **<TAB> 5: unalias **<TAB>
3.3 脚本用法
1: #使用函数fzf#run([options])来 2: #返回一个选中文件的列表 3: # echo fzf#run()
4 BUGS
- ruby2.1使用1.8的gem软件所以安装好curse仍然提示
找不到curse,最后只能手动修改了fzf可执行文件中的
命令参数.由于这个原因在vim中使用的话需要在fzf.vim中
修改相关参数,如果要使用
C-T
还需要在.fzf.bash中修改 相关的参数 - 在vim中使用FZF命令时,会导致vim死循环