* doc/emacs/misc.texi (emacsclient Options): Suggest forwarding sockets.
(Bug#66667)
This commit is contained in:
parent
859b4227e3
commit
6a0bb7beae
1 changed files with 21 additions and 7 deletions
|
@ -2161,8 +2161,9 @@ terminal.
|
||||||
Set the prefix to add to filenames for Emacs to locate files on remote
|
Set the prefix to add to filenames for Emacs to locate files on remote
|
||||||
machines (@pxref{Remote Files}) using TRAMP (@pxref{Top, The Tramp
|
machines (@pxref{Remote Files}) using TRAMP (@pxref{Top, The Tramp
|
||||||
Manual,, tramp, The Tramp Manual}). This is mostly useful in
|
Manual,, tramp, The Tramp Manual}). This is mostly useful in
|
||||||
combination with using the Emacs server over TCP (@pxref{TCP Emacs
|
combination with using the Emacs server from a remote host. By
|
||||||
server}). By ssh-forwarding the listening port and making the
|
ssh-forwarding the listening socket, or ssh-forwarding the listening
|
||||||
|
port @pxref{TCP Emacs server} and making the
|
||||||
@var{server-file} available on a remote machine, programs on the
|
@var{server-file} available on a remote machine, programs on the
|
||||||
remote machine can use @command{emacsclient} as the value for the
|
remote machine can use @command{emacsclient} as the value for the
|
||||||
@env{EDITOR} and similar environment variables, but instead of talking
|
@env{EDITOR} and similar environment variables, but instead of talking
|
||||||
|
@ -2174,16 +2175,29 @@ Setting the environment variable @env{EMACSCLIENT_TRAMP} has the same
|
||||||
effect as using the @samp{-T} option. If both are specified, the
|
effect as using the @samp{-T} option. If both are specified, the
|
||||||
command-line option takes precedence.
|
command-line option takes precedence.
|
||||||
|
|
||||||
For example, assume two hosts, @samp{local} and @samp{remote}, and
|
For example, assume two hosts, @samp{local} and @samp{remote}.
|
||||||
that the local Emacs listens on tcp port 12345. Assume further that
|
|
||||||
|
@example
|
||||||
|
local$ ssh -R "/home/%r/.emacs.socket":"$@{XDG_RUNTIME_DIR:-$@{TMPDIR:-/tmp@}/emacs%i@}$@{XDG_RUNTIME_DIR:+/emacs@}/server" remote
|
||||||
|
remote$ export EMACS_SOCKET_NAME=$HOME/.emacs.socket
|
||||||
|
remote$ export EMACSCLIENT_TRAMP=/ssh:remote:
|
||||||
|
remote$ export EDITOR=emacsclient
|
||||||
|
remote$ $EDITOR /tmp/foo.txt #Should open in local emacs.
|
||||||
|
@end example
|
||||||
|
|
||||||
|
If you are using a platform where @command{emacsclient} does not use
|
||||||
|
Unix domain sockets (i.e., MS-Windows), or your SSH implementation is
|
||||||
|
not able to forward them (e.g., OpenSSH before version 6.7), you can
|
||||||
|
forward a TCP port instead. In this example, assume that the local
|
||||||
|
Emacs listens on tcp port 12345. Assume further that
|
||||||
@file{/home} is on a shared file system, so that the server file
|
@file{/home} is on a shared file system, so that the server file
|
||||||
@file{~/.emacs.d/server/server} is readable on both hosts.
|
@file{~/.emacs.d/server/server} is readable on both hosts.
|
||||||
|
|
||||||
@example
|
@example
|
||||||
local$ ssh -R12345:localhost:12345 remote
|
local$ ssh -R12345:localhost:12345 remote
|
||||||
remote$ export EDITOR="emacsclient \
|
remote$ export EMACS_SERVER_FILE=server
|
||||||
--server-file=server \
|
remote$ export EMACSCLIENT_TRAMP=/ssh:remote:
|
||||||
--tramp=/ssh:remote:"
|
remote$ export EDITOR=emacsclient
|
||||||
remote$ $EDITOR /tmp/foo.txt #Should open in local emacs.
|
remote$ $EDITOR /tmp/foo.txt #Should open in local emacs.
|
||||||
@end example
|
@end example
|
||||||
|
|
||||||
|
|
Loading…
Add table
Reference in a new issue