Feature suggestion: Show Sketches

I just installed the v2 IDE and it is a very nice improvement. However a feature I was hoping for is (still) missing: the ability to see all your sketches in the UI. Like the web-based IDE, I want to be able to see my sketches in the left panel so I can easily click through them. I get that you are binding a window to a sketch but I should be able to more easily see what I have, and open files in tabs (ideally).

And as far as multiple windows goes, if that is your model, you must have a "Windows" menu, or a gadget on the left, to allow me to easily flip between open sketches.

You can see them under the File > Sketchbook menu

Although it is common for sketches to consist of a single .ino file, sketches may consist of multiple files (shown in the IDE as tabs), all of which are compiled and uploaded. It would be very confusing to have multiple sketches open in the IDE, some of which are being compiled and uploaded, and others only displayed. The sketch is the unit the Arduino IDE works from and so each sketch has its own dedicated window.

I think it's a reasonable request. I know we have one about it in the issue tracker, but I didn't find it after a quick search. Probably I didn't use the right keywords.

Thanks for the quick feedback. I know that the Sketchbook menu exists, but that is not as easy to use as a hierarchical UI element.

I guess my "meta" request is to deal with multiple sketches more effectively. If a sketch is like a Visual Studio solution, or Visual Code workspace, to use two common examples, then having a sketch rooted in a separate window is reasonable. But in any of those other apps, it is very easy to flip between open windows, something the current IDE cannot do.

The more I think about it, having open sketches appear in the side panel would be very nice, but a Windows menu works too.

When I open more sketches, they create more windows (in linux). What would you do with all those open windows ?

You have my vote :nerd_face:
A scrollable list for my own projects on the left side would be nice.
I have 170 Arduino projects at the moment and I'm too lazy for a clean up, but I think I can find them quickly in a list.

I would like to this: open my project, hmmm something is wrong, try a working version, still a problem, run a I2C Scanner sketch, maybe I can use a function from another project let's try that, and so on.

Presumably you opened them for a reason, so you should be able to answer that question. If you don't need a sketch open any more, then close the window.

If I'm closing my computer and continue next day, only one windows opens after using Quit.
If I have 10 open projects and want to close 5, then I must rotate through the windows and read all the title bars (the task bar text could be too short). If the open projects are marked in a list, that would make it easier.

It is a feature request to make things easier for nerds, but tomotvos has a good point.

Funnily enough!

And let me add one more thought, speaking as a hard-core developer but one that is new to Arduino work. While a sketch can have multiple files, are they typically just one file? Conversely, as an Arduino dev, are you not more likely to want to have multiple sketches open for reference, testing, etc.?

I think the workflow needs to be optimized for the 80% use case, IMO. I find Visual Code to be a great experience, and that is speaking as someone that does most of my work on a Mac.

A beginner has just one file.

But before you know it, there are a number of files. Sometimes I make library files local, by putting them in my project folder to be able to make small changes. My project with a Nextion display has a file for each page. Sometimes I have files which are almost identical copies and I can turn them on and off with #define to test things.

@tomotvos Did you know that when two Arduino boards are communicating with each other, each can have a window of the IDE with their own sketch and their own Serial Monitor ? It is possible to develop both sketches at the same time and see what is going on for both. In that case multiple windows are a necessity. I put one board on the left side of my table and its Arduino IDE on the left side of my screen, and the other one on the right.

Your wish is granted in the new 2.0.0-beta.8 release of the Arduino IDE. If you give it a try, please let us know what you think.

1 Like

I like it :+1:

1 Like

Yes, a quick look and it is pretty sweet. I especially like being able to pull in sketches from my web IDE.

1 Like