在vim中阻止缩进/取消缩进python代码

rya*_*lon 2 python vim pep8

我决定在我的python代码中从制表符切换到空格.以前,如果我想在vim中缩进/取消一段代码,我会使用>><<命令.

我正在使用python的vimrc设置添加到我的~/.vimrc:

source ~/.vimrc-python
Run Code Online (Sandbox Code Playgroud)

目前,似乎它将新选项卡设置为8个空格宽,当我阻止缩进/非缩进时,它将所有内容移动四个空格.

我怎么能得到一切以使它一致?

ask*_*han 5

试试这些:

set shiftwidth=4
set tabstop=4
set expandtab
Run Code Online (Sandbox Code Playgroud)

shiftwidth表示缩进与您正在使用的操作(<<>>)的距离.

tabstop 表示使用Tab键缩进的距离.

expandtab 将标签转换为空格.

作为[http://stackoverflow.com/users/2241874/bradd-szonye](Bradd Szonye)所指出的,你也可以做到交替

set shiftwidth=4
set softtabstop=4
set tabstop=8
set expandtab
Run Code Online (Sandbox Code Playgroud)

这意味着如果有一个实际的tab字符,它将显示为8列,但是按Tab键会产生4个空格.