Vim插件之command-t

使用幾天之後更新一下:command-t的速度確實非常不錯,但文件搜索的匹配結果不如ctrlp好,速度和準確率有時是挺矛盾的,現在又用回ctrlp了。
之前的文章Vim插件之ctrlp中曾經提到Vim下的模糊搜索工具ctrlp,ctrlp的優點是依賴少,其他插件對它的支持比較好,缺點一個是速度慢,這個可以通過讓ctrlp調用ag來提高搜索速度,但使用外部工具又會帶來一些副作用,使得ctrlp的部分功能失效。但近幾年來,同類插件中有一些新秀做得比較好,開發活躍,功能不斷豐富。下面主要介紹一下command-t
command-t這款插件開發的主要目的就是爲了提高搜索速度,底層運用了C語言,並結合並行搜索Watchman等各種優化,實際使用時相應速度相當不錯。command-t和ctrlp一樣支持搜索MRU,Buffer和Tags,並且還支持在新標籤頁和分屏窗口中打開。不足之處在於安裝配置複雜一些,首先需要Vim支持Ruby,其次它和YouCompleteMe一樣安裝完成以後還需要編譯一下才能使用,安裝完成使用<Leader>t觸發command-t時會有消息提示" Vim Command-T plugin error: could not load the C extension",這就是讓你到插件所在目錄編譯,具體方法如下:

$ sudo  aptitude install ruby-dev
$ cd ~/.vim/bundle/command-t
$ rake make

編譯完成以後,就能使用了,下面是搜索提示符下的快捷鍵,可以發現和終端下的快捷鍵是相同的

按鍵 功能
Ctrl-h 向左移動一個字符
Ctrl-l 向右移動一個字符
Ctrl-a 移動到行首
Ctrl-e 移動到行尾
Ctrl-u 清除提示符上的內容
Tab 切換到文件列表上

下面是在提示符或者文件列表下的快捷鍵

按鍵 功能
Enter 打開選中文件
Ctrl-C 在新的水平分割窗口中打開選中文件
Ctrl-s 同上
Ctrl-v 在新的豎直分割窗口打開選中文件
Ctrl-t 在新的標籤頁打開選中文件
Ctrl-f 清空緩存
Ctrl-q 在quickfix窗口中打開選中文件
Ctrl-c 退出文件列表

最後貼一下我的配置,默認情況下使用<Leader>t打開文件

"command-t
"<Leader>b瀏覽Buffer
nmap <Leader>b <Plug>(CommandTBuffer)
"<Leader>f顯示MRU文件
nmap <Leader>f <Plug>(CommandTMRU)
"搜索結果最大匹配數
let g:CommandTMaxHeight = 25
"搜索結果不區分大小寫
let g:CommandTIgnoreCase = 0
"搜索結果不按反向排序,即最匹配的位於最頂部
let g:CommandTMatchWindowReverse = 0
"開啓wildignore
let g:CommandTWildIgnore=&wildignore
"搜索結果匹配大小寫
"let g:CommandTSmartCase = 1
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章