Sistema basato su GNU
echo $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:mi=01;05;37;41: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:*.arc=01;31:*.arj=01;31:*.taz=01;31:*.lha=01;31:*.lz4=01;31:*.lzh=01;31:*.lzma=01;31:*.tlz=01;31:*.txz=01;31:*.tzo=01;31:*.t7z=01;31:*.zip=01;31:*.z=01;31:*.Z=01;31:*.dz=01;31:*.gz=01;31:*.lrz=01;31:*.lz=01;31:*.lzo=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:*.alz=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.cab=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=01;36:*.au=01;36:*.flac=01;36:*.mid=01;36:*.midi=01;36:*.mka=01;36:*.mp3=01;36:*.mpc=01;36:*.ogg=01;36:*.ra=01;36:*.wav=01;36:*.axa=01;36:*.oga=01;36:*.spx=01;36:*.xspf=01;36:*.txt=00;33:
vim /etc/DIR_COLORS
vim ~/.dir_colors
eval "$(dircolors /etc/DIR_COLORS)"
eval "$(dircolors $HOME/.dir_colors)"
/etc/DIR_COLORS
# Configuration file for the color ls utility
# Synchronized with coreutils 8.5 dircolors
# This file goes in the /etc directory, and must be world readable.
# You can copy this file to .dir_colors in your $HOME directory to override
# the system defaults.
# COLOR needs one of these arguments: 'tty' colorizes output to ttys, but not
# pipes. 'all' adds color characters to all output. 'none' shuts colorization
# off.
COLOR tty
# Extra command line options for ls go here.
# Basically these ones are:
# -F = show '/' for dirs, '*' for executables, etc.
# -T 0 = don't trust tab spacing when formatting ls output.
OPTIONS -F -T 0
# Below, there should be one TERM entry for each termtype that is colorizable
TERM Eterm
TERM ansi
TERM color-xterm
TERM con132x25
TERM con132x30
TERM con132x43
TERM con132x60
TERM con80x25
TERM con80x28
TERM con80x30
TERM con80x43
TERM con80x50
TERM con80x60
TERM cons25
TERM console
TERM cygwin
TERM dtterm
TERM eterm-color
TERM gnome
TERM gnome-256color
TERM jfbterm
TERM konsole
TERM kterm
TERM linux
TERM linux-c
TERM mach-color
TERM mlterm
TERM putty
TERM rxvt
TERM rxvt-256color
TERM rxvt-cygwin
TERM rxvt-cygwin-native
TERM rxvt-unicode
TERM rxvt-unicode256
TERM screen
TERM screen-256color
TERM screen-256color-bce
TERM screen-bce
TERM screen-w
TERM screen.linux
TERM vt100
TERM xterm
TERM xterm-16color
TERM xterm-256color
TERM xterm-88color
TERM xterm-color
TERM xterm-debian
# EIGHTBIT, followed by '1' for on, '0' for off. (8-bit output)
EIGHTBIT 1
# Below are the color init strings for the basic file types. A color init
# string consists of one or more of the following numeric codes:
# Attribute codes:
# 00=none 01=bold 04=underscore 05=blink 07=reverse 08=concealed
# Text color codes:
# 30=black 31=red 32=green 33=yellow 34=blue 35=magenta 36=cyan 37=white
# Background color codes:
# 40=black 41=red 42=green 43=yellow 44=blue 45=magenta 46=cyan 47=white
#NORMAL 00 # no color code at all
#FILE 00 # normal file, use no color at all
RESET 0 # reset to "normal" color
DIR 01;34 # directory
LINK 01;36 # symbolic link (If you set this to 'target' instead of a
# numerical value, the color is as for the file pointed to.)
MULTIHARDLINK 00 # regular file with more than one link
FIFO 40;33 # pipe
SOCK 01;35 # socket
DOOR 01;35 # door
BLK 40;33;01 # block device driver
CHR 40;33;01 # character device driver
ORPHAN 40;31;01 # symlink to nonexistent file, or non-stat'able file
MISSING 01;05;37;41 # ... and the files they point to
SETUID 37;41 # file that is setuid (u+s)
SETGID 30;43 # file that is setgid (g+s)
CAPABILITY 30;41 # file with capability
STICKY_OTHER_WRITABLE 30;42 # dir that is sticky and other-writable (+t,o+w)
OTHER_WRITABLE 34;42 # dir that is other-writable (o+w) and not sticky
STICKY 37;44 # dir with the sticky bit set (+t) and not other-writable
# This is for files with execute permission:
EXEC 01;32
# List any file extensions like '.gz' or '.tar' that you would like ls
# to colorize below. Put the extension, a space, and the color init string.
# (and any comments you want to add after a '#')
# executables (bright green)
#.cmd 01;32
#.exe 01;32
#.com 01;32
#.btm 01;32
#.bat 01;32
#.sh 01;32
#.csh 01;32
# archives or compressed (bright red)
.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
.tbz 01;31
.tbz2 01;31
.bz 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
# image formats (magenta)
.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
# http://wiki.xiph.org/index.php/MIME_Types_and_File_Extensions
.axv 01;35
.anx 01;35
.ogv 01;35
.ogx 01;35
# audio formats (cyan)
.aac 01;36
.au 01;36
.flac 01;36
.mid 01;36
.midi 01;36
.mka 01;36
.mp3 01;36
.mpc 01;36
.ogg 01;36
.ra 01;36
.wav 01;36
# http://wiki.xiph.org/index.php/MIME_Types_and_File_Extensions
.axa 01;36
.oga 01;36
.spx 01;36
.xspf 01;36
Sequenze di colore ISO 6429 (ANSI)
man dir_colors
Maggior parte dei terminali ASCII colore-capace oggi usano sequenze di colore ISO 6429 (ANSI), e molti terminali comuni senza possibilità di colore, tra cui xterm e l'ampiamente usato e clonato DEC VT100, riconoscere i codici di colore ISO 6429 e innocuo eliminarli dall'uscita o emularli. ls
utilizza i codici ISO 6429 per impostazione predefinita, supponendo che la colorazione è abilitato.
Sequenze di colore ISO 6429 sono composti da sequenze di numeri separati da punti e virgola. I codici più comuni sono:
0 | restore default color | ||
1 | brighter colors | ||
4 | underlined text | ||
5 | flashing text | ||
30 | black foreground | 40 | black background |
31 | red foreground | 41 | red background |
32 | green foreground | 42 | green background |
33 | yellow (or brown) foreground | 43 | yellow (or brown) background |
34 | blue foreground | 44 | blue background |
35 | purple foreground | 45 | purple background |
36 | cyan foreground | 46 | cyan background |
37 | white (or gray) foreground | 47 | white (or gray) background |
Non tutti i comandi funzionano su tutti i sistemi o dispositivi di visualizzazione.
ls
utilizza le seguenti impostazioni predefinite:
NORMAL | 0 | Normal (nonfilename) text |
FILE | 0 | Regular file |
DIR | 32 | Directory |
LINK | 36 | Symbolic link |
ORPHAN | undefined | Orphaned symbolic link |
MISSING | undefined | Missing file |
FIFO | 31 | Named pipe (FIFO) |
SOCK | 33 | Socket |
BLK | 44;37 | Block device |
CHR | 44;37 | Character device |
EXEC | 35 | Executable file |
Alcuni programmi di terminale non riconoscono correttamente il valore predefinito. Se tutto il testo verrà essere colorato dopo fai un elenco delle cartelle, è possibile modificare i codici NORMAL e FILE per i tuoi codici numerici per il tuoi colori normali di primo piano e di sfondo.
Sistema basato su BSD
echo $LSCOLORS
exgxcxdxbxexexabagacad
export CLICOLOR=1
export LSCOLORS=exgxcxdxbxexexabagacad
LSCOLORS=exfxcxdxbxegedabagacad
man ls
Il valore di questa variabile viene descritto che colore da utilizzare per l'attributo quando colori sono attivati con CLICOLOR (cioè export CLICOLOR = 1
nel .bashrc
). Questa stringa è una concatenazione di coppie del formato fb
, dove f
è il colore di primo piano
e b
è il colore di sfondo
.
KEY | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 |
LS | ex | fx | cx | dx | bx | eg | ed | ab | ag | ac | ad |
KEY | ATTRIBUTE | LS | FORMAT |
---|---|---|---|
1 | directory | e | foreground |
x | background | ||
2 | symbolic link | f | foreground |
x | background | ||
3 | socket | c | foreground |
x | background | ||
4 | pipe | d | foreground |
x | background | ||
5 | executable | b | foreground |
x | background | ||
6 | block special | e | foreground |
g | background | ||
7 | character special | e | foreground |
d | background | ||
8 | executable with setuid bit set | a | foreground |
b | background | ||
9 | executable with setgid bit set | a | foreground |
g | background | ||
10 | directory writable to others, with sticky bit | a | foreground |
c | background | ||
11 | directory writable to others, without sticky bit | a | foreground |
d | background |
Gli indicatori di colore sono come segue:
NORMAL (lower case Letter) | BOLD (upper case letter) | ||
---|---|---|---|
a | black | A | bold black, usually shows up as dark grey |
b | red | B | bold red |
c | green | C | bold green |
d | yellow/brown | D | bold yellow/brown, usually shows up as yellow |
e | blue | E | bold blue |
f | magenta | F | bold magenta |
g | cyan | G | bold cyan |
h | light grey | H | bold light grey; looks like bright white |
x | default foreground or background |
Risultato visivo per exfxcxdxbxegedabagacad
:
PAIR | KEY | ATTRIBUTE |
---|---|---|
ex | 1 | directory |
fx | 2 | symbolic link |
cx | 3 | socket |
dx | 4 | pipe |
bx | 5 | executable |
eg | 6 | block special |
ed | 7 | character special |
ab | 8 | executable with setuid bit set |
ag | 9 | executable with setgid bit set |
ac | 10 | directory writable to others, with sticky bit |
ad | 11 | directory writable to others, without sticky bit |
Il valore predefinito è exfxcxdxbxegedabagacad
, ovvero blu primo piano e sfondo predefinito per regolari cartelli, nero in primo piano e rosso sfondo per file eseguibili setuid, ecc.
Colori ANSI terminal
Si noti che quanto sopra sono colori ANSI standard. La visualizzazione effettiva può differire a seconda delle funzionalità di colore del terminale in uso. È possibile impostare il tuo terminale come questo:
Normal | Bright | |
---|---|---|
Black | ||
Red | ||
Green | ||
Yellow | ||
Blue | ||
Magenta | ||
Cyan | ||
White |
Combinazione di colori Tomorrow Night Eighties
Pure Prompt
Si combinano con un bel prompt e l'esperienza terminale è quasi perfetto.
Ottenere il bellissimo tema di Sindre Sorhus da qui.
Se si sta eseguendo un manager di ambiente zsh
l'integrazione è semplice come questo:
# example for zgen
zgen load mafredri/zsh-async
zgen load sindresorhus/pure
Questo è tutto. Senza npm install
, o symlinks
, anche autoload -U promptinit; promptinit
e senza prompt pure
.
Dovrebbe essere per impostazione predefinita in $fpath
.