beepop - popups com o texto digitado

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

[ Hits: 1.358 ]

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

Gerenciamento de usários do Squid usando Dialog

Script para geração de mala direta usando svg

Converter Arquivos de Áudio

Testar link

Instalação Programa CKB para mouses corsair(ICUE).


  

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