vim ide editor syntax-highlighting highlighting

Resaltado de contexto VIM



ide editor (3)

Creo que el resaltado estándar es útil, hasta cierto punto. Al programar con devoluciones de llamada y estructuras anidadas, esto no ayuda. Las palabras clave y las cadenas aparecen en todas partes, y ayuda cuando se muestran en un color distinto, pero estos colores no dan ninguna pista sobre en qué ámbito estoy, dónde estoy en un punto de vista léxico.

En una charla de Douglas Crockford, he oído hablar del resaltado del contexto , en el que no recuerdo una url. La idea es, para resaltar los niveles léxicos de alcance. Las definiciones de nivel de personas están coloreadas en color0 , las declaraciones de bloque de nivel interno están coloreadas en color1 , y esto se repite recursivamente cada vez que se introduce un nuevo nivel de alcance. A continuación se muestra un ejemplo para esto, utilizando algunas bibliotecas de nodos imaginarios. (Ahora se agrega un ejemplo (ish (o esquema lisp))

Esto no es necesariamente para el nodo o javascript. Me pregunto si hay un editor / vim plugin implementando este tipo de característica. No sé si el resaltado de contexto es la palabra para esto, pero no puedo encontrar uno. Buscar en Google para el resaltado de contexto muestra resultados para el resaltado genérico basado en token y ConTeXt (sobre el que no tengo ni idea).

¿Existe esto? ¿Hay un editor implementa esto? Y lo más importante, ¿puedo tener esto en vim?

Otra pregunta que es idéntica a la mía, sin una respuesta real: ¿Está implementado el Color de contexto de Crockford en cualquier editor de código?


Ahora hay un complemento para esto en VIM llamado vim-js-context-coloring . Solo he jugado con él un poco y todavía no estoy muy impresionado, ¡pero parece prometedor!

Nota: debe instalar npm y luego ejecutar npm install en el directorio donde está instalado el complemento. Lamentablemente, olvidé leer las instrucciones cuando lo instalé.


No es exactamente lo que está solicitando, pero el plegado de código es una característica poderosa que le permite concentrarse en niveles específicos de su código. Vim admite plegar http://vim.wikia.com/wiki/Folding

Las guías de intervención también son muy útiles para centrarse en partes específicas del código. El editor de texto sublime tiene esto ( http://sublimetext.userecho.com/topic/98136-indent-guide-highlighting-changed/ )

Vi este complemento para vim ( https://github.com/nathanaelkane/vim-indent-guides ) que parece hacer lo mismo.

Posiblemente podría crear un resaltador de sintaxis que use la lógica de sangría de este complemento para cambiar la combinación de colores. Lo que usted describe es más complejo donde necesita trabajar, no solo a partir de la sangría, sino como un analizador de lenguaje.


Tampoco pude encontrar nada similar, así que escribí uno:

rainbow_levels.vim : un enfoque diferente para resaltar el código.

Por supuesto, es una implementación muy simplista, solo que considera niveles de sangría en lugar de un contexto real, pero hace el trabajo; D