tutorial descargar commands comandos vim syntax-highlighting vim-syntax-highlighting

descargar - Integración de sintaxis incrustada en Vim



vim editor commands (2)

Tengo un formato de archivo XML personalizado que puede contener bloques de código dentro de ciertas etiquetas.

Por ejemplo:

<Root> <Sql> select * from foo </Sql> <MoreJunk> ... </MoreJunk> <Python><![CDATA[ def Bar(*args): return False ]]></Python> </Root>

¿Cómo puedo hacer que Vim use el resaltado de sintaxis SQL para el texto dentro de las etiquetas <Sql> y usar el resaltado de Python para el texto dentro de las etiquetas <Python> ?

Sé que Vim ya puede hacer esto porque resalta correctamente Javascript dentro de los archivos HTML.

Intenté inspeccionar el archivo de sintaxis HTML pero no pude resolverlo.


Para su ejemplo de XML con Python, tendría que hacer algo como esto:

runtime! syntax/xml.vim unlet b:current_syntax syntax include @Python syntax/python.vim syntax region pythonCode start=+<Python>+ keepend end=+/</Python>+ contains=@Python

Estas líneas incluirán la sintaxis XML y la sintaxis de python, y especificará una región de python donde VIM utilizará la sintaxis de python en lugar de la sintaxis XML ...

Por supuesto, todo esto está bien documentado en VIM. Ver : he: syn-include sobre cómo incluir archivos de sintaxis.


Este documento describe cómo escribir su propio resaltado de sintaxis. Probablemente deberías ser capaz de descubrir cómo el resaltado de sintaxis HTML funciona con javascript, con eso como referencia.