Overriding MacVim's default filetype.vim when assigning filetypes

1.3k views Asked by At

In the default filetype.vim that comes with MacVim, I have the following:

au BufNewFile,BufRead *.erb,*.rhtml setf eruby

I installed MacVim using Homebrew, and I've installed Janus. Following the instructions from Janus, I've created ~/.vimrc.local to store my local customizations. I want to set the filetype for *.html.erb files to html.eruby.eruby-rails, so I added the following line to ~/.vimrc.local.

autocmd BufNewFile,BufRead *.html.erb setf html.eruby.eruby-rails

However, it appears that the filetype is still being selected by MacVim's default filetype.vim instead of picking up my change in ~/.vimrc.local.

What do I need to do differently, so as to have MacVim properly designate *.html.erb files as filetype html.eruby.eruby-rails without modifying the default filetype.vim?

2

There are 2 answers

0
Matthew Rankin On

Well, I tried the following and it seems to work:

autocmd FileType eruby set ft=html.eruby.eruby-rails

However, if I understand correctly, this is changing all files that the default filetype.vim designates as eruby to a filetype of html.eruby.eruby-rails.

0
Randy Morris On

Change setf in your autocmd to set ft=. If you take a look at :help setf it says it will not set the filetype if it has already been set elsewhere.