摘要:是什么是一個(gè)用寫的插件,可以在成千上萬(wàn)數(shù)十萬(wàn)個(gè)文件中,通過(guò)模糊查找的方式,快速找到目標(biāo)文件。它還有很多衍生功能快速打開或定位某個(gè)最近使用的文件包括函數(shù)類變量等命令歷史文件中的某一行的等等。友情鏈接,也許是最好的模糊查詢插件
提到vim的模糊查找插件,很多人第一反應(yīng)是ctrlp.vim,ctrlp知名度很高,但跟其它的同類插件相比,它的唯一優(yōu)點(diǎn)是用vimL編寫(這讓它的性能是所有同類插件中最差的)。本文向大家推薦一款模糊查找插件——LeaderF,無(wú)論是從性能還是匹配精度上,都遠(yuǎn)遠(yuǎn)超越ctrlp。
LeaderF是什么?LeaderF是一個(gè)用Python寫的vim插件,可以在成千上萬(wàn)數(shù)十萬(wàn)個(gè)文件中,通過(guò)模糊查找的方式,快速找到目標(biāo)文件。它還有很多衍生功能:快速打開或定位某個(gè)buffer、最近使用的文件(mru)、tags(包括函數(shù)、類、變量等)、命令歷史、文件中的某一行、vim的help、marks等等。
查找文件文件查找是vimer的常用操作,海量文件中快速定位目標(biāo)文件是很多vimer迫切需要的功能,所以就有了ctrlp這樣的插件。但ctrlp性能不佳,而且有時(shí)候把目標(biāo)文件名都輸入進(jìn)搜索欄還是找不到目標(biāo)文件,最大的問(wèn)題是它的模糊匹配算法不佳,經(jīng)常排在前面的跟所要找的相去甚遠(yuǎn)。LeaderF采用異步檢索和精心設(shè)計(jì)的模糊匹配算法完美地解決了這些問(wèn)題,當(dāng)你在根目錄(/)按下搜索命令,再也沒有想剁手的沖動(dòng)了; 查找文件時(shí),用更少的鍵擊次數(shù)就可以找到目標(biāo)文件, 延長(zhǎng)你的鍵盤使用壽命 :)
異步檢索
模糊查找
正則表達(dá)式查找
多字節(jié)字符查找(中文查找)
快速定位tags(包括函數(shù)、類、變量等)有了它,tagbar可以淘汰掉了:
查找歷史命令 切換Colorscheme當(dāng)然還有其他功能就不一一展示了,感興趣的小伙伴可以查看這里。
你不知道的細(xì)節(jié)
智能大小寫(smartcase)
如果輸入的搜索字符都是小寫字母,則匹配是大小寫不敏感的;如果輸入大寫字母,則只匹配大寫字母,小寫字母仍然是大小寫不敏感的。例如,輸入abcDef,可以匹配如下字符串:
abcDef AbcDef abcDEf aBcDeF
但不能匹配:
abcdef Abcdef
注意:abc和ef仍然是大小寫不敏感的
這樣可以通過(guò)大寫字母,在搜索過(guò)程中快速縮小搜索范圍。
同時(shí)打開多個(gè)文件
細(xì)化搜索結(jié)果
開箱即用上面所有的功能都不需要額外的配置,只要裝好LeaderF插件就可以使用了,不像有的插件,配置就像一門新的腳本語(yǔ)言。
最后LeaderF還支持寫擴(kuò)展程序,這里是一個(gè)樣例。
友情鏈接:LeaderF,也許是Vim最好的模糊查詢插件
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://www.ezyhdfw.cn/yun/24962.html
摘要:前言上一篇文章讓人相見恨晚的插件模糊查找神器概括性的介紹了的基本功能,本篇對(duì)的新功能做一下介紹??崭穹指舻拿總€(gè)子串都是對(duì)整個(gè)字符串的模糊匹配,而不是精確匹配。 前言 上一篇文章《讓人相見恨晚的vim插件:模糊查找神器LeaderF》概括性的介紹了LeaderF的基本功能,本篇對(duì)LeaderF的新功能做一下介紹。 統(tǒng)一的命令接口 隨著LeaderF功能的不斷增多,LeaderF的命令也在...
摘要:也就是,是一個(gè)非常強(qiáng)大的源碼符號(hào)索引工具。韋大的中符號(hào)索引篇對(duì)有比較詳細(xì)的介紹,本文再做一些補(bǔ)充。的最新版本已經(jīng)是,該版本了韋大文中提到的下面文件名大小寫的。 Gtags Gtags也就是GNU GLOBAL,是一個(gè)非常強(qiáng)大的源碼符號(hào)索引工具。它通過(guò)建立索引數(shù)據(jù)庫(kù),不但可以查找函數(shù)的定義,還可以查找函數(shù)的所有引用(被調(diào)用的地方);而且它還可以增量地更新索引數(shù)據(jù)庫(kù),當(dāng)代碼有所改變時(shí),它可...
摘要:比如下表是它可用的所有選項(xiàng)是一個(gè)函數(shù),用來(lái)創(chuàng)建自己的自動(dòng)補(bǔ)全功能。如果第一個(gè)參數(shù)是一個(gè)命令字符或一個(gè)那么它會(huì)被用作對(duì)于高級(jí)用戶,可以傳入一個(gè)字典選項(xiàng)。希望大家可以結(jié)合創(chuàng)造出更多的使用方法。 FZF and VIM 前言 fzf本身并不是一個(gè)vim 插件,本來(lái)作者只提供了基本的wrapper函數(shù)(比如fzf#run). 但后來(lái)作者發(fā)現(xiàn)很多人并不熟悉VIMScript, 所以就創(chuàng)建一個(gè)默認(rèn)...
閱讀 3615·2021-09-08 10:46
閱讀 1237·2019-08-30 13:17
閱讀 2425·2019-08-30 13:05
閱讀 1253·2019-08-29 15:29
閱讀 2934·2019-08-29 11:31
閱讀 586·2019-08-26 12:13
閱讀 1604·2019-08-26 11:42
閱讀 1974·2019-08-23 18:37