Use spaces instead of tabs
-
In the Coder Interview with Chris Sells[^], he writes: #2. Use spaces instead of tabs. Rule #2 is just good sense. Really? I use tabs, I love tabs, I think spaces are ridiculous. Why are spaces "just good sense?" Makes no sense to me! Why do tabs make sense to me? Well, they are less keystrokes when I'm indenting a line of code. I can easily "Ctrl-TAB" a few times to get everything flush against the left margin when copying code for an article or a document. The cursor skips all the whitespace for each tab. It would be annoying as hell to use spaces! Oh, and the tab key is a heck of a lot quieter on the keyboard then the spacebar! [edit]I'm obviously asking an obsolete question. CP Insider: Tabs vs. Spaces[^] [/edit] Marc
My Blog
The Relationship Oriented Programming IDE
Melody's Amazon Herb SiteI don't really mind as long as it's consistent. The only thing I can say for tabs is that it matches user prefs easier. If my editer says a tab is 4 and yours says it's 8 then we are both happy. Spaces don't do that as far as I know. Either way, it doesn't matter much to me. I think the argument is amusing though :D
If it moves, compile it
-
In the Coder Interview with Chris Sells[^], he writes: #2. Use spaces instead of tabs. Rule #2 is just good sense. Really? I use tabs, I love tabs, I think spaces are ridiculous. Why are spaces "just good sense?" Makes no sense to me! Why do tabs make sense to me? Well, they are less keystrokes when I'm indenting a line of code. I can easily "Ctrl-TAB" a few times to get everything flush against the left margin when copying code for an article or a document. The cursor skips all the whitespace for each tab. It would be annoying as hell to use spaces! Oh, and the tab key is a heck of a lot quieter on the keyboard then the spacebar! [edit]I'm obviously asking an obsolete question. CP Insider: Tabs vs. Spaces[^] [/edit] Marc
My Blog
The Relationship Oriented Programming IDE
Melody's Amazon Herb SiteI have never understood this one. Tabs allow different developers to set up their editors how they want, and having everyone being comfortable with the codebase is obviously a good thing. (Personally I like a really narrow tab stop to stop code vanishing off to the right, which I manage in space-land by coding in a proportional font.) It's also far harder to muck up indentation if you're using tabs (it's very easy to be modifying indentation and end up with 7 or 9 spaces not 8, but you really notice 2 or 3 tabs). Enforcing a particular spacing standard means that some people are constantly dealing with code that (to them) is too indented, or not indented enough. If the codebase used tabs, they could all work with it in the best possible way. Most modern IDEs do a lot of paddling for you to fake the useful aspects of tabs with spaces. So why not just use tabs in the first place?
-
In the Coder Interview with Chris Sells[^], he writes: #2. Use spaces instead of tabs. Rule #2 is just good sense. Really? I use tabs, I love tabs, I think spaces are ridiculous. Why are spaces "just good sense?" Makes no sense to me! Why do tabs make sense to me? Well, they are less keystrokes when I'm indenting a line of code. I can easily "Ctrl-TAB" a few times to get everything flush against the left margin when copying code for an article or a document. The cursor skips all the whitespace for each tab. It would be annoying as hell to use spaces! Oh, and the tab key is a heck of a lot quieter on the keyboard then the spacebar! [edit]I'm obviously asking an obsolete question. CP Insider: Tabs vs. Spaces[^] [/edit] Marc
My Blog
The Relationship Oriented Programming IDE
Melody's Amazon Herb SiteI used to think tabs were great, but that was before text editors got a clue. Now [Home] skips the whitespace and arrow keys navigate to sensible places. Tabs still aren't bad when used for indenting, but they (perhaps ironically) suck for aligning. For example in
if (something\_longer\_than\_this && something\_else\_long)
If tabs are used it risks becoming
if (something_longer_than_this &&
something_else_long)or
if (something\_longer\_than\_this && something\_else\_long)
Depending on someones settings. When tabs and spaces are mixed, things tend to go wrong, possibly because it's hard to tell the difference between a tab and a bunch of spaces especially when they've become mixed arbitrarily. Through copy/paste and incremental editing, whitespaces slowly become tab/space mixes that only accidentally have the right size for whatever edited it last. If everything is a space but the editor treats whitespace properly instead of "just an other character" IMO its disadvantages mostly disappear, but the advantages remain. The same could afaik not be done for tabs.
-
In the Coder Interview with Chris Sells[^], he writes: #2. Use spaces instead of tabs. Rule #2 is just good sense. Really? I use tabs, I love tabs, I think spaces are ridiculous. Why are spaces "just good sense?" Makes no sense to me! Why do tabs make sense to me? Well, they are less keystrokes when I'm indenting a line of code. I can easily "Ctrl-TAB" a few times to get everything flush against the left margin when copying code for an article or a document. The cursor skips all the whitespace for each tab. It would be annoying as hell to use spaces! Oh, and the tab key is a heck of a lot quieter on the keyboard then the spacebar! [edit]I'm obviously asking an obsolete question. CP Insider: Tabs vs. Spaces[^] [/edit] Marc
My Blog
The Relationship Oriented Programming IDE
Melody's Amazon Herb SiteHere's some code with tabs. When you share code with tabs, it can be ugly.
public class MyClass
{
void MyFunction()
{
if (true)
{
for (int x = 0; x < 3; x++)
{
if (false)
continue;
}
}
}
}Steve Wellens
-
In the Coder Interview with Chris Sells[^], he writes: #2. Use spaces instead of tabs. Rule #2 is just good sense. Really? I use tabs, I love tabs, I think spaces are ridiculous. Why are spaces "just good sense?" Makes no sense to me! Why do tabs make sense to me? Well, they are less keystrokes when I'm indenting a line of code. I can easily "Ctrl-TAB" a few times to get everything flush against the left margin when copying code for an article or a document. The cursor skips all the whitespace for each tab. It would be annoying as hell to use spaces! Oh, and the tab key is a heck of a lot quieter on the keyboard then the spacebar! [edit]I'm obviously asking an obsolete question. CP Insider: Tabs vs. Spaces[^] [/edit] Marc
My Blog
The Relationship Oriented Programming IDE
Melody's Amazon Herb SiteSpaces instead of tabs is damn frustrating and irritating!
See if you can crack this: b749f6c269a746243debc6488046e33f
So far, no one seems to have cracked this!The unofficial awesome history of Code Project's Bob! "People demand freedom of speech to make up for the freedom of thought which they avoid."
-
Here's some code with tabs. When you share code with tabs, it can be ugly.
public class MyClass
{
void MyFunction()
{
if (true)
{
for (int x = 0; x < 3; x++)
{
if (false)
continue;
}
}
}
}Steve Wellens
Steve Wellens wrote:
When you share code with tabs, it can be ugly.
But my tabs are set for 4 spaces, so the code looks nice! Marc
My Blog
The Relationship Oriented Programming IDE
Melody's Amazon Herb Site -
I used to think tabs were great, but that was before text editors got a clue. Now [Home] skips the whitespace and arrow keys navigate to sensible places. Tabs still aren't bad when used for indenting, but they (perhaps ironically) suck for aligning. For example in
if (something\_longer\_than\_this && something\_else\_long)
If tabs are used it risks becoming
if (something_longer_than_this &&
something_else_long)or
if (something\_longer\_than\_this && something\_else\_long)
Depending on someones settings. When tabs and spaces are mixed, things tend to go wrong, possibly because it's hard to tell the difference between a tab and a bunch of spaces especially when they've become mixed arbitrarily. Through copy/paste and incremental editing, whitespaces slowly become tab/space mixes that only accidentally have the right size for whatever edited it last. If everything is a space but the editor treats whitespace properly instead of "just an other character" IMO its disadvantages mostly disappear, but the advantages remain. The same could afaik not be done for tabs.
Spaces don't work for that anyway if you don't use a fixed pitch font. A line like that should start 'tab space space space space', anyway, for me – the real indentation level of the second part of the condition is the same as the start of the condition and the tabs (for code rolling up etc) should reflect that.
-
Here's some code with tabs. When you share code with tabs, it can be ugly.
public class MyClass
{
void MyFunction()
{
if (true)
{
for (int x = 0; x < 3; x++)
{
if (false)
continue;
}
}
}
}Steve Wellens
-
Tabs are great for offsetting text quickly. I usually set my environment, if I can, to tabs of four spaces and to fill out tabs with spaces on a save. Why don't I keep the tabs? Because once I insert the text where it belongs, I don't need the tabs, and the next guy to edit might have tabs set to eight columns, thus ruining my beautiful code layout.
cpkilekofp wrote:
I don't need the tabs, and the next guy to edit might have tabs set to eight columns, thus ruining my beautiful code layout.
Yes, but when he edits your code and growls at your 4-space tabs converted to spaces because they don't align with 8-space tabs, and he just ignores that, you'll get back uglified code. :) I think. :~ Marc
My Blog
The Relationship Oriented Programming IDE
Melody's Amazon Herb Site -
Spaces don't work for that anyway if you don't use a fixed pitch font. A line like that should start 'tab space space space space', anyway, for me – the real indentation level of the second part of the condition is the same as the start of the condition and the tabs (for code rolling up etc) should reflect that.
BobJanova wrote:
Spaces don't work for that anyway if you don't use a fixed pitch font.
I never code except in a fixed pitch font. I've never found code readability to be enhanced by using a proportional font, and often found it very distracting, so after a couple of experiments I stuck to Courier and continue to do so.
-
I used to think tabs were great, but that was before text editors got a clue. Now [Home] skips the whitespace and arrow keys navigate to sensible places. Tabs still aren't bad when used for indenting, but they (perhaps ironically) suck for aligning. For example in
if (something\_longer\_than\_this && something\_else\_long)
If tabs are used it risks becoming
if (something_longer_than_this &&
something_else_long)or
if (something\_longer\_than\_this && something\_else\_long)
Depending on someones settings. When tabs and spaces are mixed, things tend to go wrong, possibly because it's hard to tell the difference between a tab and a bunch of spaces especially when they've become mixed arbitrarily. Through copy/paste and incremental editing, whitespaces slowly become tab/space mixes that only accidentally have the right size for whatever edited it last. If everything is a space but the editor treats whitespace properly instead of "just an other character" IMO its disadvantages mostly disappear, but the advantages remain. The same could afaik not be done for tabs.
-
In a browser? Sure, because you can't set the tab stop. But how often do you do that? Code with 4 spaces per indent level is just as ugly as this to someone who prefers 1 or 2.
I usually set my tabs to 4 spaces. I do a lot of work in vim in a standard sized gui terminal (because I tend to have several of them open). It looks just fine, even when I open it in Gedit. The benefit of tabs is that if you think 4 is ugly, your editor will use whatever tab setting you have and you'd never know.
If it moves, compile it
-
cpkilekofp wrote:
I don't need the tabs, and the next guy to edit might have tabs set to eight columns, thus ruining my beautiful code layout.
Yes, but when he edits your code and growls at your 4-space tabs converted to spaces because they don't align with 8-space tabs, and he just ignores that, you'll get back uglified code. :) I think. :~ Marc
My Blog
The Relationship Oriented Programming IDE
Melody's Amazon Herb SiteLOL true. This gave rise to some "standards" battles in a couple of places I worked: 4-space tabs vs. eight-space vs. no-tabs-whatsoever in one case. Best solution? A pretty-printer plug-in that formats the code the way you want to see it.
-
Here's some code with tabs. When you share code with tabs, it can be ugly.
public class MyClass
{
void MyFunction()
{
if (true)
{
for (int x = 0; x < 3; x++)
{
if (false)
continue;
}
}
}
}Steve Wellens
-
Spaces instead of tabs is damn frustrating and irritating!
See if you can crack this: b749f6c269a746243debc6488046e33f
So far, no one seems to have cracked this!The unofficial awesome history of Code Project's Bob! "People demand freedom of speech to make up for the freedom of thought which they avoid."
Depending on your editor you can always refactor them. If you open a source file in something like vim you can use a quick search and replace. You can always put it back when you are done so when they get the file back they are still happy. You can use sed before and after you work in it. You can replace before you open, and then put it back to the authors preference after you are done.
If it moves, compile it
-
In the Coder Interview with Chris Sells[^], he writes: #2. Use spaces instead of tabs. Rule #2 is just good sense. Really? I use tabs, I love tabs, I think spaces are ridiculous. Why are spaces "just good sense?" Makes no sense to me! Why do tabs make sense to me? Well, they are less keystrokes when I'm indenting a line of code. I can easily "Ctrl-TAB" a few times to get everything flush against the left margin when copying code for an article or a document. The cursor skips all the whitespace for each tab. It would be annoying as hell to use spaces! Oh, and the tab key is a heck of a lot quieter on the keyboard then the spacebar! [edit]I'm obviously asking an obsolete question. CP Insider: Tabs vs. Spaces[^] [/edit] Marc
My Blog
The Relationship Oriented Programming IDE
Melody's Amazon Herb SiteThe classic solution to the indentation issue (and where braces go in C-like languages, etc.) is the pretty-printer. This is a language-sensitive tool which you may have to build yourself, but many languages have pretty-printers available for them with settings appropriate to that language. For languages that aren't whitespace-sensitive, this allows you to eliminate any whitespace except where required for string separation in the stored file while the pretty-printer formats the stored file into whatever viewing preference you have. This also works with any text editor: pretty-print the source file into a file you will edit, edit that file, then pretty-print it back into a compressed format. Hmmm, sounds like an article for someone there. As for Rule #2, to my mind, no assertion without an explanation or justification just makes good sense. One man's "common sense" is someone else's dearly acquired skill.
-
I usually set my tabs to 4 spaces. I do a lot of work in vim in a standard sized gui terminal (because I tend to have several of them open). It looks just fine, even when I open it in Gedit. The benefit of tabs is that if you think 4 is ugly, your editor will use whatever tab setting you have and you'd never know.
If it moves, compile it
-
In the Coder Interview with Chris Sells[^], he writes: #2. Use spaces instead of tabs. Rule #2 is just good sense. Really? I use tabs, I love tabs, I think spaces are ridiculous. Why are spaces "just good sense?" Makes no sense to me! Why do tabs make sense to me? Well, they are less keystrokes when I'm indenting a line of code. I can easily "Ctrl-TAB" a few times to get everything flush against the left margin when copying code for an article or a document. The cursor skips all the whitespace for each tab. It would be annoying as hell to use spaces! Oh, and the tab key is a heck of a lot quieter on the keyboard then the spacebar! [edit]I'm obviously asking an obsolete question. CP Insider: Tabs vs. Spaces[^] [/edit] Marc
My Blog
The Relationship Oriented Programming IDE
Melody's Amazon Herb SiteI don't use either. In fact I don't even bother with new lines. My source files consist of one great big long line with no new line at the end of it all. You wouldn't believe how it easy it has become to fix or maintain things. Whenever a question comes up, I just tell one of the junior guys, go and fix it on line 1 in the source file. :)
Chris Meech I am Canadian. [heard in a local bar] In theory there is no difference between theory and practice. In practice there is. [Yogi Berra] posting about Crystal Reports here is like discussing gay marriage on a catholic church’s website.[Nishant Sivakumar]
-
In the Coder Interview with Chris Sells[^], he writes: #2. Use spaces instead of tabs. Rule #2 is just good sense. Really? I use tabs, I love tabs, I think spaces are ridiculous. Why are spaces "just good sense?" Makes no sense to me! Why do tabs make sense to me? Well, they are less keystrokes when I'm indenting a line of code. I can easily "Ctrl-TAB" a few times to get everything flush against the left margin when copying code for an article or a document. The cursor skips all the whitespace for each tab. It would be annoying as hell to use spaces! Oh, and the tab key is a heck of a lot quieter on the keyboard then the spacebar! [edit]I'm obviously asking an obsolete question. CP Insider: Tabs vs. Spaces[^] [/edit] Marc
My Blog
The Relationship Oriented Programming IDE
Melody's Amazon Herb SiteI don't mind tabs for indenting code, but tabs on the "interior" of a line of code wreak havoc. I wish code editors would allow for indenting with tabs with the tab key and insert spaces with the tab key on the "interior" of lines. For that reason I always stick with "insert spaces with the tab key"
If your actions inspire others to dream more, learn more, do more and become more, you are a leader." - John Quincy Adams
You must accept one of two basic premises: Either we are alone in the universe, or we are not alone in the universe. And either way, the implications are staggering” - Wernher von Braun -
In the Coder Interview with Chris Sells[^], he writes: #2. Use spaces instead of tabs. Rule #2 is just good sense. Really? I use tabs, I love tabs, I think spaces are ridiculous. Why are spaces "just good sense?" Makes no sense to me! Why do tabs make sense to me? Well, they are less keystrokes when I'm indenting a line of code. I can easily "Ctrl-TAB" a few times to get everything flush against the left margin when copying code for an article or a document. The cursor skips all the whitespace for each tab. It would be annoying as hell to use spaces! Oh, and the tab key is a heck of a lot quieter on the keyboard then the spacebar! [edit]I'm obviously asking an obsolete question. CP Insider: Tabs vs. Spaces[^] [/edit] Marc
My Blog
The Relationship Oriented Programming IDE
Melody's Amazon Herb SiteWhere I work, the code has to go through certification and so a lot of people are looking at the source code using different editors and tools. We also automatically extract things like special comments out of the source code and using spaces makes it easier to view the result in any text editor. We have made it part of our coding standards not to have any tabs in the source code because they just don't come out consistently in all editors. Fortunately, VS has a convenient option to convert all tabs to spaces automatically, so we can still use the tab key for indenting :)