Re: [hs mais pas de rep ailleurs] pb avec screen
Bonjour,
Le Thu 04 Nov 2004, à 05 h 08 min 58 sAM (UTC +0100),
vous (Frédéric Bothamy <frederic.bothamy@free.fr>)
avez écrit :
> > J'utilise screen avec, mettons :
> > screen -t em 0 emacs
> > et un shell en 1
> > Emacs est en serveur de gnuclient.
> > Quand je fais sous le fenêtre 1 :
> > screen -X "gnuclient FICHIER" select 0
> > il me répond tjrs
> > -X unknow command "gnuclient FICHIER"
> > Comment avoir l'édition de FICHIER dans la fenêtre 0 avec celle-ci en
> > avant automatiquement (raise) ?
> Il ne faut pas procéder ainsi AMA, mais plutôt modifier ta commande
> d'édition standard pour appeler consécutivement le changement d'écran et
> l'envoi dans Emacs :
>
> - tu définis un petit script ~/bin/emacs contenant :
>
> #!/bin/sh
>
> echo $WINDOW > ~/tmp/emacsclient-caller
> screen -r -X select 1
> emacsclient "$@"
>
> cela va t'envoyer dans le screen d'Emacs lors de l'édition d'un
> fichier et sauvegarder le screen d'origine (j'utilise emacsclient
> plutôt que gnuclient, mais cele ne devrait rien changer)
>
> - puis dans ton .emacs, tu ajoutes ceci :
>
> (add-hook 'server-done-hook
> (lambda ()
> (shell-command
> "screen -r -X select `cat ~/tmp/emacsclient-caller`")))
>
> qui devrait te replacer dans le screen d'avant l'édition de ton
> fichier quand tu as terminé celle-ci (je ne sais pas si cela
> fonctionne avec gnuclient, le hook est peut-être différent, mais
> l'idée est là).
>
> Tu peux ensuite par exemple définir EDITOR sur ~/bin/emacs, ainsi
> les programmes utilisant cette variable enverront leur fichier
> directement dans Emacs (comme mutt par exemple). AMHA Cela donne une
> combinaison d'outils très efficace.
c'est exactement ce que j'ai fait (sauf que ne n'ai pas fait de script):
set editor="screen -X select em; gnuclient +12 '%s'"
Gnuserv Done Hook: [Hide]
[INS] [DEL]
(lambda nil
(shell-command "screen -X other"))
Et ça marche impec.
Car en fait mon pb était d'employer mutt emacs+gnuclient conjointement
de manière conviviale. J'avais posé la question en simplifiant mon pb
par pédagogie :o)
> Ah, un dernier conseil, j'ai eu pas mal de problèmes avec les
> caractères accentués, Emacs, screen et les terminfo et je les ai (à
> peu près) régler en passant un "-T linux" au lancement du vrai
> binaire emacs (depuis le .screenrc donc).
Merci du tuyau. En fait il va falloir que je lise les docs (je débute
sous screen) concernant cette histoire de terminal car (évidemment) je
veux voir mes .dvi et .ps sous console (matrox fb) et screen.
> Le Wiki Emacs a plus d'informations sur ce problème (c'est là que
> j'avais trouvé cette solution) :
>
> http://www.emacswiki.org/cgi-bin/wiki/EmacsClient (pour EmacsClient)
> http://www.emacswiki.org/cgi-bin/wiki/ScreenServer (pour GnuClient)
> Fred
à+
--
ph
Reply to: