2010-04-19 16 views

Respuesta

18

Una forma sería añadir un AutoCommand a su .vimrc para archivos que no tienen el conjunto de sintaxis:

au BufNewFile,BufRead * if &syntax == '' | set syntax=html | endif 

O bien, puede establecer el tipo de archivo para cualquier archivo que no está definido por:

filetype plugin on 
au BufNewFile,BufRead * if &ft == '' | set ft=html | endif 

Configuración filetype plugin on junto con el comando au da el beneficio añadido de plugins HTML de carga si tiene alguno. Esto también establece la sintaxis a "html" también.

+0

¡Muchas gracias! – zly

0

Si lo recuerdo bien, puede poner un archivo llamado syntax.vim dentro de su carpeta ~/.vim/syntax. Este archivo se usa como fuente de resaltado de sintaxis predeterminada. Si no existe la carpeta de .vim, hay que crearla:

mkdir ~/.vim 
mkdir ~/.vim/syntax 
touch ~/.vim/syntax/syntax.vim 

Ahora usted puede añadir su sintaxis predeterminada para el archivo syntax.vim. Para obtener más documentación, puede consultar el vim sourceforge page.

Espero que esto ayude.

+0

no es lo que pedí .. lo siento – zly

+0

Entonces sea más preciso acerca de su problema en su descripción ... no es muy descriptivo en este momento. – apparat

+0

Algunos archivos no tienen extensiones (sufijos) ¿no? Caso en particular, los archivos html en los que trabajo no tienen sufijos .html. Se nombran así: archivo1, archivo2, etc. Ahora, me gustaría que vim establezca automáticamente la sintaxis html cuando abro esos archivos sin extensión. ¿Cómo puedo hacer eso? – zly

4

Para recoger la sintaxis predeterminada para los archivos sin una extensión, puede crear un AutoCommand que comprueba si el nombre de archivo contiene un ., y si no es así, cambia a la sintaxis deseada:

autocmd BufNewFile,BufRead * if expand('%:t') !~ '\.' | set syntax=perl | endif 

Ésta recoge perl como una sintaxis predeterminada, pero puede simplemente usar lo que sea apropiado.

Cuestiones relacionadas