beepop - popups com o texto digitado

Publicado por Perfil removido (última atualização em 03/06/2017)

[ Hits: 1.102 ]

Download beepop




Script inicialmente feito pelo z3bra, com algumas modificações minhas.

Ele deve ser executado preferencialmente com .xinitrc, no seu servidor Xorg.

Ele fica em background lendo texto que é enviado ao seu FIFO, se criar um symlink para o beepop com o nome de popup, você pode usar assim:

$ popup teste 1 2 3

Se não quiser pode só dar echo no FIFO.

$ echo teste 1 2 3 > "$XDG_RUNTIME_DIR"/beepop.fifo

Note que XDG_RUNTIME_DIR/beepop.fifo é o caminho padrão, edite o script para mudar.

  



Esconder código-fonte

#!/bin/sh
#
# depends: lemonbar, wattr, txtw, printf, awk and common sense

FIFO=$XDG_RUNTIME_DIR/beepop.fifo
SLEEP=1
CHAR="$(/usr/bin/printf '\uE054')"
FONT="Misc Termsynu:size=9"
BG="#ff000000"
FG="#ffffffff"

case "$(basename "$0")" in
    beepop)
        test -p "$FIFO" || mkfifo "$FIFO"

        tail -f "$FIFO" | while read -r LINE; do
          # These are calculations to create dynamic popups
          # really crude
          # TODO: make it better
          base=50
          x=$(wattr w "$(lsw -r)")
          echo $(( $(txtw -s 11 -f 'termsynu' "$LINE") + base )) > "$XDG_RUNTIME_DIR"/.popup
          barw=$(awk '{for (i=1;i<=NF;++i) total += $i; print total}' < "$XDG_RUNTIME_DIR"/.popup)
          bw=$(( barw + base ))
          offx=$(( x - bw - 24 ))

          (echo "%{c}$LINE %{F${HL}}$CHAR"; sleep "$SLEEP") | lemonbar -d -g "${bw}x24+${offx}+24" -f "$FONT" -B"$BG" -F"$FG"  &
        done
        ;;
    popup)
        echo "$*" > "$FIFO"
        ;;
esac

Scripts recomendados

Arch Linux - remover dependências obsoletas

Pbis open (Likewise)

Horário de Verão 2010/2011

Carregar módulo kqemu na inicialização do sistema

Monitorando acessos on-line em log do squid com autenticação.


  

Comentários

Nenhum comentário foi encontrado.


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts