让人相见恨晚的vim插件:模糊查找神器LeaderF

提到vim的模糊查找插件,很多人第一反应是ctrlp.vim,ctrlp知名度很高,但跟其它的同类插件相比,它的唯一优点是用vimL编写(这让它的性能是所有同类插件中最差的)。本文向大家推荐一款模糊查找插件——LeaderF,无论是从性能还是匹配精度上,都远远超越ctrlp。

LeaderF是什么?

LeaderF是一个用Python写的vim插件,可以在成千上万数十万个文件中,通过模糊查找的方式,快速找到目标文件。它还有很多衍生功能:快速打开或定位某个buffer、最近使用的文件(mru)、tags(包括函数、类、变量等)、命令历史、文件中的某一行、vim的help、marks等等。

查找文件

文件查找是vimer的常用操作,海量文件中快速定位目标文件是很多vimer迫切需要的功能,所以就有了ctrlp这样的插件。但ctrlp性能不佳,而且有时候把目标文件名都输入进搜索栏还是找不到目标文件,最大的问题是它的模糊匹配算法不佳,经常排在前面的跟所要找的相去甚远。LeaderF采用异步检索和精心设计的模糊匹配算法完美地解决了这些问题,当你在根目录(/)按下搜索命令,再也没有想剁手的冲动了; 查找文件时,用更少的键击次数就可以找到目标文件, 延长你的键盘使用寿命 :)

  • 异步检索

    异步检索
  • 模糊查找

    模糊查找
  • 正则表达式查找

    正则
  • 多字节字符查找(中文查找)

    中文

快速定位tags(包括函数、类、变量等)

有了它,tagbar可以淘汰掉了:

tags

查找历史命令

History

切换Colorscheme

Colorscheme

当然还有其他功能就不一一展示了,感兴趣的小伙伴可以查看这里

你不知道的细节

  • 智能大小写(smartcase)

如果输入的搜索字符都是小写字母,则匹配是大小写不敏感的;如果输入大写字母,则只匹配大写字母,小写字母仍然是大小写不敏感的。例如,输入abcDef,可以匹配如下字符串:

abcDef
AbcDef
abcDEf
aBcDeF

但不能匹配:

abcdef
Abcdef

注意abcef仍然是大小写不敏感的
这样可以通过大写字母,在搜索过程中快速缩小搜索范围。

  • 同时打开多个文件

    同时打开多个文件
  • 细化搜索结果

    细化搜索结果

开箱即用

上面所有的功能都不需要额外的配置,只要装好LeaderF插件就可以使用了,不像有的插件,配置就像一门新的脚本语言。

最后

LeaderF还支持写扩展程序,这里是一个样例。

友情链接:LeaderF,也許是Vim最好的模糊查詢插件

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 常言道:工欲善其事,必先利其器 ,作为一个程序员,一个常用的工具就是编辑器,我选择一个能极大提高自己开发效率的编辑...
    Sam_Lau阅读 120,930评论 34 266
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,009评论 19 139
  • 这篇文章是手册的中文译版整理而来(英文看着太慢了,感谢前人铺路Orz...),vim的markdown插件和实时预...
    Himryang阅读 7,151评论 0 20
  • 宝贝,刚刚是不是你淘气啦?是不是在妈妈的肚子里翻跟斗呢?其实我也不知道你到底动没动,只是肚子有点点小疼,一会...
    小陈太阅读 190评论 0 0
  • 晚上是我和小盆友画画时间,小家伙今天不在状态,几笔就画完了。然后跑掉了! 他帮我画自行车,让我帮他画小动物,还说他...
    佈袋熊阅读 263评论 0 0