FAQFAQ   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

Seeking advice

 
Post new topic   Reply to topic     Forum Index -> Descent
View previous topic :: View next topic  
Author Message
chojin



Joined: 11 Feb 2007
Posts: 13

PostPosted: Sun Feb 11, 2007 10:04 pm    Post subject: Seeking advice Reply with quote

I've just begun poking around with eclipse and so far I adore it. I have been using pspad and batch files to compile my D programs up until now and I recently had to do a quick application in java, and now I am spoiled - I love the intuitiveness of developing with eclipse and want the experience to be the same with D.

I installed the various eclipse D plugins and so far descent seems the most fully featured. I want to help out and have a few questions.

First, another plugin I tried (DDT, which is now dead) had different features than descent - notably, support for compiling and a d-perspective. To me, it seems quite obvious that this should be imported into the descent code.

Second, while I am confident with both D and Java, I am new to eclipse. I think it would help a great deal if someone could roughly explain how to go about helping to develop for descent. I have noticed there's a /src/ directory inside each of the jars. Is it just a matter of extracting this and trying to decipher what's going on? Can anyone give any pointers beyond this?

Thanks for reading this long post... hopefully I can help somehow, I am particularly interested in getting a d-perspective included and compile support.
Back to top
View user's profile Send private message
asterite



Joined: 01 Jun 2006
Posts: 235
Location: Buenos Aires, Argentina

PostPosted: Tue Feb 13, 2007 3:32 pm    Post subject: Reply with quote

Sorry for the delay, I was on vacations.

First, thanks for your interest. Smile

Descent will have the features provided by DDT and more, it's just a matter of time. I've made a new explanation of the goals of the plugin and the way it is being developed, so you can understand why it's taking so long. I hope to get to the "java like" part soon.

As for helping in the development, parallel work could be made for the various packages to be copied from JDT, but I'm afraid this is not an easy task because once you copy a class you must copy all references, and it's recursive, and you have to know when to stop (comment methods or classes and put a TODO). Help would be nice after the "Java like" part is finished.

I'd wish not to copy and instead reuse... the guys of Eclipse started a project (I can't remember the name) to ease the development of IDEs for specific languages (just tell Eclipse the grammar, a couple of things, and that's it), but they stoped working on it. PHPEclipse did the same as with this project.
Back to top
View user's profile Send private message Yahoo Messenger MSN Messenger
chojin



Joined: 11 Feb 2007
Posts: 13

PostPosted: Fri Feb 16, 2007 12:04 am    Post subject: Reply with quote

Hmmm, not quite what I meant. I was just after a basic introduction to how you've laid things out and done things, so others could follow on and understand what you've done so far.

From poking around, I can only surmise what you've done is either use the PDE plugin wizards to generate some java-based code then tried editing it back to support D, stubbing everything while in progress. I think that's one way to be sure that the plugin supports everything the JDT does, but it's very hard to decipher for someone new to java plugins.

I've started work on a perspective and have the basics already, and am looking at working out the best way to integrate build/dmd support. Perhaps even make the wizard generate some templated code. I think I'm way more interested in extending descent.ui than the core, so we may work well together.

I would also like to investigate autocomplete (I think it's called content something or other in the documentation), but I'm not really sure how I would even begin going about this, the organisation of the eclipse plugin architecture is very complex.

Right now there's nothing to show since I'm still learning and I'm sure I've messed something up. But I did replace the icons with much more professional looking ones and added a 'new project' icon. I think they reflect the descent style a bit more. I added them to the ui jar for ease of use. It's not much but I can do any other icons required.

http://designloft.com.au/files/descent.ui_0.1.20061228.jar

For people looking at digging around with eclipse plugins, start out by switching to the 'plugin development' perspective, or open the MANIFEST.MF file in eclipse itself. From there you can get a quick overview of what's being extended, and jump into the code from there.

This tutorial helped me:
http://www.eclipse.org/articles/Article-PDE-does-plugins/PDE-intro.html

And there are many others on that site which explain how to do all of the basic things, though some aren't very helpful.
Back to top
View user's profile Send private message
phoenix



Joined: 06 Mar 2005
Posts: 68

PostPosted: Fri Feb 16, 2007 11:01 am    Post subject: Reply with quote

Hi there. If you want to learn more about IDE development I would advise the following:
First learn the basics about Eclipse. Consider articles like the Platform Overview:
http://www.eclipse.org/articles/Whitepaper-Platform-3.1/eclipse-platform-whitepaper.html
and the many others available at eclipse.

Then, these are some links about IDE specific development:
http://www-128.ibm.com/developerworks/edu/os-dw-os-ecl-commplgin1.html
http://wiki.eclipse.org/index.php/Eclipse_FAQs#Implementing_Support_for_Your_Own_Language
http://www.realsolve.co.uk/site/tech/jface-text.php
http://www.eclipse.org/articles/Article-JavaCodeManipulation_AST/index.html

There is also made a document I made(part of the master thesis work), that is a brief overview about creating Eclipse based IDEs:
http://mega.ist.utl.pt/~bdom/dee/rels/II_survey-final.pdf
This paper is not as detailed as it could be though. There is a lot about JDT that I would like to know about, but that I don't. (and there doesn't seem to be any documents detailing JDT's architecture/design, one has to understand what one can from the source code)

Ary, are you planning to port a lot of code from JDT before having a stable code base and/or working release?
_________________
Bruno Medeiros
Back to top
View user's profile Send private message
asterite



Joined: 01 Jun 2006
Posts: 235
Location: Buenos Aires, Argentina

PostPosted: Sat Feb 17, 2007 2:45 pm    Post subject: Reply with quote

The more code I port from JDT, the more functionality the plugin will have. Also, more code implies more error spots appearing if I try to change something from Java to D, so it's easier this way.
Back to top
View user's profile Send private message Yahoo Messenger MSN Messenger
asterite



Joined: 01 Jun 2006
Posts: 235
Location: Buenos Aires, Argentina

PostPosted: Mon Feb 19, 2007 6:16 pm    Post subject: Reply with quote

chojin wrote:
But I did replace the icons with much more professional looking ones and added a 'new project' icon. I think they reflect the descent style a bit more. I added them to the ui jar for ease of use. It's not much but I can do any other icons required.


I loved your icons!

If you update you SVN, you should see icons for classes, interfaces, structs, unions, enums, templates, aliases and typedefs (these two must still be inside one of the previous declarations, since in Java you can't declare a field outside a class). Unfortunately this icons are just stubs. If you could make some nice icons following the JDT style (for exmample an S within a circle for a struct, the same but with a red square at the bottom-right corner if it's private, etc.), I'd really appreciate that.

If you want to help in the UI part, the code formatter is still missing. And, of course, lots of other things which I can't remember right now.
Back to top
View user's profile Send private message Yahoo Messenger MSN Messenger
Display posts from previous:   
Post new topic   Reply to topic     Forum Index -> Descent All times are GMT - 6 Hours
Page 1 of 1

 
Jump to:  
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