Есть два основных способа. Используйте плагин filetype, или используйте автокоманды filetype или extension.
Автокоманды (помещенные в ваш .vimrc / _vimrc) имеют вид
autocmd Filetype cpp set textwidth=100
или
autocmd BufRead *.cpp,*.h,*.c set textwidth=100
(очевидно, set textwidth=100
можно заменить любой другой командой)
Лучшим решением, особенно если у вас есть много пользовательских команд для типа файла, является использование файлов ~/.vim/after/ftplugin/<filetype>.vim
для каждого типа файла. Команды в этих файлах будут выполняться после загрузки файла данного типа.