Achei um link definitivo. Um HowTo da ibiblio.org, efim, quem quiser pode ir ler a informação original, possui muitos detalhes interessantes que eu não usei e não explico aqui, mas resumidamente o processo constitui em declarar uma variável no sistema: a LS_COLORS.
A forma mais fácil de fazer isso é criando um arquivo ~/.colourrc.
Antes de qualquer coisa precisamos de um arquivo básico (para não criar toda a configuração do zero) e obtemos esse arquivo básico com o comando:
dircolors -p >~/.colourrc
Para me ajudar na explicação, eu reproduzo uma parte do arquivo abaixo
# Configuration file for dircolors, a utility to help you set
# the LS_COLORS environment variable used by GNU
# ls with the --color option.
# The keywords COLOR, OPTIONS, and EIGHTBIT
# (honored by the slackware version of dircolors) are
# recognized but ignored.
# Aqui vem declarado todos os terminais na qual as cores
# funcionam é claro que são mais de dois... eu é que
# cortei o resto desse exemplo
TERM linux
TERM xterm
# Abaixo está algumas dicas de como personalizar as cores
# e estilos.
# Mudar as cores significa modificar os códigos numéricos
# 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
FILE 00
DIR 01;34 # destaque para os diretórios
LINK 01;36 # Link simbólico
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
EXEC 01;32 # com permissão de execução
# Abaixo está um dos itens mais interessantes
# permite personalizar as cores de links inválidos
# abaixo está:
# fundo preto (40) com letras vermelhas (31)
# e em negrito (01)
# eu modifico a cor do fundo para amarelo,
# (43) no lugar de (40)
ORPHAN 40;31;01
# Abaixo as personalizações por tipo de arquivo
# cada extensão está seguida por um código
# que é a cor e estilo que o comando retorna para o arquivo
# Podemos, por exemplo, diferenciar o .deb do .rpm
# verá que a lista gerada pelo comando acima é bem
# maior que essa.
.tar 01;31
.deb 01;31
.rpm 01;31
.jar 01;31
# aqui tem outra coisa interessante,
# imagens, vídeos e arquivos de som tem a mesma cor
# e estilo.
# image formats
# Não está errado, ele chama de "image formats"
# tanto as imagens como os vídeos
.jpg 01;35
.avi 01;35
# audio formats
.mp3 01;35
.wav 01;35
Pode pegar o meu ~/.colourrc para servir de exemplo. Esse não muda muita coisa, mas já é diferente do default.
Bem, agora que temos o ~/.colourrc temos que carregar as variáveis de ambiente e fazemos isso através do comando:
eval $(dircolors ~/.colourrc)
Esse comando deve ser executado cada vez que o shell for aberto, nesse caso, eu coloquei no meu ~/.bashrc (a versão do ~/.bashrc disponível no blog ainda não tem isso incluso)
Considerações gerais:
- É claro que muita coisa pode ser feita com base nessas idéias, a que eu sempre me lembro é que ao invés de usar um ~/.colourrc eu poderia usar um /etc/colourrc, ou seja, definir cores e estilos para todos os usuários programando o /etc/bashrc.
- Saiba .wav é diferente .WAV ou de .WaV.
- Só por curiosidade, depois de "instalar" o seu ~/.colourrc digite "echo $LS_COLORS".
- O nome do arquivo pode ser outro, um .coresrc ou um .cores, o importante é que a chamada de "eval $(dircolors ~/.colourrc)" referencie o arquivo correto no local correto. Eu diria que é interessante que ele seja oculto, essas coisas podem ficar a critério de cada um.
- Caso exista um ~/.colourrc na sua distro é melhor fazer um backup do arquivo antes.
Mitre,
ReplyDeleteManda esse .conf ai lá na seção de .Confs! :-)
Pra eu poder publicar ele e guardar pra eternidade, hehehe. Dica boa essa ai!