News for hackers. Stuff that matters.
Re:Finding your way in vim: tags, cscope, grep and more by thristian on Thursday July 28, 2011 @04:15AM (#2815874)
> A word of caution first: there is no perfect symbol-based navigation for programming languages such as C++ or Java in vim, as vim doesn't perform any syntax analysis of the code.

At least for Python, Vim's OmniCompletion does a reasonable job of figuring out function names:

http://vimdoc.sourceforge.net/htmldoc/version7.html#new-omni...

Re:Finding your way in vim: tags, cscope, grep and more by __rkaup__ on Thursday July 28, 2011 @06:22AM (#2816088)
For C and C++, clang_complete gives pretty good completion.

https://github.com/Rip-Rip/clang_complete

Re:Finding your way in vim: tags, cscope, grep and more by obiterdictum on Thursday July 28, 2011 @09:02AM (#2816521)
I like where this is going, but it was a bit unstable for my taste last I tried it. I think it still relies on the file being syntactically correct, which may break your parsing sometimes and is still quite slow with template-heavy code (Boost mostly). Is it still the case?

I'd also like some more build system integration hooks (e.g. provide project-specific include dirs and CXXFLAGS on a per-file basis).

Re:Finding your way in vim: tags, cscope, grep and more by __rkaup__ on Thursday July 28, 2011 @08:29PM (#2819632)
You can provide your own flags to the compiler, in the g:clang_user_options variable. It does still break in uncompilable code but I don't quite see how that's a problem. It forces you to be more disciplined. If you're finding it a bit slow, the help files do explain you how to set up precompiled headers with it. I haven't tried that though, so I can't comment on how much it helps. Personally, the only times a get annoyed with it are when I type 'catch (...', and it thinks I want it's help.
Re:Finding your way in vim: tags, cscope, grep and more by sbochins on Thursday July 28, 2011 @12:57PM (#2817715)
Same thing for php. I really don't want to use Eclipse, but its a pain navigating source code using cscope. For instance, if you are looking for a method definition, it may list hundreds of matches. It has no notion of semantic analysis. It doesn't know what class is calling the particular method and if you're looking for something like $instance->execute, you're screwed.
Re:Finding your way in vim: tags, cscope, grep and more by pavpanchekha on Thursday July 28, 2011 @06:25AM (#2816095)
That's because the whole problem is trivial in Python. What he's talking about is jumping to the correct version of an overloaded function and similar.