Comment

Comment by pedram_hadjian

I have been looking for good code navigation in vim and find it weird, that ctags and scope is oftentimes advertised, as it only does index symbol names.

If two different c++ classes use the same identifier for a member and you even fully qualify it in a .cpp definition (e.g. A::Temp and B::Temp), ctags/cscope still just picks the earliest occurrence of Temp.

Using the clang parser is the obvious thing to do (Qt Creator now has a plugin like this). The real downside to the linux command line tools I found (clic, rtags) is, that you need to provide compiler invokations for all .cpp files to the tools. With cmake, this is easy (call it with -DCMAKE_EXPORT_COMPILE_COMMANDS=ON), but with plain make files, this is pain (specially, if you don't want to setup the whole dependencies): if it doesn't compile, you can't parse.

I would love to see a "parse what is possible", because I'd like to learn from source by running "apt-get source ..." and navigating through parts, that I am interested in without trying to compile everything. Best example for source, I don't want to compile is the Android source code (AOSP). Am I missing something?

Discussion

Live from the official Hacker News API

A modern reader for Hacker News · SvelteKit + Skeleton