Pages: 1 ... 4 5 [6] 7   Go Down
Author Topic: Interest in overhauling the IDE user interface?  (Read 18404 times)
0 Members and 1 Guest are viewing this topic.
Offline Offline
Newbie
*
Karma: 0
Posts: 7
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Didn't read through all since im in a hurry, but something that i really think is lacking in the IDE is to save the project file separate from the source file(s).
When im writing a big project with classes and stuff, i want to have the code neatly organized in different files which are all referenced when i load the project file.
That way other stuff could be saved in the project file too, like the board version and compilation options, without affecting the source files.
Logged

Offline Offline
Full Member
***
Karma: 3
Posts: 188
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

I love that there are professional quality alternative IDEs but that is no reason to let the main Arduino developer tool atrophy.  We are talking about the first thing that a new user experiences. It should be as good as possible.


I suggest a two phased approach. First, implement a bunch of small fixes and improvements that increase usability without fundamentally adding anything new.  Things like:

* Smooth fonts
* Resize fonts with a shortcut (cmd+ and cmd- usually)
* Match native key bindings. Right now certain keybindings are available in native apps that aren't there in the IDE.  Ctrl-A for start of line, for example. (on Mac)
* Serial port names.  When the IDE asks you for the serial port of your Arduino it gives you a list of names that contain no useful information. There must be some way to fix this.  Perhaps if there is only one serial port attached we don't even ask you, just assume the default.
* Add a "Window" menu showing the currently open windows
* line numbers in the gutter
* a selection of nice alternative color themes
* make the toolbar look nicer (new colors? gradients?)
* switch to nicer icons from the Noun project.
* make the serial port dock-able with the main window
* support fullscreen mode on OSes that support such a concept.

The second phase would tackle deeper issues

* syntax highlighting and code completion
* a sidebar with inline help for the language reference
* a sidebar with docs on each library you have imported into your project
* a way to discover and add new libraries from within your IDE. Perhaps a repo of common arduino libs?

thoughts?

- Josh


Hey Josh,

I'm actually a UI designer who got into creative coding and inevitably into hardware stuff, so the IDE kind of drove me crazy after being used to a lot of designer designed UIs. I actually have dug around on the IDE files and managed to hack into a few things. I did a writeup today here: http://hellowoo.com/arduino/dark-ui-theme-syntax-highlighting/ since it was generating some interest and also have a thread going here: http://arduino.cc/forum/index.php/topic,120268.0.html feel free to add to it or poke the developers for some suggestions smiley maybe they will implement some of the changes.

I have managed to do a few things like: smooth fonts, change UI colors and Icons, change the syntax highlighting. It would be nice to have a tool writing in something like processing that would allow to write to the file I edited so edits could be seen easier too. Still a lot to be desired, but its a start.

As a side note, read up on your arduino IDE project, and if you need design, hit me up. I would love to help.
« Last Edit: October 18, 2012, 05:53:32 pm by hilukasz » Logged

for(i = 0, i < 820480075, i++){ Design(); Code(); delay(1000); } // hellowoo.com

0
Offline Offline
Newbie
*
Karma: 0
Posts: 26
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

I use ino and Sublime Text 2. They are a match made in heaven. Sublime's awesomeness and a simple "ino build && ino upload" to the command prompt.
Logged

Offline Offline
God Member
*****
Karma: 32
Posts: 830
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

I use ino and Sublime Text 2. They are a match made in heaven. Sublime's awesomeness and a simple "ino build && ino upload" to the command prompt.

I use Martin Oldfield's make files and Emacs for the same effect. One of the nice things you can do in Emacs is type M-x compile, and it executes the makefile automatically and displays the output in a separate window. Clicking on any compiler error message with a file name and line number will take you to that file and line number, opening a new window if required.

There's also an emacs plug-in for Arduino .ino/.pde files, that is basically a tweaked version of the C/C++ plug-in so you get all the syntax highlighting, automatic indentation, brace/bracket/parenthesis matching etc.

Mind you, I think Emacs has been doing all this stuff for at least the last 25 years or so, so it's hardly revolutionary, lol. You can also use the gdb debugger seamlessly in Emacs, of course, so if there is ever Arduino support for that, you would actually have something resembling a real IDE.

In the meantime, Emacs + make does OK. Best thing of all is that it bypasses completely the buggy Arduino IDE "Arduno language to C++" preprocessor, or whatever they call it, lol. I assume you would also get that advantage using the "inotool" build scripts.
« Last Edit: October 19, 2012, 10:33:17 am by pico » Logged

WiFi shields/Yun too expensive? Embeddedcoolness.com is now selling the RFXduino nRF24L01+ <-> TCP/IP Linux gateway: Simpler, more affordable, and even more powerful wireless Internet connectivity for *all* your Arduino projects! (nRF24L01+ shield and dev board kits available too.)

0
Offline Offline
Newbie
*
Karma: 1
Posts: 45
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

I love the look. Did you do a new syntax highlighting scheme as well?   What I have working in my new IDE so far is functional and fast, but ugly as sin. I could really use some help on the visuals side.

If you are interested I'm doing a private alpha release this weekend. Send me an email at joshua@marinacci.org if you want in.  Thanks!
- Josh

I love that there are professional quality alternative IDEs but that is no reason to let the main Arduino developer tool atrophy.  We are talking about the first thing that a new user experiences. It should be as good as possible.


I suggest a two phased approach. First, implement a bunch of small fixes and improvements that increase usability without fundamentally adding anything new.  Things like:

