Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 09/03/2009, à 15:32

olsman037

[Résolu] gedit shell envoyer texte à Stata

Bonjour à tous,

Au départ je voulais faire comme au travail, utiliser notepad++ avec stata... pas l'air facile.. Et j'ai vu que gedit peut lancer des scripts... mais je suis nul en script...

Ce que je voudrais faire, c'est récupérer le texte en surbrillance, et l'envoyer dans la fenêtre de stata..

j'ai essayé avec ça :

#!bin/sh

#[Gedit Tool]
#Comment=Stata
#Input=selection
#Applicability=all

#TODO: use "gconftool-2 -g /desktop/gnome/applications/terminal/exec"
exec /usr/local/stata/xstata $GEDIT_SELECTED_TEXT


Autant vous dire que ça marche pas... par contre si j'enlève $GEDIT_SELECTED_TEXT, ça me lance bien une fenetre stata... c'est déjà ça...

et si en console je fais /usr/local/stata/xstata qqch ça me lance la commande 'qqch' dans stata...

Je suis sûr que c'est super simple, mais c'est déjà trop dur pour moi...

Le must serait de mettre le texte dans la fenêtre de stata déjà ouverte.. (là ça m'ouvre une nouvelle fenetre a chaque fois)..

Un truc du genre :

- si il n'y a pas de fenetre stata d'ouverte, tu fais un fichier temporaire (bla.do) avec ce qui est selectionné, et tu fais la commande /usr/local/stata/xstata do "/mon/fichier/temporaire/bla.do"

- si il y a une fenetre ouverte, tu copie le texte selectionné, tu vas sur la fenetre stata, et tu colle le texte (en mettant des saut de ligne à la fin des lignes pour être sur que stata fais bien toutes les commandes..)

Pour info la fenetre de Stata s'appelle Stata/IC 10.0, et le processus xstata

Le problème, c'est que ubuntu parle pas français... mais le geek..:P

Je cherche donc un traducteur...

Merci pour votre aide....

Dernière modification par olsman037 (Le 10/03/2009, à 15:57)


Sony Vaio VPC-SB1C5E, i7-2620M, 8Go, GPU AMD 6470M avec triple boot W7, Ubuntu 10.10 et Arch...
Galère les nouveaux sony sous linux!!!! (switch AMD/Intel, touchpad, ethernet,....)

Hors ligne

#2 Le 09/03/2009, à 16:43

AnsuzPeorth

Re : [Résolu] gedit shell envoyer texte à Stata

bjr,

Je ne connais pas du tout stata !

C'est peut etre pas exactement ce que tu veux, mais ca fonctionne (un peu pret smile)

Il faut regler dans outils externes, entrée , selection actuelle (mais je pense que tu l'avait deja vu ça !)

le script, je ferais comme ça:

#!/bin/bash
xargs > /tmp/fichier
/usr/local/stata/xstata do /tmp/fichier
#ou direct
#xargs /usr/local/stata/xstata

Par contre pour envoyer le texte selectionné direct dans la fenetre stata deja ouverte...je vois po ! (si ca gene, tu peux tjrs tuer stata et relancer avec la selection).
Par contre, si tu connais la commande pour envoyer dans stata deja ouvert, y a pas de soucis

Dernière modification par AnsuzPeorth (Le 09/03/2009, à 16:47)


Interface graphique pour bash, python ou autre: glade2script
Support Tchat: http://chat.jabberfr.org/muckl_int/inde … ade2script  (Hors ligne)

Hors ligne

#3 Le 09/03/2009, à 17:03

olsman037

Re : [Résolu] gedit shell envoyer texte à Stata

Merci j'ai déjà bien avancé...

Le code

#!/bin/bash
xargs > /tmp/fichier
/usr/local/stata/xstata do /tmp/fichier

ca me lance la commande 2 fois, mais celui en direct, c'est du bonheur...
J'ai cherché pour envoyer dans stata en direct... mais j'ai pas trouvé.. Si qqun a une idée ?


Sony Vaio VPC-SB1C5E, i7-2620M, 8Go, GPU AMD 6470M avec triple boot W7, Ubuntu 10.10 et Arch...
Galère les nouveaux sony sous linux!!!! (switch AMD/Intel, touchpad, ethernet,....)

Hors ligne

#4 Le 09/03/2009, à 17:35

AnsuzPeorth

Re : [Résolu] gedit shell envoyer texte à Stata

olsman037 a écrit :

ca me lance la commande 2 fois, mais celui en direct, c'est du bonheur...

Etonnant ! Peut etre du aux espaces ou saut de ligne dans ta selection.
Regarde le fichier tmp crée, ce qui a dedans !

Et le man stata, ne t'en dit pas plus pour envoyer (surement qu'il y a une option pour )


Interface graphique pour bash, python ou autre: glade2script
Support Tchat: http://chat.jabberfr.org/muckl_int/inde … ade2script  (Hors ligne)

Hors ligne

#5 Le 09/03/2009, à 17:44

olsman037

Re : [Résolu] gedit shell envoyer texte à Stata

Dans le fichier temp la commande n'y est qu'une fois...

Pour ce qui est du manuel stata, c'est le taf qui me l'a payé... et bien sûr les manuels qu'ils ont c'est pour w****... 

Sur le site de stata y'a des trucs... notamment envoyer des info par avec une pipe (sans vouloir être vulgaire.. je sais pas ce que c'est...)

