Is there a way where I can set vim to configure itself based on the filetype? So for example, text files have the equivalent of

:set spell :syntax off

Where a C source file has

:syntax on :smartindent on

Thanks for any help.

link|improve this question

65% accept rate
feedback

3 Answers

VIM 'ftplugins' are there exactly for this purpose.

http://vimdoc.sourceforge.net/htmldoc/usr_43.html#filetype-plugin

link|improve this answer
feedback

I like my python files correct, so my .vimrc has:

augroup filetypedetect
        au BufNewFile,BufRead *.py set ts=4 sw=4 et ai
augroup END
link|improve this answer
feedback

You should use :setl[ocal] instead of :set for things like ts, sw, et and ai.

However some things are global and can not be set per buffer and :syntax is one of them. You may try this to turn syntax off for current file:

:setl ft=

And as Jacek has pointed out ftplugins are the way.

link|improve this answer
feedback

Your Answer

 
or
required, but never shown

Not the answer you're looking for? Browse other questions tagged or ask your own question.