2013-02-26 22 views
2

Я решаю переключиться с табуляции на пробелы в моем коде python. Раньше, если бы я хотел сделать отступ/unindent блоком кода в vim, я бы использовал команды или <<.Блок отступов/отступов кода python в vim

Я использую the vimrc setup for python, добавив его к моему ~/.vimrc:

source ~/.vimrc-python 

В настоящем время, по-видимому она устанавливает новые вкладки, чтобы быть 8 пространством в ширине, и когда я блокирую отступ/Ун-отступ двигается все на четыре пространства.

Как я могу получить все, чтобы он был последовательным?

+1

Хорошая ссылка: http://tedlogan.com/techblog3.html – askewchan

ответ

5

Попробуйте эти:

set shiftwidth=4 
set tabstop=4 
set expandtab 

shiftwidth показывает, как далеко отступа с операциями (<< и >>) вы используете.

tabstop указывает, как далеко отступать клавиша табуляции.

expandtab преобразует вкладки в пробелы.

As [http://stackoverflow.com/users/2241874/bradd-szonye](Bradd Szonye) указывает, вы также можете альтернативно сделать

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

, что означает, что если существует реальная tab символ, он будет отображаться как 8 столбцов, но нажатие клавиши табуляции дает 4 пробела.

+0

Спасибо! Файл, с которым я связан, имеет значение «tabstop», равное 8, что любопытно, поскольку это должно соответствовать рекомендациям pep8. Он также предназначен для источника C, поэтому я задаюсь вопросом, является ли это компромиссом между этими двумя. – ryanjdillon

+0

Должен признаться, я не смотрел ваш файл. Похоже, он пытается определить, написан ли файл на C или в python и соответственно изменяется. Если вы хотите, чтобы ваши вкладки были простыми/согласованными без учета языка, вы можете просто скопировать три строки из моего ответа в ваш '~/.vimrc' и вообще не использовать связанный файл. – askewchan

+0

Да, я делал это, но иногда пишу на C, и думал, что это может быть хорошим решением. – ryanjdillon

Смежные вопросы