vim中Python编辑问题

我的Vim关于Python的配置文件如下“

let g:pydiction_location='C:\program files\vim\vimfiles\ftplugin\pydiction\complete-dict'
filetype plugin on
set autoindent
syntax enable
set softtabstop=4
set shiftwidth=4

现在在终端运行的时候,老是显示inconsistent use of tabs and spaces in indentation ,好像是不一致的tabs和空格缩进。后来我用idle编辑,好像就是缩进不一致造成的,但不知道是那个配置文件错误引起的。我的系统是win7,是不是系统问题。
请高手帮忙解决。

第1个回答  推荐于2017-11-28
python是靠缩进来决定语句的层次关系的,所以你的缩进风格一定要统一,并且不能把空格和tab混起来用,而不幸的,你的softtabstop就是干这个坏事的。把你上面贴的设置语句中的最后两句改成

set expandtab
set tabstop=4
set shiftwidth=4
set softtabstop=4

这样就总是把tab映射成4个空格,绝对不会有缩进方面的问题,而且还可以用backspace一次把4个空格删掉。

或者你想用纯粹的tab,那就不要把tab映射成空格,用下面的配置,tab宽度是4

set noexpandtab
set tabstop=4
set shiftwidth=4
set softtabstop=0 "一定要设置成0本回答被提问者采纳