44 votes

Comment obtenir des couleurs différentes pour les répertoires, etc. dans iTerm2 ?

J'ai un nouveau MacBookPro, et j'ai installé la dernière version d'iTerm2.

Même après avoir importé divers schémas de couleurs, je constate qu'ils ne modifient que la couleur du texte et du fond.

Ce que je m'attendais à voir, ce sont des couleurs différentes pour les fichiers VS les répertoires, VS les fichiers cachés, etc etc. Comment faire ça sur iTerm2 ?

Une question connexe est de savoir comment spécifier ce que je veux que les couleurs des répertoires, des fichiers, etc. soient ?

Merci

49voto

Douglas Points 10417

Vous devez faire deux choses :

  • fixer le LSCOLORS variable d'environnement
  • créer un alias pour ls pour qu'il affiche les couleurs par défaut

Dans votre ~/.bash_profile ajoutez ce qui suit :

export LSCOLORS="EHfxcxdxBxegecabagacad" 

alias ls='ls -lGH'        <-----This shows in list format, follow symlinks colorized

Les couleurs sont définies par chaque bit ci-dessus ; le premier étant le premier plan et le second l'arrière-plan. Les deux premiers caractères font référence à des répertoires ayant un premier plan bleu gras et un arrière-plan gris clair.

Cependant, il existe un excellent utilitaire en ligne qui permet de voir la signification et l'apparence de chacune des couleurs en temps réel. Il peut même générer le "code" pour vous. (Je ne suis pas du tout affilié à cet utilitaire). Il fonctionne aussi bien sous MacOS/FreeBSD que sous Linux. Assurez-vous de sélectionner l'option BSD pour MacOS.

Calculateur LSCOLORS


L'ordre des attributs est le suivant :

1\.   directory
2.   symbolic link
3.   socket
4.   pipe
5.   executable
6.   block special
7.   character special
8.   executable with setuid bit set
9.   executable with setgid bit set
10.   directory writable to others, with sticky bit
11.   directory writable to others, without sticky

Les désignateurs de couleurs sont les suivants :

a    black
b    red
c    green
d    brown
e    blue
f    magenta
g    cyan
h    light grey
A    bold black, usually shows up as dark grey
B    bold red
C    bold green
D    bold brown, usually shows up as yellow
E    bold blue
F    bold magenta
G    bold cyan
H    bold light grey; looks like bright white
x    default foreground or background

21voto

KayV Points 301

Ouvrez bash_profile en utilisant la commande :

open ~/.bash_profile

et ajoutez les lignes suivantes :

export PS1="\[\033[36m\]\u\[\033[m\]@\[\033[32m\]\h:\[\033[33;1m\]\w\[\033[m\]\$ "
export CLICOLOR=1
export LSCOLORS=ExFxBxDxCxegedabagacad
alias ls='ls -GFh'

puis source bash_profile en utilisant :

source ~/.bash_profile

10voto

Dfranc3373 Points 121

Pour toute personne utilisant zsh Voici ce que j'ai pu faire sur ma machine pour que cela fonctionne :

1. Créez le fichier .zshrc

touch .zshrc

2. Ajoutez-les au fichier

PS1="%{%F{033}%}%n%{%f%}@%{%F{green}%}%m:%{%F{yellow}%}%~%{$%f%}%  "
export CLICOLOR=1
export LSCOLORS=ExFxBxDxCxegedabagacad

3. Redémarrer l'iTerm2

Cela produira un terminal qui ressemble à ceci

Picture of my terminal with colors on for example

J'y suis parvenu grâce aux différentes réponses apportées dans ce fil :

https://stackoverflow.com/questions/689765/how-can-i-change-the-color-of-my-prompt-in-zsh-different-from-normal-text#2534676

Nous vous recommandons vivement ce fil de discussion pour en savoir plus sur le fonctionnement des personnalisations.

7voto

John N Points 1418

Une alternative à LSCOLORS est GRC (le colorateur GeneRic) qui peut être utilisé avec presque toutes les applications en ligne de commande, et pas seulement avec l'application de l'UE. ls .

Si vous avez installé Homebrew, installez grc avec brew install grc - cela configurera automatiquement des alias, y compris pour les éléments suivants ls . Il est fourni avec des alias et des fichiers de configuration pour de nombreuses commandes différentes, et il est (relativement) facile de créer un fichier de configuration en utilisant des expressions régulières Python pour n'importe quelle commande qui grc ne couvre pas actuellement ( tmutil y launchctl par exemple).

(J'allais ajouter ceci à la question que j'ai signalée comme un double possible, mais avec votre modification, c'est probablement plus utile ici !)

LesApples.com

LesApples est une communauté de Apple où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres utilisateurs d'appareils Apple, poser vos propres questions ou résoudre celles des autres.

Powered by:

X