¿Cómo hacer que vim aplique / var / log / messages resaltando la sintaxis a cualquier archivo llamado "messages" o "messages- *"?

17

Me encanta la coloración de vim /var/log/messages, pero solo funciona para eso: el nombre de archivo absoluto. No funciona para rotaciones de mensajes anteriores (p /var/log/messages-20120610. Ej. ) O para archivos de mensajes que obtengo de otros sistemas. ¿Cómo puedo modificar esto?

rsaw
fuente

Respuestas:

30

Cuando tenga el archivo abierto, puede ejecutar:

:set filetype=messages

Para automatizar esto para todos los archivos llamados mensajes, ingrese lo siguiente en ~/.vim/ftdetect/messages.vim:

autocmd BufNewFile,BufReadPost *messages* :set filetype=messages
Thor
fuente
1
¡BRILLANTE! Usaré "mensajes *", pero esto es exactamente lo que quería. Me encanta. Muchas gracias.
rsaw
-1

agrega una línea ~/.vim/filetype.vim,

au BufNewfile,BufRead messages-* set filetype=messages
Stardiviner
fuente
Gracias por responder Chris. No funciono para mi.
rsaw
Chris, quieres decir ftdetect.vim?
Stefan Majewsky
1
No, ~/.vim/ftdetect/es un directorio ~/.vim/filetype.vim, todos au BufNewfile,BufRead ... set ft=..pueden poner en este archivo. más simple.
stardiviner
No se recomienda usar ese archivo. Los documentos de Vim dicen: :help new-filetype "... De cualquier manera, es mejor no modificar el archivo $ VIMRUNTIME / filetype.vim. Se sobrescribirá al instalar una nueva versión de Vim".
Volker Siegel
1
~/.vim/No es el $VIMRUNTIMEnivel del sistema. No se sobrescribirá con el nuevo Vim instalado.
stardiviner