View previous topic :: View next topic |
Author |
Message |
stack_overflow
Joined: 18 Aug 2007 Posts: 3 Location: Brasil
|
Posted: Mon Oct 29, 2007 10:21 am Post subject: descent 0.4.4 |
|
|
When the version 0.4.4 will be released?
I'm looking for autocompletion =)
Regards. |
|
Back to top |
|
|
fraserofthenight
Joined: 08 Apr 2007 Posts: 33 Location: Seattle, WA
|
Posted: Tue Oct 30, 2007 2:20 pm Post subject: |
|
|
Well, I'm hoping we'll call it 0.5, but to answer your question... probably not for a while (maybe around the end of the year), since we're doing something a bit more ambitious than just autocompletion (check out the video:
http://esperanto.org.ar/descent/descent.html )!
If you're feeling daring, you can grab the trunk version, which has some autocompletion & error marking, but chokes on templates and a couple other random things right now.
Autocompletion is done right now for:
- Module declarations
- Imports (sort of)
- Classes/structs and references to them (sort of)
- Type dot identifier expressions
- Enums
- Switch/cases where you're switching based on an enum
- Goto labels
- Version conditions
Another option is to check out Mmrnmhrm (I know I got that wrong...), which might have some of the features you want. |
|
Back to top |
|
|
doob
Joined: 06 Jan 2007 Posts: 367
|
Posted: Wed Oct 31, 2007 9:50 am Post subject: |
|
|
Are the things the video is showing working in the svn, because I can't get it to work. I just did a svn check out, imported the projects to eclipse, built them and exported them using the Export Wizard and then I put them in the eclipse/plugins directory. |
|
Back to top |
|
|
asterite
Joined: 01 Jun 2006 Posts: 235 Location: Buenos Aires, Argentina
|
Posted: Wed Oct 31, 2007 11:16 am Post subject: |
|
|
I wouldn't recommend doing that, but instead just testing in a little from within Eclipse (Run as... -> Eclipse Application). The problem is, the performance is very, very bad at this moment. Imports are resolved the way DMD resolves them: parse the imported files and add the symbols to the current scope's symbol table.
Anyway, wether you run it from Eclipse or copy the plugins to the plugins folder (did you deleted the previous ones?), the features should work (try it first on a small project). Try for example writing, in an empty file "mod" and then pressing ctrl+space. Or "import s" and then pressing ctrl+space (assuming there is a module or package in your project, or as the DMD library, that starts with s). Aren't you getting also the semantic errors?
What we can do, if you'd like to, is release version 0.4.4 with minimal new features:
- completion for keywords, like public, import, module, abstract, __traits, etc.
- completion for imports
- completion for special locations, like scope, extern, version and __traits
- completion for ddoc sections and macros
- suggestions on function arguments names
- completion on gotos, continues and breaks
- formatting two-dimensional arrays is nicer now
- disabled semantic analysis
We can also fix some bugs phoenix reported to me. I think the feature set is not that small after all. What do you think? |
|
Back to top |
|
|
doob
Joined: 06 Jan 2007 Posts: 367
|
Posted: Wed Oct 31, 2007 12:10 pm Post subject: |
|
|
It would be nice if you could release a 0.4.4 version.
I deleted all the previous descent files, created a new project and a new module. I did see some new things like completion for keywords, phobos imports and things like __DATE__. I did get some semantic errors but they didn't disappear like they did in the video when he added the mixin.
Code: | module main;
char[] defineStruct(char[] name)
{
return "struct " ~ name ~ " { int x; int y; }";
}
mixin (defineStruct("Some"));
Some obj; |
The above code gave me the following errors:
at the mixin: Argument to mixin must be a string, not (defineStruct("Some"))
at Some obj: Some cannot be resolved to a type
I've also tried to run it as an Eclipse Application and it was almost the same. I got the same and also I got the errors in the Problems tab and in the outline. |
|
Back to top |
|
|
asterite
Joined: 01 Jun 2006 Posts: 235 Location: Buenos Aires, Argentina
|
Posted: Wed Oct 31, 2007 1:31 pm Post subject: |
|
|
Strange... it works for me. Try the following: cut all the source code, delete, save, and then paste... does the error appear? (I don't have to do that to make the error disappear, but if it doesn't disappear doing this, there's a problem).
Also, completion is not just for imports is not just for Phobos: you can see that modules in the same projects or referenced projects also are shown. |
|
Back to top |
|
|
doob
Joined: 06 Jan 2007 Posts: 367
|
Posted: Wed Oct 31, 2007 3:56 pm Post subject: |
|
|
It doesn't help if cut all the source code, delete, save, and then paste code. The completion for imports only works if the files are open when I try to import a module from another project that is referenced. I get "The import module cannot be resolved" on every import, including object.d, except if it in a version condition.
Code: | version (Tango)
{
import tango.io.Stdout; // no errors here
}
else
{
import std.stdio; // error here
}
|
It would be nice to be able to choose tango as Standard Library also and maybe to have both tango and phobos in a project. |
|
Back to top |
|
|
|
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
Powered by phpBB © 2001, 2005 phpBB Group
|