¿Cómo establecer el color de fondo solo para la ventana activa de Vim?

16

Una característica pequeña pero visualmente agradable, y que aumenta ligeramente la usabilidad, me gustaría que Vim use un color de fondo diferente para la ventana activa.

Aquí hay un bosquejo de lo que estoy buscando:

ingrese la descripción de la imagen aquí

Normalmente ese vim tendría todo el fondo en negro, pero si solo la ventana activa tuviera su propio color para resaltar la atención del usuario. ¡Destacar solo la barra de estado solo no es suficiente!

unperson325680
fuente

Respuestas:

8

Heptita, gracias por la idea.

Acabo de reemplazar WinEnter y WinLeave autocmd's para agregar / eliminar números de línea delante de cada línea:

augroup BgHighlight
    autocmd!
    autocmd WinEnter * set number
    autocmd WinLeave * set nonumber
augroup END

Ahora es más elegante rastrear qué ventana está activa.

t0d0r
fuente
Esto es genial Lástima que no me gustan mucho los números de línea, por lo que es demasiado estético.
unperson325680
3

Los grupos resaltados que controlan el color de fondo predeterminado son " Normal" y " NonText". Desafortunadamente, estos son aspectos destacados "globales" y no se pueden "localizar" por ventana.

Sin embargo, aquí hay un ejemplo muy feo y torpe:

augroup BgHighlight
    autocmd!
    resalte ActiveWindow guibg = lightblue
    autocmd WinEnter * call matchadd ('ActiveWindow', '. *', 10, 1682)
    autocmd WinLeave * call matchdelete (1682)
augroup END

doautocmd BgHighlight WinEnter -

Dado que esto es solo un ejemplo, tendrá que modificarlo para adaptarlo a sus necesidades individuales, como agregar un ctermbg = ... resaltar junto con guibg = ...

El inconveniente es que esto solo resaltará el fondo del texto existente en los archivos, no toda la línea / ventana. (Como dije, feo y grosero).

Heptita
fuente
Buen pensamiento, pero el patrón .*solo coincide con el texto de un archivo; nada del resto del fondo. Además, solo lo conseguí trabajando en terminal con ctermbgpropiedad. Extraño ...
unperson325680 9/10/10
Lo siento, debería haber sido más claro en mi respuesta. Lo he editado
Heptita