Как настроить параметры синтаксиса в моем VIMRC?

4139
sa125

Я работаю с несколькими языками и разметками в vim каждый день (ruby, python, javascript, CSS, HTML и т. Д.) И хотел бы иметь разные настройки для каждого буфера, когда я запускаю свой редактор. Как я могу определить, какой синтаксис загружен в текущий буфер?

В частности, я действительно предпочитаю, чтобы отступ для Python составлял 4 пробела, в то время как другие языки находятся с 2. Я представлял что-то подобное в моем .vimrcфайле:

if syntax == 'python' set softtabstop=4 set shiftwidth=4 else if syntax == 'html' " ... endif 

Что-нибудь подобное в vim? Благодарю.

4

2 ответа на вопрос

7
Ignacio Vazquez-Abrams

Используйте FileTypeсобытие автокоманды. Смотрите :h autocmd.txtподробности.

au Filetype python source ~/.vim/scripts/python.vim 
Зачем создавать нестандартные каталоги? -> ~ / .vim / ftplugin! Luc Hermitte 13 лет назад 2
Спасибо - я решил использовать вашу идею с некоторыми изменениями: `au FileType python set softtabstop = 4 | установить смещение = 4` sa125 13 лет назад 1
2
Luc Hermitte

ft-плагины - это то, что вы ищете.

Смотрите следующие ответы: