Why tabs suck? Explain.
Tabs are neat.
Does you app have too many nested functions?
Use tab width = 2
Do your app have too less nested functions?
Use tab width = 8
Is your app having average number of nested fns?
Use tab width = 4(mostly default)
And all theese can happen without modifying a single byte in the source file, unlike spaces!
Except that you have to either indent with only tabs or indent with only spaces. Any time you mix tabs and spaces you are just asking for disaster.
If you indent with only tabs you can’t align things except on tab boundaries. If you have a function that takes 10 parameters and want to do it on multiple lines, the alignment of the extra parameters is going to be ugly.
If you indent with only spaces, you can indent things so that all the parameters line up directly underneath the parenthesis, for example.
I agree we shouldn’t mix tabs with spaces. But use tabs always. I could line up parameters together but may not be just under parentheris, and it looks good and readable for me