I'm specifically interested in tools that can be plugged into Vim to allow CScope-style source browsing (1-2 keystroke commands to locate function definitions, callers, global symbols and so on) for languages besides C/C++ such as Java and C# (since Vim and Cscope already integrate very well for browsing C/C++). I'm not interested in IDE-based tools since I know Microsoft and other vendors already address that space -- I prefer to use Vim for editing and browsing, but but don't know of tools for C# and/or Java that give me the same power as CScope.
The original answer to this question included a pointer to the CSWrapper application which apparently fixes a bug that some users experience integrating Vim and CScope. However, my Vim/CScope installation works fine; I'm just trying to expand the functionality to allow using Vim to edit code in other languages.
cscope is a programming tool which works in console mode, text-based interface, that allows computer programmers or software developers to search source code of the programming language C, with some support for C++ and Java.
Claiming that Cscope supports Java is an extreme stretch. It seems to treat a method like a function, so it has no idea that A.foo(), A.foo(Object) and B.foo() are all different. This is a big problem with a large code base (including third-party libraries) with many same-named methods. (I haven't looked at the Cscope source, but this is what I found trying the latest Cscope, version 15.7a-3.3 from Debian unstable.)
I tried Cscope on a large Java project, and it was not at all useful to me due to this limitation. It's sad that we cannot get a quick answer to a basic question like "who calls this method", using free software outside of the big IDEs, but we may as well accept it. (I would love it if I'm wrong. I resort to hacks like commenting out the method and recompiling.)
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With