簡體   English   中英

VIM快速“在文件中查找”?

[英]Fast 'Find in Files' for VIM?

有什么選擇可以在VIM中快速搜索“在文件中查找”?

我們的代碼庫足夠大,搜索需要處理索引。 grep / vimgrep / etc太慢了。

索引不需要特別快; 我可以一夜之間索引。

謝謝,

[編輯]我也在Windows環境中工作。

如果是源代碼(而不是全文搜索),則使用TagList插件的ctags應該可以很好地滿足您的需求。 例如,見:

http://www.thegeekstuff.com/2009/04/ctags-taglist-vi-vim-editor-as-sourece-code-browser/

編輯:TagList和ctags也適用於Windows(這就是我使用的)。 請參閱TagList安裝頁面和FAQ。 以下鏈接可能有用:

還有一個TagList論壇,您可以在這里獲得進一步的幫助:

http://tech.groups.yahoo.com/group/taglist/

我暫時將它設置在我的Windows機器上,但我不記得遇到任何問題。

我使用的東西,但不是通過vim,是ack: http//betterthangrep.com/

它是一個基於perl的工具,它應該可以在Windows中使用。

如果您正在使用大型代碼庫,那么可能是時候尋找比傳統工具更強大的解決方案了。 OpenGrok是一個非常快速的源代碼搜索和交叉引用引擎。 除了出色的性能外,它還集成了SubversionMercurialClearCase等源代碼修訂控制軟件。 這聽起來很像你可以使用的東西。

如果您希望支持在Vim中使用OpenGrok,您可以輕松編寫一個調用system()來啟動搜索的vim函數。 要閱讀有關編寫新vim命令的更多信息,請在vim中查找:help 40.2

我希望這就是你要找的東西。

我不知道我是如何找到這個的,但看起來有人為谷歌桌面編寫了一個插件

嘗試安裝https://github.com/mileszs/ack.vimhttp://beyondgrep.com/

然后建立一個鏈接

ln -s /usr/bin/ack-grep /usr/bin/ack 

並添加

noremap <C-f> :copen<CR>:Ack -aQi --ignore-dir someignoringdir

到你的.vimrc后,你可以通過Ctrl + F找到文件,享受

_   /|
\'o.O'
=(___)=
   U  

你可以試試這個

:vimgrep / something / * /

並且不要忘記之后打開搜索結果窗口

:CW

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM