Enviar gráficos 2D pela janela de chat no Kopete
Publicado por Júlio Hoffimann Mendes (última atualização em 17/06/2010)
[ Hits: 4.749 ]
O script permite enviar gráficos 2D para um contato do Kopete especificado. Para isso, utiliza a comunicação entre aplicativos do KDE 4, o qdbus, sobre o qual já escrevi uma dica aqui no VOL.
Dependências: Gnuplot 4.2
Nota: Elaborei o script com a versão 4.2 do Gnuplot, mas acredito que não haverão problemas com versões anteriores.
Instalação:
Para usar o script, ponha-o no diretório /usr/local/bin, é preciso mover o arquivo com o sudo. Dê permissão de execução ao arquivo (chmod +x Plot.sh)
Como usar o Script:
1ª Maneira-> Na janela de chat, ao conversar com Richard Stallman (nickname), escreva:
/exec Plot.sh 'sin(x), cos(x)' 0 2*pi 'Richard Stallman'
2ª Maneira-> Também é possível especificar a conta para qual você deseja mandar o gráfico, por exemplo:
/exec Plot.sh 'x**2' -10 10 'richard.stallman@freesoftware.org'
Dica: Se o nickname for muito complicado ou extenso, digite os primeiros caracteres e aperte [TAB] que o Kopete irá completar, depois não esqueça de colocar as aspas simples.
As funções e operadores suportados se encontram na documentação do Gnuplot:
http://gnuplot.sourceforge.net/docs_4.2/gnuplot.html#x1-5300013.1
Qualquer sugestão é bem vinda, talvez no futuro essa ideia se concretize em um plugin para o mensageiro.
Em breve coloco a versão 3D aqui no site, divirtam-se!
#!/bin/bash # Plot.sh sends 2D plots to specified Kopete contact # Copyright (C) 2010 Júlio Hoffimann Mendes # # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License # along with this program. If not, see <http://www.gnu.org/licenses/>. # # ---------------------------------------------------------------------- # # Dependencies: gnuplot 4.2 # Description: send 2D plots to specified Kopete contact # Usage: Plot.sh <f(x), g(x),..., h(x)> xmin xmax AccountID # Example: Plot.sh 'sin(x), cos(x)' 0 4*pi 'richard.stallman@freesoftware.org' # OBS: AccountID could be MetaContactID, for example 'Richard Stallman' # gnuplot file with plot specifications SPECS=`tempfile` FIGURE=`tempfile --prefix Plot- --suffix .png` # =================================== # Destinatary Plot Specifications # =================================== echo " reset; set term png; set xrange [$2:$3]; set grid; set autoscale ymin; set autoscale ymax; set title \"Seja livre, use Linux!\" plot $1; " > $SPECS # make figure gnuplot $SPECS > $FIGURE # send it to specified contact qdbus org.kde.kopete /Kopete org.kde.Kopete.sendFile "$4" $FIGURE # =================================== # Remetent Plot Specifications # =================================== echo " reset; set xrange [$2:$3]; set grid; set autoscale ymin; set autoscale ymax; set title \"Seja livre, use Linux!\" font \"Times,18\" plot $1; " > $SPECS # plot function(s) on a float window to remetent gnuplot -persist $SPECS rm $SPECS
Detectar sistemas operacionais dos dispositivos na rede via TTL
Novo script para redimensionar, rotacionar, converter e espelhar arquivos de imagem
Mounter - Script para montar pendrive.
Nenhum comentário foi encontrado.
Compartilhando a tela do Computador no Celular via Deskreen
Como Configurar um Túnel SSH Reverso para Acessar Sua Máquina Local a Partir de uma Máquina Remota
Configuração para desligamento automatizado de Computadores em um Ambiente Comercial
Como renomear arquivos de letras maiúsculas para minúsculas
Imprimindo no formato livreto no Linux
Vim - incrementando números em substituição
Efeito "livro" em arquivos PDF
Como resolver o erro no CUPS: Unable to get list of printer drivers
Linux mint está congelando/tr... (4)
Acabei de formatar meu ssd e deu erro (2)
Instalar PHP 5 no CentOS 8 (1)
[Python] Automação de scan de vulnerabilidades
[Python] Script para analise de superficie de ataque
[Shell Script] Novo script para redimensionar, rotacionar, converter e espelhar arquivos de imagem
[Shell Script] Iniciador de DOOM (DSDA-DOOM, Doom Retro ou Woof!)
[Shell Script] Script para adicionar bordas às imagens de uma pasta