* Smooth fonts
* Resize fonts with a shortcut (cmd+ and cmd- usually)
* Match native key bindings. Right now certain keybindings are available in native apps that aren't there in the IDE.  Ctrl-A for start of line, for example. (on Mac)
* Serial port names.  When the IDE asks you for the serial port of your Arduino it gives you a list of names that contain no useful information. There must be some way to fix this.  Perhaps if there is only one serial port attached we don't even ask you, just assume the default.
* Add a "Window" menu showing the currently open windows
* line numbers in the gutter
* a selection of nice alternative color themes
* make the toolbar look nicer (new colors? gradients?)
* switch to nicer icons from the Noun project.
* make the serial port dock-able with the main window
* support fullscreen mode on OSes that support such a concept.

The second phase would tackle deeper issues

* syntax highlighting and code completion
* a sidebar with inline help for the language reference
* a sidebar with docs on each library you have imported into your project
* a way to discover and add new libraries from within your IDE. Perhaps a repo of common arduino libs?

thoughts?

- Josh


Hey Josh,

I'm actually a UI designer who got into creative coding and inevitably into hardware stuff, so the IDE kind of drove me crazy after being used to a lot of designer designed UIs. I actually have dug around on the IDE files and managed to hack into a few things. I did a writeup today here: http://hellowoo.com/arduino/dark-ui-theme-syntax-highlighting/ since it was generating some interest and also have a thread going here: http://arduino.cc/forum/index.php/topic,120268.0.html feel free to add to it or poke the developers for some suggestions smiley maybe they will implement some of the changes.

I have managed to do a few things like: smooth fonts, change UI colors and Icons, change the syntax highlighting. It would be nice to have a tool writing in something like processing that would allow to write to the file I edited so edits could be seen easier too. Still a lot to be desired, but its a start.

As a side note, read up on your arduino IDE project, and if you need design, hit me up. I would love to help.
Logged

Offline Offline
Jr. Member
**
Karma: 0
Posts: 70
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

I use ino and Sublime Text 2. They are a match made in heaven. Sublime's awesomeness and a simple "ino build && ino upload" to the command prompt.

 I downloaded  a Sublime Text plugin to use with Arduino lang although is very bugged. Would you mind to make a small tut with inotool?

Thanks a lot.
Logged

Cape Town South Africa
Offline Offline
Edison Member
*
Karma: 19
Posts: 1217
A newbie with loads of posts, and still so much to learn !
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

I dont know if this was included in ideas about the port,  but I have 2 Arduinos on the bench at the moment, trying an IR link.

I have 2 IDE windows open, one for the Tx and one for the Rx.

Whenever I make a change to either, I have to remember to check to see which port is open or I sometimes write Tx data into the Rx and vice versa.

If the port would switch to whatever port was last used when you activate each window it would save a lot of hassle.
Logged

With my mobile phone I can call people and talk to them -  how smart can you get ?

0
Offline Offline
Newbie
*
Karma: 1
Posts: 45
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

I'm attaching the serial port panel to the code editor window so there is neve any doubt about which port goes with which sketch. This makes it easy to use two ports at once.
Logged

Cape Town South Africa
Offline Offline
Edison Member
*
Karma: 19
Posts: 1217
A newbie with loads of posts, and still so much to learn !
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

That will be great
Logged

With my mobile phone I can call people and talk to them -  how smart can you get ?

0
Offline Offline
Newbie
*
Karma: 1
Posts: 45
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

I've overhauled the build system and set up a server to make the builds repeatable.  That means we now have a *Windows* version as well as Mac.  Here's the zip:

http://hudson.joshy.org:9001/job/ArduinoX/lastSuccessfulBuild/artifact/dist/ArduinoX-win.zip

Just unzip it and run the EXE. It has Java and the compiler bundled with it.  It runs on Windows 8. It *should* run on older versions of Windows down to XP, but I haven't actually tried them yet since I'm using Win8 for my job.

This build only has support for a few devices and examples, but it's easy to add more. Please try it out and tell me what bugs/features you want next.

Thanks.
 Josh
Logged

SE USA
Offline Offline
Faraday Member
**
Karma: 41
Posts: 3783
@ssh0le
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

seems nice, one thing that bugged me was hitting enter did not move the cursor to the new line
Logged


0
Offline Offline
Newbie
*
Karma: 1
Posts: 45
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Could you clarify? I don't understand what you mean.

seems nice, one thing that bugged me was hitting enter did not move the cursor to the new line
Logged

SE USA
Offline Offline
Faraday Member
**
Karma: 41
Posts: 3783
@ssh0le
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

at the end of a line I would hit enter, a new line would be made but the cursor stayed at the end of the old line
Logged


0
Offline Offline
Newbie
*
Karma: 1
Posts: 45
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

at the end of a line I would hit enter, a new line would be made but the cursor stayed at the end of the old line

I've just pushed out a new build which should fix this and a few other issues.
Logged

Global Moderator
Boston area, metrowest
Offline Offline
Brattain Member
*****
Karma: 545
Posts: 27357
Author of "Arduino for Teens". Available for Design & Build services. Now with Unlimited Eagle board sizes!
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Josh,
Have you & eried considered getting together?
http://arduino.cc/forum/index.php/topic,118440.msg998046.html#msg998046

This running update of 3 IDEs is a bit confusing.
Logged

Designing & building electrical circuits for over 25 years. Check out the ATMega1284P based Bobuino and other '328P & '1284P creations & offerings at  www.crossroadsfencing.com/BobuinoRev17.
Arduino for Teens available at Amazon.com.

Pages: 1 ... 4 5 [6] 7   Go Up
Jump to: