>>> joakim@... seems to think that:
>"Eric M. Ludlam" <eric@...> writes:
>
>>
>>>The only problem with this is that it becomes a system db rather than
>>>a project db.
>>
>> Correct. I did this at first to remove some plumbing problems I was
>> having trying to integrate the DB into the search results.
>>
>> Unfortunately, you can't replace existing semantic parsing with
>> ebrowse because ebrowse doesn't provide enough information for most of
>> the tools.
>
>Ok, I dont remember the ebrowse structure well enough to argue, but shouldnt
>it be possible to return enough information to, say, draw a simplified
>Speedbar?
EBrowse provides only the name, parent class/struct/namespace, and if
it is a function or variable. I thought there should be more, but I
didn't find it.
The search results are returned as very simple semantic formatted
tags. semanticdb-ebrowse can then "normalize" the tags by finding the
originating source, and parsing it the normal way.
As such, yes, you could do a search, get the result, skip the
normalization step, and use the results that way. That would happen
on a tool-by-tool basis. Speedbar or ECB could do that as a
short-cut. The analyzer or class browser would need the tags
normalized.
>> As you say, having it as a "project db" would be a good idea, but I'm
>> not sure what that means in the existing framework. I suspect it
>> works fine as a system db so long as you only work on the one
>> project.
>>
>> To make that work, you could experiment with some find-file-hook that
>> figures out which 'project' you are in, and adds/removes ebrowse
>> databases to the system path based on what you know.
>
>Cedet alread has a "project" notion we can reuse, right?
>Also, couldnt "dir-locals.el" or "dirvars.el" help?
It uses a 'project' notion to collect regular semanticdb tables
together. The individual database files that are grouped together
are, by default, regular semanticdb files. The confusion comes when
you sub in some other type of database. You can mix and match since
all the parts are vaguely compatible, but I just don't know what would
happen.
I'm not familiar with dirvars.el
The answer is "yes", using ebrowse, or even TAGS as an umbrella DB for
a project when semantic hasn't gotten to the actual file yet is
something that is needed. All the parts are there, I just don't have
a recipe for it.
I get hit the first time I fire up emacs in a new (large) project,
when it runs of and starts parsing all the header files. Having it
burn a fresh ebrowse DB first thing would cut back on a alot of that
work. I'll get to it eventually.
Eric
>> If that works, let me know, and we can add a more general utility for
>> it, and possibly have that be some sort of default.
>>
>> Eric
>>
>>>> I've checked in some more ebrowse support. The ebrowse database for
>>>> semantic can now convert it's fabricated tags (now marked as 'faux')
>>>> into real semantic parsed tags by loading in the files. This will be
>>>> slightly slower the first time through any particular header file that
>>>> gets a tag hit, but should be a big win in the end.
>>>>
>>>> The new mechanism could be used to make an ETAGS style database for
>>>> just about any language. Nifty. First thing to do though is try it
>>>> out in a real environment, which I haven't had opportunity to do yet.
>>>>
>>>> I also changed the analyzer as I discovered some wasted work, so it
>>>> should be a bit lest pesky while navigating files with the idle
>>>> summaries mode turned on.
>>>>
>>>> Lastly, the new ebrowse backend now auto-loads it's databases once
>>>> you make them.
>>>>
>>>> Give it a try and let me know how it goes! See the commentary in
>>>> semanticdb-ebrowse.el for the basics.
>>>>
>>>> Enjoy
>>>> Eric
>>>>
>>>> --
>>>> 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
>>>>
>>>> -------------------------------------------------------------------------
>>>> Take Surveys. Earn Cash. Influence the Future of IT
>>>> Join SourceForge.net's Techsay panel and you'll get the chance to share your
>>>> opinions on IT & business topics through brief surveys - and earn cash
>>>> http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV>
>
|