Tabs and spaces (Re: [RFC 0/5] Date Mode: Add --time-zone; deprecate --date=local)
- From
Jonathan Nieder <jrnieder@gmail.com>
- Date
- Apr 21, 2011, 00:07 UTC
- Message-ID
- <20110421000701.GA10987@elie>
- In-Reply-To
- <d74e95d4-ef16-42fb-ae8f-b1d7a8b9d91e-mfwitten@gmail.com>
Hi Michael,
Michael Witten wrote:
Show 5 quoted lines
> and I'm also responsible for this massive git flamewar of yore on the same > subject: > > http://article.gmane.org/gmane.comp.version-control.git/61095 > Message-ID: 634393B0-734A-4884-93E3-42F7D3CB157F@mit.edu
Heh. :)
> However - and this is the key point - if you are going to be mixing > tabs and spaces ANYWAY, then you might as well do it in a way that > maintains alignment within a tab level regardless of the current > setting for the tabwidth:
In principle, I generally agree. But as mentioned in the thread you reference, most text editors don't make that very easy.
I personally use a tabwidth of 6 when I really want to concentrate on reading. When coding in a rush for other people, that leads to using tabstop of 8 and only aligning text that is much shorter than one tab:
if (foo && bar && baz &&
qux && quux) {
...
} else if (quuux(quuuux, quuuuux,
long_expresion_comes_here(quuuuuux))) {
...
}As you can see, this is following the "put continuation lines near the right margin" convention advocated in linux-2.6's Documentation/CodingStyle.
Two advantages:
- looks sensible with any tabstop - no need to cascade changes on following lines when the width of a function name changes
One major disadvantage:
- annoys people who like everything nicely lined up.
For what it's worth. (Not much, of course --- the best rule is as always to make sure your code fits well with the code around it.)
Hope that helps, Jonathan