zsh: Prompt colorido dinamicamente

Publicado por Sandro Marcell em 28/09/2010

[ Hits: 10.943 ]

Blog: http://sanmarcell.wordpress.com

 


zsh: Prompt colorido dinamicamente



No zsh existe uma função built-in chamada 'precmd' que sempre executa uma ação antes de exibir o prompt para o usuário, e uma forma de uso bem interessante para ela é a seguinte:

function precmd {
   PROMPT=$(print -Pn "%n > [%~] :" | perl -e 'print("%{\e[" => int(rand(7)) + 31 => ";1m%}" => $i) while (read(STDIN, $i, 1)); print("%{\e[0m%} ");')
}

Desta forma a precmd altera dinamicamente o conteúdo da variável PROMPT imprimindo na tela cada caractere com cores diferentes conforme a figura a seguir:
Linux: zsh: Prompt colorido dinamicamente
Para usá-la, basta adicionar a função em seu '.zshrc' e pronto!

Mais informações?

man zsh
$ man perl


Falou!

PS.: Acabei encontrando na net uma versão que usa somente comandos do próprio do zsh:

function precmd {
   eval toresbe="${(j:%%\{\\e\[1\;$(((RANDOM % 7) + 31))m%%\}:)${(s::)$(print -P 'X%n@%m:%~')}}%%#"
   PROMPT="$(print -P ${toresbe#?} %%{\\e\[0m%%})"
}

E que faz exatamente a mesma coisa que a primeira! =]

Outras dicas deste autor

jQuery + PHP = Monitor de status

js-bwm: monitorando seu link de internet em tempo real

Overclock em placas de vídeo NVIDIA

Substituir espaços em branco por underlines em nome de arquivos

Adicionando Extensões em Arquivos

Leitura recomendada

Instalação do Skype no Debian

Pacote do Firefox para o Debian Etch 4.0 Linux

História das interfaces gráficas

Instalação do Synapse no Ubuntu

Formatando Pendrives no Linux Mint 16 MATE

  

Comentários
[1] Comentário enviado por albfneto em 28/09/2010 - 15:47h

ZSH é massa, eu uso também...

[2] Comentário enviado por /bin/laden em 29/09/2010 - 08:37h

Realmente o zsh é fantástico, possui características incríveis.



Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts