Interest in overhauling the IDE user interface?

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

hilukasz:

[quote author=Josh Marinacci link=topic=120882.msg910281#msg910281 date=1346435084]
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 :slight_smile: 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.
[/quote]

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.

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.

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.

That will be great

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

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

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

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

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

Osgeld:
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.

Josh,
Have you & eried considered getting together?

This running update of 3 IDEs is a bit confusing.

Hi Josh,

I downloaded the Windows version and got this error


Rob

What version of windows are you running?

Graynomad:
Hi Josh,

I downloaded the Windows version and got this error


Rob

Vista.


Rob

Hmm. 32 or 64 bit?

Sorry, 32-bit.


Rob

Graynomad:
Sorry, 32-bit.


Rob

Okay. That explains it. I'm currently only building the 64bit version. I'll work on a 32bit as well.

In the meantime, I've just pushed out a new build which fixes a ton of bugs and also remembers the set of open sketches between runs.

OK, thanks.


Rob

I've published a 32bit version, along with a bunch of updates. It's added to the build system so now we will always get both versions. Please test it out here:

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

Trying to compile "blink"

starting compile
assembling sketch in directory: C:\ArduinoX\win
using temp dir: C:\Users\Rob\AppData\Local\Temp\josharduinobuild1498449018706449586.tmp
generating C/C++ file: C:\Users\Rob\AppData\Local\Temp\josharduinobuild1498449018706449586.tmp\.cpp
error!
null
java.lang.NullPointerException
	at com.joshondesign.arduino.common.CompileTask.assemble(CompileTask.java:130)
	at com.joshondesign.arduinox.Actions$2$1.run(Actions.java:74)
	at java.lang.Thread.run(Unknown Source)

Vista, 32-bit, Arduino 1.0.2 I guess but I also have 1.5 installed, how does it know which one to use?

Note the CPP filename.


Rob