web-dev-qa-db-fra.com

Comment puis-je configurer la couleur du répertoire 'ls' sous zsh

J'utilise 'zsh'. Dans certains répertoires, quand je fais 'ls --color = tty'. Je vois que certains répertoires ont un "texte bleu" avec un "arrière-plan vert", ce qui les rend difficiles à lire.

Pouvez-vous s'il vous plaît me dire comment configurer cela?

Je vous remercie.

18
michael

En supposant que vous utilisez GNU ls, vous pouvez spécifier les couleurs à l'aide de la variable d'environnement LS_COLORS (notez qu'il s'agit d'un GNU ls feature et non spécifique à zsh).

GNU Coreutils a un programme appelé dircolors pour vous aider à convertir un fichier de configuration facile à éditer en une variable LS_COLORS appropriée (compliquée). Voir man dircolors pour la commande et man dir_colors pour la syntaxe du fichier de configuration.

Vous pouvez

  1. utilisez dircolors --print-database >! dircolors.default pour enregistrer les valeurs par défaut (il contient un texte d’explication), puis modifiez-le.
  2. Google pour les fichiers dircolors préconfigurés (tels que celui-ci https://github.com/seebi/dircolors-solarized (je n’ai aucune relation pour ça)).

Une fois cela fait, vous aurez besoin de dircolors pour transformer cela en LS_COLORS approprié. Notez que dircolors affiche les formats bash et csh. Pour zsh, vous devez utiliser la sortie au format bash-.

PS: Utilisez ls --color=auto au lieu de ls --color=tty.

25
Francisco