help-gnu-emacs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Using tramp to connect to a remote emacs session


From: Anselm Helbig
Subject: Re: Using tramp to connect to a remote emacs session
Date: Thu, 03 Sep 2009 18:34:50 +0200

At Thu, 03 Sep 2009 09:06:16 -0700,
Suvayu Ali <fatkasuvayu+linux@gmail.com> wrote:
> 
> Hi Peter,
> 
> On Thursday 03 September 2009 01:02 AM, Peter Dyballa wrote:
> >
> > Am 03.09.2009 um 01:06 schrieb Suvayu Ali:
> >
> >> So far only reference I found was,
> >>
> >>> Using emacsclient to make a new frame of a remote Emacs 22 on a local
> >>> display
> >>> ssh remote_host -f emacsclient --eval ‘”(make-frame-on-display
> >>> \”$DISPLAY\”)”’
> >>
> >> in the emacswiki[1]. Firstly I don't understand how this works, and
> >> blindly copy-pasting this to the terminal didn't work either. Some
> >> help would be greatly appreciated. :)
> >
> >
> > Ssh opens a connection to remote_host and logs you in. The option -f
> > puts ssh into the background allowing to launch an X client. This one is
> > emacsclient, which is asked to evaluate some Lisp. This Lisp code is
> > make-frame-on-display, which makes GNU Emacs open (create) a new frame
> > on the specified screen as given by the environment variable DISPLAY. On
> > the remote host DISPLAY should point to your local screen and its X
> > server. So the remote GNU Emacs daemon or server will open a frame as an
> > X client of your local display's X server and communicate with it via
> > the SSH tunnel.
> >
> >
> > If this does not work you can start to debug ssh, but particularly allow
> > (trusted) X11 forwarding in the configuration of the SSH server on the
> > remote host. Your local X server must be informed to accept connections
> > from the remote host.
> >
> 
> Thanks for the very clear explanation Pete. :) I had a hunch it is 
> something like X-forwarding. I don't really like to do X-forwarding, the 
> interface is usually very unresponsive. I would rather go with `emacs -nw'.

If you want to connect to a remote emacs but don't want to do X
forwarding, then you can do either 

  - start emacs with the --daemon option on the remote host; you can
    now connect to the running emacs instance with `emacsclient -t'
    which will give you an emacs terminal frame. Which will, of
    course, work over ssh as well. You can still get a X frame if you
    like by not using -t. This requires Emacs 23 to work.

  - the obvious solution: use GNU screen or a similar tool (dtach,
    tmux, ...), start your console mode emacs in there and reconnect
    as necessary. Works with any version of emacs, obviously.

HTH, 

Anselm


-- 
Anselm Helbig 
mailto:anselm.helbig+news2009@googlemail.com


reply via email to

[Prev in Thread] Current Thread [Next in Thread]