Related "CodeQuery"(https://github.com/ruben2020/codequery) which uses both cscope and ctags databases (i use both for C/C++ code from within vim) and provides a GUI frontend.
Combine with "Doxygen" and "GNU cflow" (https://www.gnu.org/software/cflow/) and you get a very good view of the static structure of any codebase.
To get a Runtime view i prefer the call graph emitted by the profiler gprof.
A great tool for understanding source code is Source Trail. Supports parsing of C/C++, Python and Java currently. I love tools that help understand a large code base.
I take it you've used Source Trail? Are there any operations you particularly like using it for? Are there any you wish it could do, but it wasn't able to?
What would be the workflow when using such tools like this or Source Trail? I've used cscope once while I'm testing out vim as my main text editor a bit.
Nowadays I'm using the global search feature of vscode for code exploration. Combined with the available language server for each language, it seems to work well enough for me currently.
Cscope in vim to jump between caller and callee (examine relationship). See where symbols are used. Jump to global definition. Could not live without cscope!
Hehe, I usually do the opposite, as the SourceForge project page usually contains very little information about the project in general and is usually harder to navigate than the home page.
I used Geany editor (well, it's a "lightweight IDE" GTK based, Scintilla powered) for its ctags integration.
Also helpful for exploration of unknown code. However, in general it navigates between files opened already (as it generates ctags on open). But allows loading an externally generated ctags file. Also does symbol usage lookup and auto-completion.
for purely c based codesbases i don’t think there is anything better that is freely available (would _love_ to hear about equivalent alternatives though. ctags etc don’t seem to have similar functionality afaik)
cacope has excellent emacs integration as well.
for c++, unfortunately, cscope was ok till about c++-98, but modern incarnation of the standard seem to have given rise to a slew of tools for code navigation.
most notable amongst them being around the notion of compilation databases and language servers etc. unfortunately though, for large codebases (>= 1 giga-lines) in my experience they don’t seem to offer anything better, and need to be used in conjunction with grep and their modern incarnations f.e ripgrep etc. making the entire workflow quite unwieldy...
[+] [-] rramadass|5 years ago|reply
Related "CodeQuery"(https://github.com/ruben2020/codequery) which uses both cscope and ctags databases (i use both for C/C++ code from within vim) and provides a GUI frontend.
Combine with "Doxygen" and "GNU cflow" (https://www.gnu.org/software/cflow/) and you get a very good view of the static structure of any codebase.
To get a Runtime view i prefer the call graph emitted by the profiler gprof.
[+] [-] macjohnmcc|5 years ago|reply
[+] [-] obi1kenobi|5 years ago|reply
I built https://twitter.com/PredragGruevski/status/13447256045208780... just for fun as an exploration of this space, and I'm wondering where the limits are :)
[+] [-] pokgak|5 years ago|reply
Nowadays I'm using the global search feature of vscode for code exploration. Combined with the available language server for each language, it seems to work well enough for me currently.
[+] [-] yeowMeng|5 years ago|reply
[+] [-] 1vuio0pswjnm7|5 years ago|reply
https://sourceforge.net/projects/cscope/files/
I set the forward proxy automatically rewrite http://subdomain.sourceforge.net links into the above https:// format.
[+] [-] john-aj|5 years ago|reply
[+] [-] zoomablemind|5 years ago|reply
Also helpful for exploration of unknown code. However, in general it navigates between files opened already (as it generates ctags on open). But allows loading an externally generated ctags file. Also does symbol usage lookup and auto-completion.
[+] [-] erwincoumans|5 years ago|reply
[+] [-] signa11|5 years ago|reply
cacope has excellent emacs integration as well.
for c++, unfortunately, cscope was ok till about c++-98, but modern incarnation of the standard seem to have given rise to a slew of tools for code navigation.
most notable amongst them being around the notion of compilation databases and language servers etc. unfortunately though, for large codebases (>= 1 giga-lines) in my experience they don’t seem to offer anything better, and need to be used in conjunction with grep and their modern incarnations f.e ripgrep etc. making the entire workflow quite unwieldy...
[+] [-] fmakunbound|5 years ago|reply
[+] [-] 29athrowaway|5 years ago|reply
Currently an unmaintained project. https://sourceforge.net/projects/kscope/
[+] [-] LargoLasskhyfv|5 years ago|reply
[+] [-] dejj|5 years ago|reply
[+] [-] unknown|5 years ago|reply
[deleted]
[+] [-] bch|5 years ago|reply
[+] [-] phab|5 years ago|reply
[+] [-] dhoerl|5 years ago|reply
[+] [-] fctorial|5 years ago|reply
[+] [-] new_realist|5 years ago|reply
[+] [-] rramadass|5 years ago|reply
[+] [-] adamnemecek|5 years ago|reply
[+] [-] ChickeNES|5 years ago|reply