KDevelop ctags symbol browsing on external dependencies (solution)

Roland Krause rokrau at yahoo.com
Mon Nov 5 21:42:21 UTC 2001


Markus, I am very interested in your patch. I wrote the original ctags
support and always wanted to do this. 

I will have a look and get back to you.

Roland

--- Markus Kuehni <markus.kuehni at trilab.ch> wrote:
> Hi
> 
> the ctags symbol browsing solution currently only supports
> project-internal
> symbols. Symbols included from external dependencies (headers) are
> not
> catalogued.
> 
> The attached patch changes this by directing ctags to also scan
> #include-d
> files. Using this technique you can now fully browse symbols
> (including Qt,
> KDE, etc.) like in M$ Visual Studio.
> 
> In my configuration this only about doubles the ctag-ging time and it
> works
> nicely even on large projects (3.1s for kdevelop.kdevprj).
> 
> External symbol scanning is done by evaluating the
> <source-dir>/.deps/*.P
> files generated (and updated) by the make process. The file list is
> generated using simple shell command expansion.
> 
> The solution is not perfect:
> - does only work, if the source directories are first-level
> subdirectories
> of the project directory
> - does emit ugly grep error if .deps do not exist (suppress stderr or
> show
> dialog?)
> - may not be portable if grep -e is not or if command-line expansions
> has
> severe limits on other systems
> - user may be confused when system headers are opened in editor
> without full
> path in caption (or visibly read-only)
> - no config option to disable this
> 
> Wishful thinking:
> ...if only ctags browsing wasn't a dialog but embedded in an output
> pane...
> 
> -- Mark
> 
> 

> ATTACHMENT part 2 application/octet-stream
name=ckdevelop_noslot.cpp.patch


__________________________________________________
Do You Yahoo!?
Find a job, post your resume.
http://careers.yahoo.com

-
to unsubscribe from this list send an email to kdevelop-devel-request at kdevelop.org with the following body:
unsubscribe »your-email-address«



More information about the KDevelop-devel mailing list