http://www.stata.com/support/faqs/unix/

Ca fait un moment que je cherche et je trouve rien... Il existe des executable sous windows qui marchent bien (avec notepad++)

J'avais posté ici http://forum.ubuntu-fr.org/viewtopic.php?pid=2466788, il ya le code qui marche pour windows... On ne va pas me faire croire que windows fait des trucs que linux ne sait pas faire (à part l'écran bleu de la mort bien sûr!!)


Sony Vaio VPC-SB1C5E, i7-2620M, 8Go, GPU AMD 6470M avec triple boot W7, Ubuntu 10.10 et Arch...
Galère les nouveaux sony sous linux!!!! (switch AMD/Intel, touchpad, ethernet,....)

Hors ligne

#6 Le 09/03/2009, à 18:24

AnsuzPeorth

Re : [Résolu] gedit shell envoyer texte à Stata

Logiquement avec le pipe (FIFO si tu veux pas etre vulgaire smile), ca devrait faire...mais les commandes qu'il donnent sur le site !!!???

Déjà il fait un " mknod mypipe.pip p" ??? Pour faire un fifo, je fais un "mkfifo /tmp/fifo" .
Ensuite faut trouver l'option de commande pour stata pour qu'il se branche au fifo ?
(mais il faudra surement lancer stata en mode attente sur le fifo avant d'aller dans gedit, mais ca c'est pas trop un problème, un lanceur qui va bien fera le travail)

Les exemples sont en sh, pi etre pour ça que je pige po smile
Surement qql'un de plus calé que moi pourra répondre.


Un fifo c'est un fichier qui est "connecté" en direct au soft, tu ecris qqlechose dans le fichier fifo, est le soft traite ce qui est ecrit en direct (c pratique smile)


Sinon, je pense qu'il serait possible de faire comme l'exemple sous windows, mais plus lourd qu'un fifo (si l'option fifo existe, faut s'en servir). Sous win, si j'ai bien compris, il s'amuse a recuperer le texte selectionné, le met dans le clipboard et le recolle dans la fenetre stata....ouais.... C'est aussi possible sous linux....mais bon....

EDIT: Fais chier d'etre nul en anglais, la réponse est surement sur le site de stata

Dernière modification par AnsuzPeorth (Le 09/03/2009, à 18:28)


Interface graphique pour bash, python ou autre: glade2script
Support Tchat: http://chat.jabberfr.org/muckl_int/inde … ade2script  (Hors ligne)

Hors ligne

#7 Le 09/03/2009, à 18:32

olsman037

Re : [Résolu] gedit shell envoyer texte à Stata

Ouai... et moi fais chier d'être nul en programmation!! (au moins l'anglais il y a des dicos en ligne... tongue)

Merci qd même!!


Sony Vaio VPC-SB1C5E, i7-2620M, 8Go, GPU AMD 6470M avec triple boot W7, Ubuntu 10.10 et Arch...
Galère les nouveaux sony sous linux!!!! (switch AMD/Intel, touchpad, ethernet,....)

Hors ligne

#8 Le 09/03/2009, à 18:37

AnsuzPeorth

Re : [Résolu] gedit shell envoyer texte à Stata

je pense que c'est la commande infile ????
essais un truc, juste pour tester.
dans une console:

mkfifo /tmp/fifo.pip
stata infile /tmp/fifo.pip  #ou -infile
echo "une commande pour stata" > /tmp/fifo.pip

