2016-07-15 54 views
9

有幾件事我還不瞭解VIM的方式。如何使用VIM在我的項目的所有文件中搜索?

其中之一是在項目尋找像這樣(在使用的Atom VIM):

enter image description here

我用CtrlP當前文件名,但什麼內容?

如何使用字符串進行搜索,然後使用VIM和/或VIM插件查看所有出現的列表?

+2

安裝[ACK](http://beyondgrep.com/)和/或[AG](http://geoff.greer.fm/ag/),並使用[CtrlSF]( https://github.com/dyng/ctrlsf.vim)插件。你不會回頭。 –

回答

12

我找到一個更好的解決方案是:FZF

它只是通過一切搜索項目中的異步使用:Ag命令。

enter image description here

+0

注意:這還需要安裝silver_searcher以及https://github.com/ggreer/the_silver_searcher –

6

使用:grep:vimgrep來搜索文件內容。結果被放到「位置列表」中,您可以通過輸入:cw輸入打開。

語法:grep是,默認情況下,同爲grep(1)命令:

:grep 'my pattern.*' /path/to/dir 

默認情況下,它會搜索當前目錄(:pwd)。

:grep:vimgrep之間的主要區別是,:vimgrep:vim的簡稱)使用的Vim兼容的正則表達式,而:grep使用任何正則表達式的&grepprg用途。

您可以通過將&grepprg設置爲不同的方式來使用自定義程序。我個人喜歡使用Perl兼容的正則表達式的ack

+0

是的,那麼事件列表呢? – Sem

+0

@Sem我已經擴大了自己的答案,儘可能深入,儘可能深入地研究。 – amphetamachine

+0

謝謝,我現在正在嘗試使用:) – Sem

相關問題