Color azul oscuro en salida vim o ls en linux

58

Tengo un problema con el color azul oscuro vimo la lssalida. Como uso el color de fondo negro, las palabras de color azul oscuro son casi completamente invisibles. ¿Cómo puedo solucionar este problema?

Gilles 'SO- deja de ser malvado'
fuente
posible duplicado de Anular el tono de color que se muestra
Gilles 'SO- deja de ser malvado'
1
La otra cosa que puedes hacer es cambiar los colores ellos mismos. Se supone que ninguno de los colores (incluso los "oscuros") no se puede leer sobre un fondo negro. Si pudiera especificar qué terminal está utilizando, se podría proporcionar más información si la pregunta vinculada ya no ayuda con esto.
Random832
Esto parece un problema con algunas pantallas o salidas de tarjetas de video. Este azul predeterminado (que parece ser al menos más o menos igual en la consola de Linux y en algunos emuladores de terminal) es legible en algunas pantallas y no legible en otras.
njsg

Respuestas:

55

Puede modificar el tema de color de vim con la backgroundopción. Utilizar

set background=dark

en su sesión actual o configúrelo de forma permanente en su vimrc.

La salida de lsse configura con /etc/DIR_COLORS. Vea la página de manual para más información. La configuración se puede sobrescribir con un archivo ~/.dir_colors(en Ubuntu: ~/.dircolors- ver entrada ~/.bashrc) en su directorio de inicio.

Una entrada como

 DIR 01;36 

producirá un fondo más legible con cian.

echox
fuente
Para aquellos nuevos en bash: después de crear su archivo (por ejemplo, ~/.dircolors) como se indica aquí, solo tiene source ~/.bashrcque verlo funcionando. Gracias por esta respuesta!
Marcus
26

En lugar de configurar aplicaciones para evitar el azul sobre negro, recomiendo configurar su terminal para que el azul sea más visible. La mayoría de los emuladores de terminal tienen una configuración para eso. En xterm, hay un recurso X:

XTerm.VT100.color4: CornflowerBlue

En otros emuladores de terminal, busque en el archivo de configuración o en el cuadro de diálogo la configuración de color o los temas.

Hay una secuencia de control común para establecer el tono asociado con un número de color de la aplicación: OSC 4 ; c ; spec BELdonde OSCestá ESC ], ces el número de color y speces una especificación de color como #RGB.

printf %b '\e]4;4;#6495ed\a'  # set the blue shade to CornflowerBlue

Un cambio por la aplicación solo es efectivo hasta el próximo reinicio del terminal. Si utiliza este método (solo recomendado si su terminal carece de un mecanismo de configuración), para que el cambio sea persistente, agregue la secuencia de escape de configuración de color a la cadena de reinicio de su terminal (termcap: r1cadena; terminfo: rs1cadena).

Consulte también Anulación del tono de color que se muestra , ¿Puedo configurar los colores de terminal de mi máquina local para usar los de la máquina en la que ssh? .

Gilles 'SO- deja de ser malvado'
fuente
Al principio parecía una sugerencia poco convincente, pero teniendo en cuenta que no puedo leer la mitad de los colores oscuros y ninguno de mis programas utiliza colores de fondo sólidos donde la oscuridad podría ser razonable, ¡esto tiene mucho sentido!
M Conrad
Solarized ( ethanschoonover.com/solarized ) tiene buenos esquemas de color para varios emuladores de terminal y otros programas.
David
10

Una forma más rápida de configurar el lscolor del directorio para su sesión de terminal:

1. Abra su terminal ejecute el comando dircolors:

machines@box790 ~ $ dircolors
LS_COLORS='rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:su=37;41:sg=30;43:ca=30;41:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arj=01;31:*.taz=01;31:*.lzh=01;31:*.lzma=01;31:*.tlz=01;31:*.txz=01;31:*.zip=01;31:*.z=01;31:*.Z=01;31:*.dz=01;31:*.gz=01;31:*.lz=01;31:*.xz=01;31:*.bz2=01;31:*.bz=01;31:*.tbz=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.rar=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.jpg=01;35:*.jpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.svgz=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.flv=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.cgm=01;35:*.emf=01;35:*.axv=01;35:*.anx=01;35:*.ogv=01;35:*.ogx=01;35:*.aac=00;36:*.au=00;36:*.flac=00;36:*.mid=00;36:*.midi=00;36:*.mka=00;36:*.mp3=00;36:*.mpc=00;36:*.ogg=00;36:*.ra=00;36:*.wav=00;36:*.axa=00;36:*.oga=00;36:*.spx=00;36:*.xspf=00;36:';
export LS_COLORS
machines@box790 ~ $ 

