Plugin: Intella

Request Features and Feature Changes

Plugin: Intella

Postby awsdert » Tue Aug 21, 2012 8:11 am

The name above is just an idea, use whatever you want.

The plugin should upgrade the auto-complete feature by following the includes of current file to a user set depth with a default of 1 or 2, further it should also allow an option to follow into things like #include <std.h> inside the found files ( for current file it should be done anyway ).
awsdert
User
 
Posts: 5
Joined: Tue Aug 21, 2012 7:59 am

Re: Plugin: Intella

Postby cody » Tue Aug 21, 2012 1:24 pm

Just to clarify, will make the assumption that you are talking about autocompletion support for C/C++.

Would be great but is rather difficult to implement, have tried a few times in the past. Currently best thought is to add CTags support and use Ctags to generate a data file to use for completions.
User avatar
cody
Site Admin
 
Posts: 1315
Joined: Mon Oct 09, 2006 2:49 am
Location: United States

Re: Plugin: Intella

Postby awsdert » Tue Aug 21, 2012 10:06 pm

I'm not saying it has to be just C/C++ however that is what I want it for. As you may have noticed via my phrasing I meant it for all programming languages that support including external files. As for how you could try looking at how apps like Code:Blocks do it, I think it parses the file/s when opening them and generates it's binary file at that point and then uses that file in addition to native keywords/functions etc when the associated file is selected, you could expand on this by letting the plugin add a button for re-parsing the current file and it's includes so as not to slow the app down by constantly parsing, this parsing can then prevent editing the file while it is being parsed.
awsdert
User
 
Posts: 5
Joined: Tue Aug 21, 2012 7:59 am

Re: Plugin: Intella

Postby awsdert » Wed Aug 22, 2012 7:47 am

I was thinking about how the data would be stored and you've probably already done this but I'll mention it anyway
Code: Select all
class AutoPItem
{
    std::string type;
    std::string name;
}
class AutoCItem
{
    int pid; // -1 indicates NATIVE, -2 is GLOBAL, -3 FILE, -4 FUNCTION, and everything else is the index of the parent AutoCItem
    std::string name;
    std::vect< AutoPItem > param;
}
std::vect< AutoCItem > gAutoCList;

AutoPItem would help with overloaded functions / constructors while I'm sure you can work out what the rest are for.
awsdert
User
 
Posts: 5
Joined: Tue Aug 21, 2012 7:59 am


Return to Feature Requests

Who is online

Users browsing this forum: No registered users and 2 guests

cron