the problem i encounter is when you try to break a long line into multiple lines. if you want to use tabs and align the continuation, you should be mixing spaces and tabs.
Why do we want to format statements that way, but function calls and expressions a different way? No one would write this:
if (shouldDoThings) {doOneThing();
doAnotherThing();
doLastThing();}
I have a theory about that but will have to save it for another day.
Somewhat related, the Rust coding style guidelines used to follow a heavily column-aligned style, but changed to indentation-only a year or two ago. I posted an example from the Servo source code with the old and new formats here:
for example ('-' is tab, '.' is space):
it can be done, but a lot of editors get it wrong and it requires paying attention to the whitespace.of course, another style would be to just indent the continuation twice, without aligning it. (i personally prefer to align continuations.)