Unite是什麼?git
Unite能夠在一個項目中快速瀏覽文件。可是它不只限於文件,其餘任何能夠列出的東西均可以很好的被顯示和搜索。這個開放式的特性極可能是人們找到它的緣由(原文:This open-ended nature is probably what people find confusing about it.)github
Unite不侷限於搜索文件或者緩衝區--它能夠很容易的處理文件和緩衝區,甚至更多。其餘Vim插件的做者能夠經過Unite提供的API擴展它,以用來支持其餘數據源。vim
用法spa
Unite命令採用的格式爲:Unite source,其中"source"是buffer,file和file_rec其中之一。插件
當一個命令被使用,一個新的水平分割窗口會被打開。好比,命令:Unite file將會顯示當前目錄的文件列表。在這個窗口中,標準的Vim命令模式下的命令可使用--你可使用「j」和「k」瀏覽該列表,可使用「/」來查詢。若是你在一個文件上按下enter鍵,Unite將會打開它。若是光標是在一個目錄上,Unite將會進入該目錄,而且更新該文件列表。code
模式blog
若是你在Unite窗口進入插入模式,光標將會移到該窗口的最上方,並顯示「>」提示符。輸入字符會搜索該列表--這裏和FuzzyFinder類似。和常規vim同樣,按<ESC>鍵能夠退出插入模式回到命令模式。遞歸
命令模式和插入模式都有相應的快捷鍵映射。好比在命令模式下,當光標在一個文件上,按下a,Unite會顯示一個能夠操做該文件命令的列表。這個命令列表被稱爲actions,這個列表能夠像Unite其餘部分同樣被搜索和調用。rem
actions能夠組合通配符。若是輸入:Unite file, 而後按下*將會標記全部文件,再輸入a將會列出全部actions,最後選擇above,Unite將會打開全部被標記的文件。get
其餘特性
Unite也支持其餘操做和瀏覽文件的方式,好比, :UniteBookmarkAdd會添加一個文件到書籤列表中。書籤經過:Unite bookmark來搜索和操做。
Unite沒有附帶任何映射鍵,可是你能夠很容易的添加。下面的設置會調用:Unite file 當按下「<Leader>f」:
nnoremap f :Unite file ==> 應該是 nnoremap <leader>f :Unite file
若是你僅僅只是想讓Unite的功能和ctrlp.vim或者FuzzyFinder類似,這樣你能夠經過下面的映射鍵來實現:
nnoremap f :Unite -start-insert file ==> 應該是 nnoremap <leader>f :Unite -start-insert file
Unite可使用選項參數,好比,「-start-insert」會引發Unite打開提示窗口,在該窗口輸入將會引發Unite搜索文件。
在VIM裏,若是你不肯定<Leader>是那個鍵,能夠經過":help <Leader>"來查看。它通常是命名空間的快捷鍵,因此你應該輸入「\f」來調用上面的例子。
結論
但願該篇文章說明白了Unite的主要特性,我以爲Unite是個很是有趣和經常使用的vim插件--它沒有試着去模仿GUI IDEs,可是工做方式和vim保持一致。我不肯定我是否喜歡命令模式和插入模式相似的使用方式,可是確定會感受到很天然在使用Unite一段時間後。
原文地址:http://usevim.com/2013/06/19/unite/
能夠參考:https://github.com/Shougo/unite.vim
http://bling.github.io/blog/2013/06/02/unite-dot-vim-the-plugin-you-didnt-know-you-need/