>>> Anders Rune Jensen <anders@...> seems to think that:
>On Tue, 2004-03-02 at 14:20 -0500, Eric M. Ludlam wrote:
>> >>> Anders Rune Jensen <anders@...> seems to think that:
>> >I've installed the semantic bovinator cvs version and am trying to get
>> >running. I've added:
>> >(setq semantic-load-turn-useful-things-on t)
>> >(load-file "~/semantics/common/cedet.el")
>> >to my .emacs file. I've tried opening some of my C++ files and it seems
>> >to work somewhat (I can see that it parses the files). It puts a line
>> >above all my functions (why is this?) but it's not able to complete
>> >(with tab) variable-names. When I use M-x semantic-complete-analyze-
>> >inline it works great. Is there a way to teach emacs to do that by
>> That is the job of `semantic-idle-completions-mode'. That should be
>> enabled with the init file your provided. You may just need to way
>> the full 2 seconds before it starts up.
>Now it works. Seems I have to wait that long after each method I enter
>and after each variable I declare ;)
Yes, it waits to make sure you aren't doing anything before
synchronizing all buffers up to notice what you've changed.
[ ... ]
>> >I've heard that in order for it to complete on C++ STL functions and
>> >classes it has to run through the whole gcc library. Is that true and if
>> >so is there a way to do this with a script?
>> You need to create a system database for semantic of your C++ header
>> files. This is not a very well tested mechanism. You could try it
>> with `semanticdb-create-system-database', but I haven't done any
>> testing in there for over a year.
>Ok will try. I don't know if this is in your "road-map" but say that the
>local STL is indexed, the semantic bovinator could find out which header
>files are needed and which ones are not? I think it would be very nice
>to support, I often find myself including to many header files simply
>because I move code around and never get around to clearning the code.
>This is really one of those things where an intelligent (whatever that
>means) IDE could help the user greatly.
[ ... ]
The long term goal is for semantic and all related databases to "know"
everything there is about a language system. For C/C++, this probably
includes building a system database. How that DB is created,
queried, and managed, I do not know. The mechanism I outlined above
is one means, but probably a serious memory hog since the DB files
Emacs would load could end up being multiple megabytes big. Having
semantic dump into some other storage medium, like postgres or mysql
is another possibility.
Using some prefab tool like cscope to scan all those headers instead
may be faster and more efficient, but a specialty tool would be needed.
At the moment, I just need to find the time to create the beta 2
branch so I can build a new tar file. :)
Eric Ludlam: zappo@..., eric@...
Home: http://www.ludlam.net Siege: http://www.siege-engine.com
Emacs: http://cedet.sourceforge.net GNU: http://www.gnu.org