J'ai un problème avec la couleur bleu foncé dans la sortie vim
ou ls
. Parce que j'utilise la couleur de fond noir, les mots colorés en bleu foncé sont presque complètement invisibles. Comment puis-je résoudre ce problème?
Vous pouvez modifier le thème de couleur de vim avec l'option background
. Utilisation
set background=dark
dans votre session en cours ou définissez-le de façon permanente dans votre vimrc.
La sortie de ls
est configurée avec /etc/DIR_COLORS
. Voir manpage pour plus d'informations. Les paramètres peuvent être remplacés par un ~/.dir_colors
(Sur Ubuntu: ~/.dircolors
- voir l'entrée dans ~/.bashrc
) dans votre répertoire personnel.
Une entrée comme
DIR 01;36
produira un arrière-plan plus lisible avec du cyan.
Plutôt que de configurer des applications pour éviter le bleu sur le noir, je recommande de configurer votre terminal pour rendre le bleu plus visible. La plupart des émulateurs de terminaux ont un paramètre pour cela. Dans xterm, il existe une ressource X:
XTerm.VT100.color4: CornflowerBlue
Dans les autres émulateurs de terminal, recherchez dans le fichier de configuration ou la boîte de dialogue les paramètres de couleur ou les thèmes.
Il existe une séquence de contrôle commune pour définir la teinte associée à un numéro de couleur de l'application: OSC 4 ; c ; spec BEL
où OSC
est ESC ]
, c
est le numéro de couleur et spec
est une spécification de couleur telle que #RGB.
printf %b '\e]4;4;#6495ed\a' # set the blue shade to CornflowerBlue
Un changement par l'application n'est effectif que jusqu'à la prochaine réinitialisation du terminal. Si vous utilisez cette méthode (uniquement recommandée si votre terminal ne dispose pas d'un mécanisme de configuration), pour rendre le changement effectivement persistant, ajoutez la séquence d'échappement de la configuration des couleurs à la chaîne de réinitialisation de votre terminal (termcap: r1
chaîne; terminfo: rs1
chaîne).
Voir aussi Remplacement de la nuance de couleur affichée , Puis-je définir les couleurs des terminaux de ma machine locale pour utiliser celles de la machine Je ssh dans? .
n moyen plus rapide de définir la couleur du répertoire ls
pour votre session de terminal:
1. Ouvrez votre terminal, exécutez la commande 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 ~ $
C'est vous perroquet la commande pour vous de définir les couleurs pour ls. Le "di" signifie répertoire. 34 est le mauvais bleu foncé. 36 est cyan. Permet donc de le coller et de le changer dans le terminal.
2. Copiez le tout dans le terminal, en faisant une seule modification
Vous changez le di=01;34
à di=01;36
comme ça:
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
. Cela définit immédiatement les couleurs du répertoire sur cyan
do an 'ls' and see that directories are indeed cyan.
4. Rendre permanente l'étape ci-dessus
Rendez-le permanent en plaçant les commandes ci-dessus au bas de votre ~/.bashrc comme ceci:
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 vous mettez ceci dans votre ~/.bashrc et (redémarrez le terminal ou source ~/.bashrc
), les couleurs doivent toujours être correctes.
Si vous informez vim que vous utilisez un fond noir (ou un thème sombre), cela éclaircira toutes les couleurs afin qu'elles soient lisibles:
:set bg=dark
Cela chargera les couleurs ls
pour le shell actuel, remplaçant le bleu par le cyan.
eval `dircolors | sed -e 's/;34:/;36:/'`
Il définit la variable d'environnement LS_COLORS
.
En utilisant xfce4-terminal , j'ai lutté avec ce problème pendant longtemps jusqu'à ce qu'il ait vraiment cassé mon travail.
J'ai découvert que l'on peut changer la représentation des différentes couleurs dans la "Palette" dans les paramètres "xfce4-terminal". Pour que le bleu foncé soit représenté en bleu clair ou tout autre élément qui correspond à votre couleur de fond. Voir capture d'écran: