Arduino IDE is not the best choice

Continuing the discussion from Setting tabs for code formatting:

Arduino IDE is not the best choice. It lacks almost all useful settings which normally exist in IDEs.. There is no way to set compiler options… linker flags. “Go to reference” works only sometimes. “Go to definition” - absent. “Find in files“ ? No. “Find in project files and replace”? No. Autocompletion? Yes it is exists technically but 99% of time it is super annoying, autocompleting wrongly. I can continue the list.

Better is to use your favourite IDE and set it up to use arduino-cli as a compiler. I use Visual Slick Edit for development and arduino only for compilation and upload.

Is it FREE?
If not then you have nothing to complain about.

1 Like

Search panel: fifth and last item on the left sidebar, with the magnifying class icon, below Debug.

As with the in-file Find, Replace is shown/hidden with the "disclosure caret"

2 Likes

I don't see all the things you're complaining about. Or at least, I don't find them that serious or annoying, and some of the things you say are missing are actually there (like global text search).

In my opinion, since Arduino projects aren't very large (usually just a handful of files), there's little need for the features available in most advanced IDEs.

I can only agree with the last sentence: if you can configure your favorite IDE to compile Arduino code, no problem, go for it! But Arduino IDE isn't that bad.

1 Like

I agree :+1:

Not sure about 99% of the time, but I have also found that it can be inconsistent. It does depend on the definition of the object that is being auto-completed being complete and correct and sometimes it does take time for the object definition to be re-scanned before the correct auto-complete options are provided. Sometimes it does seem to provide incorrect (generic or global and seemingly irrelevant [as per above screenshot in #2]) options regardless. In summary, one can't totally rule out a measure of user error here but equally there appears to be some room for improvement.

The Arduino IDE was designed with beginner in mind, so its perhaps understandable that many of the "advanced" features are "hidden" to avoid overwhelming the newcomer to the platform. As one gets more familiar with the IDE, then one then can start to discover and take advantage of those additional options in the Cmd-Shift-P menu. It seems that Arduino started to develop a version called the "Arduino Pro IDE" which had a toggle switch that revealed and enabled some of these advanced options in the IDE GUI, but it seems that this never made the final cut and instead Arduino decided go down the hidden menu route and release Arduino IDE 2.

https://www.arduino.cc/pro/software-arduino-pro-ide/

1 Like

To be clear. The code base for what was initially called "Arduino Pro IDE" eventually became the Arduino IDE 2.x project. So it was not that the work on "Arduino Pro IDE" was abandoned, but rather that we decided to move away from the idea of maintaining two separate IDEs, and instead create a single new IDE. The new IDE serves as a replacement for Arduino IDE 1.x, while also providing some advanced features such as a state of the art editor, language server, and debugger.

I use it all the time

I used to use VSE and when I had my consulting company even purchased it for my employees. It was so powerful I had one project half done just by clever use of the editor macros. I would get it again but I can't afford it and last time I checked it seemed to have evolved into a different too complicated beast. I may have another look at VSC and with help even PlatformIO but I am not unhappy with Arduino IDE so my motivation is low.
I do miss column operations that I had in Visual Slick Edit though.

Wow! This thread’s way more popular than the original.

The 2 space 3 space thing seems to be inherited from the 1.x version. I could set that one at 3 spaces. But auto format ignored that setting and just blindly reset everything back to 2. It felt like it was trying to teach me a lesson. You may ask for the cookie, but you still don’t get one! Kinda’ thing.

Having a Mac I do about 90% of my editing in BBEdit, and only the .ino & it’s sketch sibings “live” in the IDE. I’m actually starting to like the 2.x IDE. I don’t completely trust it yet. But I’m getting used to it. I feel it’s a step backwards on the 2 space 3 space thing in that the 1.x at least saved my setting over time. This one just tosses them when the session is done.

2 posts were merged into an existing topic: Setting tabs for code formatting

If only it worked instead of loading indefinitely LMAO
Not even talking about source files...

Discussion specific to @jimLee's specific problem with configuring Arduino IDE 2.x to use tabs, and to size them to 3 spaces will be done in the dedicated topic for that subject:

This topic is to be used for general discussion about the deficiencies and defects of Arduino IDE as raised by @vvb333007. not on the subject on @jimLee's specific problem.

You can configure the behavior of the Arduino IDE auto formatter. Do that by adding a file named formatter.conf in the folder at the following path on your hard drive:

/Users/<username>/Library/Arduino15/

This file contains configuration data for the Artistic Style formatter tool used by the Arduino IDE 1.x auto format:

You can see the default configuration here:

it is on the screenshot. Wrong autocompletion. And even worse, when the structure member is “s“. Then it is always autocompleted to size_t

Check the variable “hello“.

No one is forcing you to use the Arduino IDE. If you don't like, use something else.

Oh yes. It is free, thats explain everything.

Just trying to highlight existing problems, but it seems like you guys are completely ok with them. No problem. No more complaining/bug reports from me.

1 Like

I think you can turn that off.