Le está mandando el comando para que configure los colores para ls. El 'di' significa directorio. 34 es el mal azul oscuro. 36 es cian. Así que peguemos y cambiemos a la terminal.

2. Copie todo eso en la terminal, haciendo un solo cambio

Cambias el di=01;34para que te di=01;36guste esto:

machines@box790 ~ $ LS_COLORS='rs=0:di=01;36:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:su=37;41:sg=30;43:ca=30;41:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arj=01;31:*.taz=01;31:*.lzh=01;31:*.lzma=01;31:*.tlz=01;31:*.txz=01;31:*.zip=01;31:*.z=01;31:*.Z=01;31:*.dz=01;31:*.gz=01;31:*.lz=01;31:*.xz=01;31:*.bz2=01;31:*.bz=01;31:*.tbz=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.rar=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.jpg=01;35:*.jpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.svgz=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.flv=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.cgm=01;35:*.emf=01;35:*.axv=01;35:*.anx=01;35:*.ogv=01;35:*.ogx=01;35:*.aac=00;36:*.au=00;36:*.flac=00;36:*.mid=00;36:*.midi=00;36:*.mka=00;36:*.mp3=00;36:*.mpc=00;36:*.ogg=00;36:*.ra=00;36:*.wav=00;36:*.axa=00;36:*.oga=00;36:*.spx=00;36:*.xspf=00;36:';

machines@box790 ~ $ export LS_COLORS

3. Esto establece los colores del directorio en cian inmediatamente

do an 'ls' and see that directories are indeed cyan.

4. Haga que el paso anterior sea permanente

Hágalo permanente colocando los comandos anteriores en la parte inferior de su ~ / .bashrc de esta manera:

LS_COLORS='rs=0:di=01;36:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:su=37;41:sg=30;43:ca=30;41:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arj=01;31:*.taz=01;31:*.lzh=01;31:*.lzma=01;31:*.tlz=01;31:*.txz=01;31:*.zip=01;31:*.z=01;31:*.Z=01;31:*.dz=01;31:*.gz=01;31:*.lz=01;31:*.xz=01;31:*.bz2=01;31:*.bz=01;31:*.tbz=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.war=01;31:*.ear=01;31:*.sar=01;31:*.rar=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.jpg=01;35:*.jpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.svgz=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.webm=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.flv=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.cgm=01;35:*.emf=01;35:*.axv=01;35:*.anx=01;35:*.ogv=01;35:*.ogx=01;35:*.aac=00;36:*.au=00;36:*.flac=00;36:*.mid=00;36:*.midi=00;36:*.mka=00;36:*.mp3=00;36:*.mpc=00;36:*.ogg=00;36:*.ra=00;36:*.wav=00;36:*.axa=00;36:*.oga=00;36:*.spx=00;36:*.xspf=00;36:';
export LS_COLORS

Si coloca esto en su ~ / .bashrc y (reinicie el terminal o source ~/.bashrc), los colores aún deberían ser correctos.

Eric Leschinski
fuente
2
La combinación de colores para los colores de dir puede guardarse en un archivo legible para humanos y aplicarse desde bashrc con eval " dircolors -b ~/.dir_colors". Vea aquí ejemplos de esquemas de colores.
alexei
ahora mi enlace simbólico es del mismo color que dir
ealeon
@ealeon Ah, parece que los directorios diy enlaces simbólicos lntienen el mismo color que 01;36. Siéntase libre de cambiar esos colores, si esa distinción particular es importante para usted. Este esquema de colores es el predeterminado que encontré dando vueltas.
Eric Leschinski
8

Si le informa a vim que está utilizando un fondo negro (o un tema oscuro), aclarará todos los colores para que sean legibles:

:set bg=dark
Caleb
fuente
1
eval `dircolors | sed -e 's/;34:/;36:/'`
Spongman
fuente