views:

652

answers:

4

What are some options for getting really fast 'Find in Files' searching in VIM?

Our codebase is large enough that searching needs to work off an index. grep/vimgrep/etc are too slow.

Indexing doesn't need to be particularly fast; I can index overnight.

Thanks,

[EDIT] I'm also working in a Windows environment.

+4  A: 

If it's source code (rather than full text search), then ctags with the TagList plugin should work well for your needs. See, for example:

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

EDIT: TagList and ctags will work on Windows as well (that's what I use). See the TagList install page and FAQ. The following links might prove useful:

There's also a TagList forum where you can get further help:

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

I set it up on my windows machine a while back, but I don't remember encountering any problems.

ars
+2  A: 

I don't know how I found this, but looks like someone has written a plugin for google desktop

Sam Saffron
+2  A: 

If you're working with a large codebase, then it might be time to look for a more powerful solution than conventional tools. OpenGrok is a very fast source code search and cross-reference engine. On top of its great performance, it integrates with Subversion, Mercurial, and ClearCase, among other source revision control software. It sounds a lot like something you could use.

If you want support to use OpenGrok from within Vim, you could easily write a vim function that would call system() to start the search for you. To read more about writing new vim commands, look up :help 40.2 within vim.

I hope that's what you were looking for.

Zachary Murray
+1  A: 

Something that I use, but not through vim, is ack: http://betterthangrep.com/

It is a perl based tool, and it should be usable in Windows.

pschneider