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 ]

Download Plot.sh




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!

  



Esconder código-fonte

#!/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

Scripts recomendados

Detectar sistemas operacionais dos dispositivos na rede via TTL

envia emails

Novo script para redimensionar, rotacionar, converter e espelhar arquivos de imagem

Mounter - Script para montar pendrive.

Rerun


  

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