terminal - manager - iterm2 transparency
¿Dónde se define el color de la línea del cursor? (3)
Si configuro la opción de cursor, obtengo mi línea de cursor actual subrayada y todos los caracteres cuyo color no se especifique también cambian a amarillo (el amarillo aparece solo si el grupo de resaltado Normal no está tocado). Me pregunto, ¿dónde se define este color (amarillo)?
Editar: Sé sobre el grupo de resaltado CursorLine
. El problema es que en el esquema de colores predeterminado que estoy usando no está definido y :hi CursorLine
muestra
CursorLine xxx term=underline cterm=underline
donde xxx es de color amarillo y subrayado. No quiero cambiar el color, quiero agregar el soporte de la 2html.vim
de 2html.vim
para el complemento 2html.vim
así que necesito un poco de resaltar el grupo / variable / etc. de donde puedo obtener este color amarillo.
En coloescemes, la propiedad del color de la línea de cursor simplemente se llama "CursorLine". Por ejemplo, el esquema de colores de wombat usa esta línea:
hi CursorLine guibg=#2d2d2d
Si desea cambiar un esquema de colores predeterminado, los archivos se almacenan (en la mayoría de las distribuciones de Linux) en / usr / share / vim / vim72 / colours.
Solo una nota: la opción CursorLine solo funciona desde Vim 7 hacia arriba, por lo que para el caso muy improbable de utilizar ese esquema de color con una versión anterior a 7 (o Vi), debe solicitar la versión en el archivo colorcheme, por ejemplo:
if version >= 700
hi CursorLine guibg=#2d2d2d
endif
Editar: puede consultar la mayoría de los valores para un grupo resaltado particular con la función synIDattr()
. Por ejemplo, esto imprimirá el color de primer plano asignado a CursorLine
si se ha configurado uno:
:echo synIDattr(synIDtrans(hlID("CursorLine")), "fg")
También puede determinar el estado de underline
, undercurl
, etc. con llamadas similares.
Un par de advertencias: synIDattr()
tiene errores y está incompleto. Algunas veces devuelve -1 de forma inesperada, y actualmente no permite inspeccionar todos los atributos. (Supuestamente, se está preparando un parche para una próxima versión de Vim). Consulte estos hilos para obtener más información:
¿Detecta programáticamente una configuración actual de "resaltado"?
Si synIDattr()
no hará lo que usted desea, podría ser más fácil redirigir el resultado del comando highlight
a una variable y analizarlo usted mismo:
:redir => cursorline_highlight | silent highlight CursorLine | redir END
:echo "CursorLine highlight: " . cursorline_highlight
El color de la línea del cursor se puede establecer con un comando de highlight
como este:
:highlight CursorLine term=underline guibg=#555555 cterm=underline
Esto normalmente se realiza dentro de un archivo de colores de Vim, que contiene muchas de esas líneas para definir los colores de las partes de la interfaz de usuario de Vim, así como para elementos sintácticos comunes como cadenas, números, palabras clave, etc.
Puede decirle a Vim qué combinación de colores utilizar emitiendo el comando colorscheme
seguido de un nombre de esquema. Aquí hay algunos para probar:
:colorscheme desert
:colorscheme evening
:colorscheme koehler
Sin embargo, la mayoría de los esquemas de colores incluidos con Vim no contienen en realidad un comando de resaltado para el elemento CursorLine
, por lo que Vim solo usa su coloreado de línea de cursor predeterminado incorporado.
Para cambiar los colores que Vim usa para la línea de cursor, puede incluir su propio comando de highlight
en su archivo .vimrc
( después de que haya emitido un comando de colorscheme
colores, de lo contrario, sus colores resaltados podrían colorscheme
). Mejor aún, puede crear su propio archivo de colorcheme y agregar allí la declaración destacada apropiada. (Facilítelo al encontrar un esquema de colores tolerable, luego cópielo y realice los cambios que desee).
Vim incluye varios archivos de esquema de colores, y puede encontrar muchos más en línea. Aquí hay un sitio que muestra algunos cientos:
http://code.google.com/p/vimcolorschemetest/
Consulte los siguientes temas de ayuda para obtener más información:
:help :colorscheme
:help :highlight
:help hl-CursorLine
Consulte también http://vim.wikia.com/wiki/Configuring_the_cursor para conocer otras formas de personalizarlo