Как заставить vim применить подсветку синтаксиса /var/log/messages к любому файлу с именем «messages» или «messages-*»?

Как заставить vim применить подсветку синтаксиса /var/log/messages к любому файлу с именем «messages» или «messages-*»?

Мне нравится раскрашивание vim /var/log/messages, но оно работает только для этого – абсолютного имени файла. Оно не работает для старых ротаций сообщений (например, /var/log/messages-20120610) или для файлов сообщений, которые я получаю из других систем. Как мне это настроить?

решение1

Когда файл открыт, вы можете запустить:

:set filetype=messages

Чтобы автоматизировать этот процесс для всех файлов с именами messages, поместите следующее в ~/.vim/ftdetect/messages.vim:

autocmd BufNewFile,BufReadPost *messages* :set filetype=messages

решение2

добавить строку в ~/.vim/filetype.vim,

au BufNewfile,BufRead messages-* set filetype=messages

Связанный контент