Vim: How to set preference for custom file types?

I can set the custom filetype settings for the know file types using the *.vim files in ftplugin directory, e.g. c.vim for (c, cpp, h, hxx), python.vim etc.

But I want to set the file types for the custom file extension like *.text, *.letter, *.journal etc. I tried using text.vim and so on but that didn't work.


Solution 1:

You are looking for autocommands. Add a line for each custom file extension in your .vimrc:

au! BufRead,BufNewFile *.ext setfiletype ext

Then you can specify settings for .ext files in ftplugin/ext.vim.

PS: Note that autocommands must be defined inside an augroup.

Solution 2:

You are looking for :h new-filetype.