Vraiment pas sur, mais j'utilse le fifo comme ca pour mplayer, maintenant, c'est juste une histoire de commande, d'option qu'il faut trouver

Dernière modification par AnsuzPeorth (Le 09/03/2009, à 18:39)


Interface graphique pour bash, python ou autre: glade2script
Support Tchat: http://chat.jabberfr.org/muckl_int/inde … ade2script  (Hors ligne)

Hors ligne

#9 Le 09/03/2009, à 18:41

AnsuzPeorth

Re : [Résolu] gedit shell envoyer texte à Stata

Je viens de voir le man mknod, peut etre qu'il faut cette commande special pour stata
a la place du mkfifo

mknod /tmp/fifo.pip p

Interface graphique pour bash, python ou autre: glade2script
Support Tchat: http://chat.jabberfr.org/muckl_int/inde … ade2script  (Hors ligne)

Hors ligne

#10 Le 09/03/2009, à 18:49

olsman037

Re : [Résolu] gedit shell envoyer texte à Stata

Alors avec infile, rien...
J'ai essayé avec use

mkfifo /tmp/fifo.pip
/usr/local/xstata use /tmp/fifo.pip

Il ouvre une nouvelle fenetre stata, il utilise /tmp/fifo.pip


echo "set mem 30M" > /tmp/fifo.pip

Et là il me dit  que le fichier /tmp/fifo.pip vient d'une version plus récente de stata (j'ai la plus récente!!!)

Mais on se rapproche!!!


Sony Vaio VPC-SB1C5E, i7-2620M, 8Go, GPU AMD 6470M avec triple boot W7, Ubuntu 10.10 et Arch...
Galère les nouveaux sony sous linux!!!! (switch AMD/Intel, touchpad, ethernet,....)

Hors ligne

#11 Le 09/03/2009, à 18:52

olsman037

Re : [Résolu] gedit shell envoyer texte à Stata

j'ai fait avec do au lieu de use...
et ca marche!!! il m'a envoyé la commande!!!

Merci beaucoup!!!

Euh... je fais comment maintenant pour que ce soit gedit qui envoit le truc ?


Sony Vaio VPC-SB1C5E, i7-2620M, 8Go, GPU AMD 6470M avec triple boot W7, Ubuntu 10.10 et Arch...
Galère les nouveaux sony sous linux!!!! (switch AMD/Intel, touchpad, ethernet,....)

Hors ligne

#12 Le 09/03/2009, à 18:59

AnsuzPeorth

Re : [Résolu] gedit shell envoyer texte à Stata

Ca depends, comment veut tu procéder ?

1-Soit tu lance stata branché sur le fifo et gedit a la suite (un lanceur special)
2-Ou le script dans gedit verifie si stata est lancé (mais il faut que stata soit lancer via le fifo, sinon, le tuer pour le relancer via le fifo), si non, le script lance stata via le fifo?

C'est à toi de voir, la soluce 1 est qd meme plus simple, mais la 2 ..c'est plus style smile


Interface graphique pour bash, python ou autre: glade2script
Support Tchat: http://chat.jabberfr.org/muckl_int/inde … ade2script  (Hors ligne)

Hors ligne

#13 Le 09/03/2009, à 19:18

AnsuzPeorth

Re : [Résolu] gedit shell envoyer texte à Stata

Pour la soluce 1

Comme je n'arrive pas à passer plusieurs commandes au lanceur (y a des trucs des fois...)

Ecris un petit script et rends le executable:

#!/bin/bash
[ -e /tmp/fifo.pip ] && rm /tmp/fifo.pip  #verifie si le fifo existe deja, si oui, supprime, ca evite les messages d'erreurs
mkfifo /tmp/fifo.pip
/usr/local/xstata do /tmp/fifo.pip &
# tu peux ici, recuperer un fichier que tu auras glisser sur le lanceur, si ca t'interesse,
# il faudra peut etre mettre option %F a la commande du lanceur
#gedit $1 &
gedit &
exit

Tu crée un lanceur qui pointe sur le script.

Dans gedit, simplement :

#!/bin/bash
xargs > /tmp/fifo.pip

Avec l'option d'entrée réglé bien sur !
et ca devrait aller.

EDIT:verifie qd meme si la commande mknod n'est pas plus approprié, je ne sais ce que tu envois à stata
Le script peut etre amélioré bien sur, c'est du vite fait, la je vois deja des trucs à changer...:) !
Il faut aussi voir l'uitilisation que tu en fait de stata, si plusieurs instances, les garder ou pas...a toi de voir

