vim detecta filetype por extensão.
Se você quiser destacar a sintaxe para o arquivo sem extensão, faça isso depois de abrir o arquivo.
:set ft=sh
assumindo que o arquivo é um script bash. ft representa o tipo de arquivo. Da mesma forma, você pode obter realce de sintaxe para outros arquivos, definindo o tipo de arquivo para xml, html, php, python de acordo. Se você precisar de mais informações sobre isso,
:help ft
Espero que isso ajude.
edit: para retenção de tipos de arquivos.
Esta é apenas uma solução temporária.
if &filetype == ""
set viewoptions=options
autocmd BufWinLeave * mkview
autocmd BufWinEnter * loadview
endif
Adicione isto ao seu arquivo vimrc. Esse código armazena o tipo de arquivo e outras opções locais definidas para o arquivo quando o vim sai. Você precisa definir o tipo de arquivo apenas uma vez.
As opções armazenadas são perdidas quando o arquivo é renomeado. Você terá que definir o tipo de arquivo mais uma vez para armazená-lo.
Para mais informações sobre isso, leia o manual do vim para os comandos.
:help mkview
:help loadview
:help viewoptions