Vim: подсветка синтаксиса для разных расширений файлов

Есть ли способ сделать ту же подсветку синтаксиса для разных расширений файлов?

например: То же выделение для

foo.c and foo.my_c_extension

Ответ 1

Vim установит подсветку синтаксиса на основе буфера filetype. Вы можете установить filetype через autocmd для соответствия нескольким расширениям файлов.

Например, когда файл загружается или создается в буфере с расширениями .c или .my_c_extension, для параметра filetype будет установлено значение c:

" In .vimrc, for example:
autocmd BufRead,BufNewFile *.c,*.my_c_extension set filetype=c

Подробнее см. :help filetype и :help autocmd.

В соответствии с помощью справки filetype вы можете создать ~/.vim/ftdetect/file_extension.vim, который содержит autocmd. Это будет загружено после других правил, что позволит вам переопределить настройки, ранее сделанные Vim или плагинами. Это может быть предпочтительнее установить его в .vimrc.

" File: ~/.vim/ftdetect/my_c_extension.vim
autocmd BufRead,BufNewFile *.my_c_extension set filetype=c

Ответ 2

Если вы не хотите, чтобы тип файла был одинаковым (возможно, у него есть некоторые нежелательные побочные эффекты), и просто хотите установить синтаксис, вы можете использовать следующее:

autocmd BufRead,BufNewFile *.my_c_extension set syntax=c