Come posso ottenere colori diversi per le directory, ecc. In iTerm2?


26

Ho un nuovo MacBookPro e ho installato l'ultima versione di iTerm2.

Anche dopo aver importato varie combinazioni di colori, noto che cambiano solo il colore del testo e dello sfondo.

Quello che mi aspettavo di vedere erano diversi colori per i file VS directory, VS file nascosti, ecc. Ecc. Come posso farlo su iTerm2?

Una domanda correlata è come posso effettivamente specificare quali sono i colori delle directory, dei file, ecc.?

Grazie



Grazie @JohnN, che mi ha aiutato, ma per favore vedi la mia modifica.
Spacey,

Risposte:


26

Devi fare due cose:

  • imposta la LSCOLORSvariabile d'ambiente
  • creare un alias per in lsmodo che mostri i colori per impostazione predefinita

Nel tuo ~/.bash_profileaggiungi quanto segue:

export LSCOLORS="EHfxcxdxBxegecabagacad" 

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

I colori sono impostati da ogni bit sopra; il primo è in primo piano e il secondo come sfondo. I primi due personaggi si riferiscono a directory con un grassetto primo piano blu e uno sfondo grigio chiaro.

Tuttavia, c'è una grande utility online per vedere cosa significano e come appaiono ciascuno dei colori in tempo reale. Genererà anche il "codice" per te. (Non sono affiliato a questo). Funzionerà su MacOS / FreeBSD e Linux. Assicurati di selezionare l'opzione BSD per macOS.

Calcolatrice LSCOLORS


L'ordine degli attributi è il seguente:

1. directory
2. collegamento simbolico
3. presa
4. pipe
5. eseguibile
6. blocco speciale
7. personaggio speciale
8. eseguibile con setuid bit set
9. eseguibile con setgid bit set
10. directory scrivibile ad altri, con bit appiccicoso
11. directory scrivibile ad altri, senza appiccicoso

I nomi dei colori sono i seguenti:

un nero
b rosso
c verde
d marrone
e blu
f magenta
g ciano
h grigio chiaro
Un nero audace, di solito si presenta come grigio scuro
B rosso grassetto
C verde grassetto
D marrone audace, di solito si presenta come giallo
E grassetto blu
F grassetto magenta
G grassetto ciano
H grassetto grigio chiaro; sembra bianco brillante
x primo piano o sfondo predefinito

Ciao Allan, grazie! Un paio di domande, puoi spiegarci qualcosa in più su i) Perché devo metterlo in .bash_profile e non dire, il .zshrc penso che fosse, e ii) un po 'di più sulla parte di esportazione di LSCOLORS? Vado sul sito che hai citato e ho impostato la mia combinazione di colori da lì? Come funziona questo jive quindi con le combinazioni di colori di iterm2? Grazie!
Spacey,

Forse questo è ciò che mi confonde: sto usando iterm2. Cosa significa questo per quale file cambiamo? (.bash_profile VS .zshrc)? Per quello che vale, su questa nuova macchina al momento non ho nessuno ...
Spacey,

Ah, ok, l'eco mostra bash. Quindi dovrei creare un nuovo ~ / .bash_profile, suppongo che non esista.
Spacey,

4

Un'alternativa a LSCOLORSè GRC (il colorante GeneRic) , che può essere utilizzato praticamente con qualsiasi app della riga di comando, non solo ls.

Se hai Homebrew installato, installa grccon brew install grc- questo imposterà automaticamente gli alias, incluso per ls. Viene fornito con alias e file di configurazione per molti comandi diversi ed è (relativamente) banale hackerare un file di configurazione usando le espressioni regolari di Python per qualsiasi comando che grcattualmente non copre ( tmutile launchctl, per esempio).

(Stavo per aggiungere questo alla domanda che ho contrassegnato come possibile duplicato, ma con la tua modifica è probabilmente più utile qui!)


Ho installato grc e ls non è stato affatto colorato. 'type ls' dà '/ bin / ls', niente alias. Torna alla soluzione del profilo bash immagino.
6005

@ 6005, hai installato GRC con brew? (E si è installato correttamente, senza errori?) Cosa brew doctorsegnala - eventuali problemi? Quale shell stai usando e hai modificato la configurazione della shell? Potrebbe essere necessario modificare la tua .bash_profile(o configurazione per qualsiasi shell che usi) per generare gli alias GRC. Il mio .bash_profileha questo (anche se l'ho aggiunto da solo - la mia configurazione di bash è piuttosto esoterica ...):[ -f /usr/local/etc/grc.bashrc ] && . /usr/local/etc/grc.bashrc
John N

4

Apri bash_profile usando il comando:

open ~/.bash_profile

e aggiungi le seguenti righe:

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'

quindi fonte bash_profile usando:

source ~/.bash_profile

KayV cosa fa esattamente questo? Puoi espandermi per favore?
TheGrapeBeyond
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.