IDE on the make..

After having some trouble with the original IDE for a while (Shift + backspace and so on) i decided today to give a small idea of mine a try.. thats the first outcome after a few hours of work...

I aim at having THE Arduino Ide, which will make programming easier, more rapid and of course more fun. To do that i plan to implement Minesweeper and solitaire into it as well as neat 3D Tricks for which you need a DirectX10 graphics card of course. Also ishould mention that i plan to build a custom uploader so sketches are uploaded in less than a second... cough I mean, what i intend to make is a small IDE which gives users of Visual Studio some of the look and feel they have with it (Like F5 for building and Upload, F6 for upload.. Solution Explorer... dockable windows (as well as auto hiding ones) ...) This whole thing is only an experiment as i dont even have any idea how to compile or upload stuff yet, but i think this should be pretty easy doable - in the end this might become a nice IDE for people who like the VS look and feel, but nothing more. I dont plan on any great changes compared to the original one except a few things about the handling.. Oh, as a side note, this is done in C# but Mono will be no option as i use Net Framework 3 as well as some WPF things that arent provided by mono yet (afaik)..

I'm always impressed when someone takes on a task of this nature. I'd never be one to discourage someone from writing a better IDE, but be aware that there are a few projects like this underway already:

http://www.arduino.cc/cgi-bin/yabb2/YaBB.pl?num=1242846270 has been updated in the last few days.

There are a couple of folks trying to simply extend Visual Studio to provide support for Arduino: http://www.arduino.cc/cgi-bin/yabb2/YaBB.pl?num=1240125209

I generally dislike the Arduino IDE after spending so many years using VS. (Shift + Backspace gets me several times a day!)

You can use NotePad++ to at least get some of the text editor features (folding code, bookmarks, etc).

A lot of questions in this forum and their respective answers concern the IDE and how to change for example the target platform. Having a single IDE helps answering, and also helps concentrate on the task at hand - develop something with the arduino. I don't know if there are a lot of Linux and Mac users but it's interesting to know. That might help in the decision whether to drop support for a certain platform. I myself would certainly benefit a better IDE, but if it runs on Linux. Wouldn't run Windows, dislike it. The topic about the favorite editor is brought up at least once a month on our Linux forum and is quite engaging for some :). There are couple of great cross platform development projects as Komodo, Eclipse, Scintilla based ones - Notepad++, SciTE.

We have mac's at home but I usually write all my sketches in TextEdit. So I only use the IDE for verifying, tweaking, then uploading.

I don't spend a great deal of time using it so I don't get tired of it - even if I did, I'd still appreciate the work they put in.. and thats it's free = )

Don't misunderstand me, I really appreciate what has been done with Arduino, and I'm certainly not complaining about the overall product or price.

We have mac's at home but I usually write all my sketches in TextEdit. So I only use the IDE for verifying, tweaking, then uploading.

I do the same with Notepad ++.

Writing the basics of an ide is easy, I have written one with Lazarus/Freepascal, but, as I found out, it gets a bit more difficult when the code syntax checking starts.

I tried piping the output from the Arduino makefile compilation to a terminal window but the errors are all generated from the *.cpp file not the *.pde file so a bit of juggling is needed to locate where in the source file they are coming from.

I have written one with Lazarus/Freepascal

That should be relatively easy, most of the parts are there, including SynEdit for the editor.

it gets a bit more difficult when the code syntax checking starts. I tried piping the output from the Arduino makefile compilation to a terminal window but the errors are all generated from the *.cpp file not the *.pde file so a bit of juggling is needed to locate where in the source file they are coming from.

That's what stopped me. At some point I considered writing a parser, but I couldn't find a grammar definition for the language.

Regards,

Gerard.