2014-12-10 3 views
7

В моих ~/.vimrc я поставил вкладку мне-места длинныхVim, длина вкладки отличается для файлов .py

set shiftwidth=2 
set tabstop=2 

Однако когда я открываю .py файл, вкладки длиной 4 пробела. У меня нет конкретной конфигурации для файлов python. ~/.vim/after пусто и ищет py не вызывает никаких подозрительных строк.

Вы когда-нибудь испытывали это? Как решить такое поведение?

+0

Вы хотите сказать, что когда вы открываете файл _existing_ Python (который, вероятно, уже имеет 4-пробелы)? Vim не будет автоматически привязываться к вашей предпочтительной настройке, если это то, что вы имеете в виду. –

+0

Нет, vim отображает '\ t' как 4 пробела, как при открытии существующего файла (с вкладками для отступов), так и при создании нового файла с расширением' .py' – Amxx

ответ

9

Это определено в общем Python Filetype плагином файл ($VIMRUNTIME/ftplugin/python.vim):

" As suggested by PEP8. 
setlocal expandtab shiftwidth=4 softtabstop=4 tabstop=8 

Это должно быть так, чтобы соответствовать с PEP 8.


@Carpetsmoker добавляет:

Существует a discussion about this на ВИМ-DEV @ списка.

Вы можете сбросить его, используя это в своем ~/.vimrc; например:

aug python 
    " ftype/python.vim overwrites this 
    au FileType python setlocal ts=4 sts=4 sw=4 noexpandtab 
aug end 

Или путем добавления настроек конфигурации в $HOME/.vim/after.

+0

Почему вы удалили мои правки? Мне это кажется полезной информацией? Я изначально сделал свой собственный ответ, но вся информация в одном ответе казалась лучше, потому что это уменьшает количество «шума» и дублирует информацию. – Carpetsmoker

+0

Я не уверен в этикете здесь, но я думаю, что редактирование не полностью соответствует разделу «как отредактировать» на экране редактирования (► исправить грамматические или орфографические ошибки ► прояснить смысл, не меняя его; ► исправить мелкие ошибки ► добавлять связанные ресурсы или ссылки ► всегда уважать оригинального автора): это больше, чем просто исправление грамматических или орфографических ошибок, разъяснение смысла без его изменения или исправление мелких ошибок; он не добавляет (внешние) ресурсы или ссылки; и он добавил, что я не писал под своим именем без моего предварительного согласия. –

+0

Я заново отредактирую его; скажите, если новая формулировка в порядке с вами. –

0

Возможно, у вас есть плагин для облегчения редактирования python, и эти плагины снова устанавливают некоторые параметры vim.

Вы можете узнать:

  • открыт один ру файл, проверьте, если значение отступа/shiftwidth является 4
  • затем запустить команду: :verbose set ts и :verbose set sw

вы можете увидеть варианты были установлены в последний раз.

+0

. Значения, которые переопределены в '/ usr/share/vim/vim74/ftplugin/python.vim', как указано в моей Júda Ronén – Amxx

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