zsh: Prompt colorido dinamicamente

Publicado por Sandro Marcell em 28/09/2010

[ Hits: 10.250 ]

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

php-meter: Medidor que mostra o consumo de banda no link de internet

Habilitando correção ortográfica no Vim

CAT - Descobrindo informações sobre sua distribuição

Declarando constantes em shell scripts

Ordenando strings em shell script

Leitura recomendada

Como instalar o SciDavis no Linux Mint 2020

Squid3 Debian - Erro Google Chrome - NET::ERR_CERT_WEAK_SIGNATURE_ALGORITHM [Resolvido]

Instalando o VirtualBox no CentOS 6

Mostrar ou ocultar ícones da área de trabalho no Debian 9 MATE

Usando o slackpkg

  

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