既然能找到这篇文章的童鞋,肯定知道为什么要这么做。理由就不详述了,需要注意的是,例如Python,如果Tab是Tab,那么,例如下边这个
def fun():
afterPuerTab()
afterPuerTab1()
afterOneSpace()
afterOneSpace1()
afterFourSpace()
afterFourSpace1()
afterFourTabs()
afterFourTabs1()
值得注意的时,在这种时候,程序的层级关系就不是我们看到的这样了。前两句afterPuerTab()在编译的时候,居然和afterOneSpace()这两句是一样的,虽然看起来,它们的层级关系完全不同。同理,afterFourSpace()居然和最后两句的层级关系是一样的。这在编译的时候,就会各种报错。因为层级关系并不是你看到的这样。所有在Google的Python编程规范中,要求不要用TAB,而用SPACE,但是一直按SPACE不是很麻烦么,幸好vim有这样的转换方式,可以把一个TAB变成几个SPACE。
For indentation without tabs, the principle is to set 'expandtab', and set 'shiftwidth' and 'softtabstop' to the same value, while leaving 'tabstop' at its default value:
set expandtab
set shiftwidth=2
set softtabstop=2
参考地址:http://vim.wikia.com/wiki/Indenting_source_code