Dernière modification par AnsuzPeorth (Le 09/03/2009, à 19:38)


Interface graphique pour bash, python ou autre: glade2script
Support Tchat: http://chat.jabberfr.org/muckl_int/inde … ade2script  (Hors ligne)

Hors ligne

#14 Le 09/03/2009, à 19:39

olsman037

Re : [Résolu] gedit shell envoyer texte à Stata

Ca marche bien ... (avec /usr/stata/local/xstata et pas /usr/local/xstata), par contre il me fait toujours les commandes en doubles;.. c'est bizzare...


Sony Vaio VPC-SB1C5E, i7-2620M, 8Go, GPU AMD 6470M avec triple boot W7, Ubuntu 10.10 et Arch...
Galère les nouveaux sony sous linux!!!! (switch AMD/Intel, touchpad, ethernet,....)

Hors ligne

#15 Le 09/03/2009, à 19:40

olsman037

Re : [Résolu] gedit shell envoyer texte à Stata

ca a deja changé!!!


Sony Vaio VPC-SB1C5E, i7-2620M, 8Go, GPU AMD 6470M avec triple boot W7, Ubuntu 10.10 et Arch...
Galère les nouveaux sony sous linux!!!! (switch AMD/Intel, touchpad, ethernet,....)

Hors ligne

#16 Le 09/03/2009, à 19:46

olsman037

Re : [Résolu] gedit shell envoyer texte à Stata

C'est normal que ce soit très long ?

Autre question... si j'ai plusieurs ligne, c'est possible de mettre un entrée à la fin de chaque ligne, pour ne pas qu'il croit que c'est une seule et même commande...

Je sais j'en demande un peu beaucoup.. en tout cas merci beaucoup!!!


Sony Vaio VPC-SB1C5E, i7-2620M, 8Go, GPU AMD 6470M avec triple boot W7, Ubuntu 10.10 et Arch...
Galère les nouveaux sony sous linux!!!! (switch AMD/Intel, touchpad, ethernet,....)

Hors ligne

#17 Le 09/03/2009, à 19:48

olsman037

Re : [Résolu] gedit shell envoyer texte à Stata

En fait ca ne marche qu'une fois... je me demande si je ne vais pas essayer de mettre le code que dans gedit, pour qu'il recrée un fichier pipe à chaque fois...


Sony Vaio VPC-SB1C5E, i7-2620M, 8Go, GPU AMD 6470M avec triple boot W7, Ubuntu 10.10 et Arch...
Galère les nouveaux sony sous linux!!!! (switch AMD/Intel, touchpad, ethernet,....)

Hors ligne

#18 Le 09/03/2009, à 19:54

AnsuzPeorth

Re : [Résolu] gedit shell envoyer texte à Stata

Beaucoup d'interrogations encore smile

Lorsque tu lances en console stata via le fifo, tu peux lui passer plusieurs commandes ?

Tu as raison, ca sera peut etre mieux de faire un script direct dans gedit, il sera juste un peu plus long et plus compliqué !

Dernière modification par AnsuzPeorth (Le 09/03/2009, à 19:55)


Interface graphique pour bash, python ou autre: glade2script
Support Tchat: http://chat.jabberfr.org/muckl_int/inde … ade2script  (Hors ligne)

Hors ligne

#19 Le 09/03/2009, à 19:59

olsman037

Re : [Résolu] gedit shell envoyer texte à Stata

En fait j'ai essayé d'en faire 2 dans gedit...

un qui lance stata, et qui envoie la première commande

#!/bin/bash
[ -e /tmp/fifo.pip ] && rm /tmp/fifo.pip  #verifie si le fifo existe deja, si oui, supprime, ca evite les messages d'erreurs
mknod /tmp/fifo.pip p
/usr/local/stata/xstata do /tmp/fifo.pip &
xargs > /tmp/fifo.pip
exit

Ca marche, mais en double...
Et un autre quand je sais que stata est déjà ouvert, et utilise /tmp/fifo.do

[ -e /tmp/fifo.pip ] && rm /tmp/fifo.pip
mknod /tmp/fifo.pip p
xargs > /tmp/fifo.pip
exit

Mais ça marche pas sad  Il doit pas aimer ça la suppression du pipe... mais qd il reste il aime pas non plus...


