¿Cómo resalto la línea actual y el cursor en .vimrc?

14

Estoy tratando de resaltar la línea actual, así como la posición del cursor en Vim. Aquí está mi .vimrc:

set cursorline
hi CursorLine ctermbg=8 ctermfg=15 "8 = dark gray, 15 = white
hi Cursor ctermbg=15 ctermfg=8

El problema que estoy experimentando es que el color de fondo de la línea actual cubre el color de fondo del cursor, por lo que se ve así:

La línea actual se resalta pero el cursor no.

Obviamente puedo decir dónde está el cursor porque el color de primer plano es casi negro, pero cuando el cursor está en un espacio o al principio / final de una línea, no tengo idea de dónde está a menos que lo mueva.

El cursor está al final de la línea, aunque nunca lo sabrías.

¿Qué estoy haciendo mal aquí?

David Kennedy
fuente

Respuestas:

14

Debe cambiar el color de la línea del cursor a un color que no sea el color del cursor. Si está en un emulador de terminal como sto rxvt, Vim no puede cambiar el color de su cursor; siempre será el color que su aplicación de terminal decida hacer. Solo la versión gráfica de Vim puede cambiar el color de su cursor.

Sin embargo, puede cambiar el color del cursor a través de la configuración de su terminal.

Algunos ~/.Xdefaults/ ~/.Xresourcesejemplos:

XTerm*cursorColor: #FFFFFF
URxvt.cursorColor: white

También puede usar el comando Vim :set cursorcolumnpara poner el cursor en la mira.


fuente
2
vimpodría cambiar el color del cursor, en esos terminales como xtermese le permiten cambiarlo dinámicamente ( printf '\033]12;#f50\7'por ejemplo). También puede cambiarlo a un bloque parpadeante o subrayar ( \e[1 qo \e[3 q)
Stéphane Chazelas
Eso es interesante. No sabía que esas secuencias de escape existían. Hay información sobre su uso con vim aquí .
6

Si no desea ingresar el comando cada vez que inicie Vim, debe colocar los comandos en su .vimrcarchivo.

whereis vim    
*#type in your linux terminal* 

(tendrá una ubicación diferente, pero su combinación de colores estará aquí /usr/share/vim/vim74/colors/.

Puede enumerar los esquemas de color existentes con

ls /usr/share/vim/vim74/colors/    

pruebe diferentes esquemas de color de los listados

:colorscheme desert
:colorscheme delek

El siguiente comando en Vim activa una línea vertical en la ubicación del cursor.

set cursorcolumn 
hi CursorColumn ctermbg=8

alternar (con el signo de exclamación, funciona con todos los comandos de configuración)

set cursorcolumn!

por ejemplo:

set cursorline
set cursorline!

hi CursorLine ctermbg=235
*#defines a gray colour for the horizontal line*

Aquí hay una tabla con colores xterm: enlace

Use un número definiendo ctermbg=... (... = número de color de la tabla) También puede intentarlo ctermfg=..., pero no vale la pena usarlo.

spinne
fuente