Well It Is Free
Why does Dev-C++ even bother with an “Auto-Indent” feature? Here, I type the same two code samples. I type only the code and let Auto-Indent handle the rest.
My coding style:

Alternate coding style:

Writing some code then turning it off:

Not a big deal in that last case, but what happens when you are working inside a huge multi-tiered nested structure? Do you really want to manually indent all of that? Especially while your dual-core supercomputer, the one that can execute billions of instructions per second, just sits there idle?
So the end result seems broken, let’s examine what the process of trying to fix it is like. I call these correction processes crap rituals. Programmers are probably all to familiar with these.

Ok let’s hit enter and type the brace…

What I expected but not what I want, lets backspace the brace…

Ok gone, just gotta backspace to the right spot…

Almost there, just gotta press Shift and–

–what the fuck?
Even worse, this is what we get in the Options screen:

“Caret will position to first non-whitespace of preceding line“. No, caret gave up and went to column 0. And why is the checkbox for Auto Indent grey? Regardless if the box is ticked or not, the background is grey. Usually that means it’s an option for a subset of features, some being on some being off. That doesn’t really seem to mean anything here.
Lastly, when you type a close curly brace, the behavior of future deletion changes depending on where the cursor is. If the cursor is directly to the left of the brace and you press Backspace, it backspaces more than one positions, as if you just removed a tab. But there wasn’t a tab - you can click (or arrow-key) to any individual space between the left margin and the curly brace. So sometimes it removes a little and sometimes it removes a lot? And why does Backspace behave this way but Delete does not? Why did they even bother implementing this?
This is a common issue in many IDEs out there. Auto-Indent features are supposed to save us time, not give us more work trying to figure out when to expect a space or a tab or ok if I press backspace now it’ll go to column 0 so I better click over here and press delete twice then hit enter so it indents the new line properly ok now I can move back up and close my brace. If your Auto-Indent forces people to create, test and tweak crap rituals, then your feature has failed.
I have to say my (limited) experience with Microsoft’s Visual Studio IDE’s have been pretty good in this regard. It does what you expect and allows you focus on your code.