Sony Vaio VPC-SB1C5E, i7-2620M, 8Go, GPU AMD 6470M avec triple boot W7, Ubuntu 10.10 et Arch...
Galère les nouveaux sony sous linux!!!! (switch AMD/Intel, touchpad, ethernet,....)

Hors ligne

#20 Le 09/03/2009, à 20:12

AnsuzPeorth

Re : [Résolu] gedit shell envoyer texte à Stata

Faut voir un problème à la fois smile


deja essais d'envoyer plusieurs commandes via le terminal, a stata lancer en fifo (pour savoir si il prends plusieurs commande a la suite).
Sur le site, d'apres ce que j'ai pu comprendre il faudrait lancer comme ca (genre...)

stata do infile a b c using /tmp/fifo.pip

J'ai l'impression que la commande do de stata permet beaucoup de choses ...


Interface graphique pour bash, python ou autre: glade2script
Support Tchat: http://chat.jabberfr.org/muckl_int/inde … ade2script  (Hors ligne)

Hors ligne

#21 Le 09/03/2009, à 20:26

olsman037

Re : [Résolu] gedit shell envoyer texte à Stata

ca marche pas...

après le do il veut un fichier... et qd je lui en met un il l'execute betement...
je continue a chercher...


Sony Vaio VPC-SB1C5E, i7-2620M, 8Go, GPU AMD 6470M avec triple boot W7, Ubuntu 10.10 et Arch...
Galère les nouveaux sony sous linux!!!! (switch AMD/Intel, touchpad, ethernet,....)

Hors ligne

#22 Le 09/03/2009, à 20:26

AnsuzPeorth

Re : [Résolu] gedit shell envoyer texte à Stata

Je pense a un truc, stata accepte donc des fichiers de commande, ca va simplifier le truc tout ca smile

Essais d'ecrire plusieurs commandes dans u fichier et de le donner a stata, si il execute les commandes correctement, on est sauver ! (c'est possible, faut trouver , c'est tout )

Sans le soft, c''est pas evident de trouver les solutions


Interface graphique pour bash, python ou autre: glade2script
Support Tchat: http://chat.jabberfr.org/muckl_int/inde … ade2script  (Hors ligne)

Hors ligne

#23 Le 09/03/2009, à 20:28

AnsuzPeorth

Re : [Résolu] gedit shell envoyer texte à Stata

ah oui, mais non, tu veux garder stata ouvert, mettre a la suite....et ca gene de relancer a chaque fois, il te faut stata tjrs ouvert ?

Fais chier, y a toutes les options pour...faut trouver, c'est tout!

Dernière modification par AnsuzPeorth (Le 09/03/2009, à 20:30)


Interface graphique pour bash, python ou autre: glade2script
Support Tchat: http://chat.jabberfr.org/muckl_int/inde … ade2script  (Hors ligne)

Hors ligne

#24 Le 09/03/2009, à 20:31

olsman037

Re : [Résolu] gedit shell envoyer texte à Stata

~$ mknod /tmp/fifo.pip p
~$ /usr/local/stata/xstata do /tmp/fifo.pip
~$ echo "set mem 10M" > /tmp/fifo.pip
~$ echo "set mem 30M" > /tmp/fifo.pip
^Cbash: /tmp/fifo.pip: Appel système interrompu

Les 3 premiers impecables.. le dernier fait rien du tout et s'enlise...


Sony Vaio VPC-SB1C5E, i7-2620M, 8Go, GPU AMD 6470M avec triple boot W7, Ubuntu 10.10 et Arch...
Galère les nouveaux sony sous linux!!!! (switch AMD/Intel, touchpad, ethernet,....)

Hors ligne

#25 Le 09/03/2009, à 20:34

olsman037

Re : [Résolu] gedit shell envoyer texte à Stata

si je cree un fichier texte avec les commande et que je lui dit do monfichier, il le fait... et oui le but serait d'avoir stata ouvert ... et pouvoir envoyer des bouts de programmes du fichier texte de gedit... les uns après les autres, pas forcément tout le fichier, ni dans l'ordre...

Je suis désolé de te prendre la tête comme ça...


Sony Vaio VPC-SB1C5E, i7-2620M, 8Go, GPU AMD 6470M avec triple boot W7, Ubuntu 10.10 et Arch...
Galère les nouveaux sony sous linux!!!! (switch AMD/Intel, touchpad, ethernet,....)

Hors ligne