VIM tiene soporte para emparejar pares de llaves, paréntesis y corchetes. Esto es genial para editar lenguajes de estilo C como PHP y Javascript. ¿Pero qué pasa con las etiquetas HTML coincidentes?
Notepad ++ ha tenido esta característica durante el tiempo que la he estado usando. Poder detectar dónde comienzan y terminan los bloques de HTML es muy útil. Lo que estoy buscando es algo como esto para vim (ver las etiquetas div verdes):
(una característica adicional: resaltar etiquetas HTML no cerradas, como la etiqueta roja en esta captura de pantalla).
matchit se ha propuesto como el siguiente mejor producto, pero requiere una pulsación de tecla adicional para usar su funcionalidad. Me gustaría poder ver dónde comienzan y terminan los bloques de HTML sin presionar una tecla adicional.
He rastreado internet para encontrar algo así para vim. Al parecer, no soy el único, de acuerdo con otros 2 StackOverflow preguntas y nabble .
Casi me he resignado a que vim no pueda hacer coincidir visualmente las etiquetas html. ¿Es posible que vim haga esto?
Anexo: Si actualmente no es posible hacer esto con los complementos existentes, ¿algún asistente de vimscript tiene punteros sobre cómo abordar la escritura de un complemento adecuado?
Respuestas:
Tuve que trabajar con algo de HTML hoy, así que pensé en abordar esto. Se agregó un ftplugin a vim.org que debería resolver su problema.
Puede obtenerlo aquí en vim.org .
Puedes conseguirlo aquí en github .
Espero que funcione para ti. Hasme saber si tienes algunos problemas.
fuente
El complemento MatchTag.vim de Greg es increíble, pero quería algo más. Quería que las etiquetas adjuntas siempre estuvieran resaltadas, no solo cuando el cursor está en una de las etiquetas.
Así que escribí MatchTagAlways, que hace todo lo que hace MatchTag de Greg y también siempre resalta la etiqueta adjunta, sin importar dónde esté el cursor en el código. También funciona con etiquetas no cerradas y lenguajes de plantillas HTML como Jinja o Handlebars.
Aquí hay un GIF que lo muestra en acción:
fuente
Vine aquí buscando corchetes angulares de estilo html a juego en Vim. Esto parece funcionar:
fuente