emacsclient - tells a running Emacs to visit a file
emacsclient [options] files ...
This manual page documents briefly the emacsclient command. Full documentation is avail-
able in the GNU Info format; see below. This manual page was originally written for the
Debian GNU/Linux distribution, but is not specific to that system.
emacsclient works in conjunction with the built-in Emacs server.
You can either call emacsclient directly or let other programs run it for you when neces-
sary. On GNU and Unix systems many programs consult the environment variable EDITOR
(sometimes also VISUAL) to obtain the command used for editing. Thus, setting this envi-
ronment variable to 'emacsclient' will allow these programs to use an already running
Emacs for editing. Other operating systems might have their own methods for defining the
For emacsclient to work, you need an already running Emacs with a server. Within Emacs,
call the functions `server-start' or `server-mode'. (Your `.emacs' file can do this auto-
matically if you add either `(server-start)' or `(server-mode 1)' to it.)
When you've finished editing the buffer, type `C-x #' (`server-edit'). This saves the
file and sends a message back to the `emacsclient' program telling it to exit. The pro-
grams that use `EDITOR' wait for the "editor" (actually, `emacsclient') to exit. `C-x #'
also checks for other pending external requests to edit various files, and selects the
next such file.
If you set the variable `server-window' to a window or a frame, `C-x #' displays the
server buffer in that window or in that frame.
The programs follow the usual GNU command line syntax, with long options starting with two
if the Emacs server is not running, run the specified editor instead. This can
also be specified via the `ALTERNATE_EDITOR' environment variable. If the value of
EDITOR is the empty string, run `emacs --daemon' to start Emacs in daemon mode, and
try to connect to it.
create a new frame instead of trying to use the current Emacs frame
set the parameters of a newly-created frame.
tell the server to display the files on the given display.
do not visit files but instead evaluate the arguments as Emacs Lisp expressions.
use TCP configuration file FILENAME for communication. This can also be specified
via the `EMACS_SERVER_FILE' environment variable.
returns immediately without waiting for you to "finish" the buffer in Emacs.
-nw, -t, --tty
open a new Emacs frame on the current terminal
use socket named FILENAME for communication.
print version information and exit
print this usage information message and exit
Normally, the exit status is 0. If emacsclient shuts down due to Emacs signaling an
error, the exit status is 1.
The program is documented fully in Using Emacs as a Server available via the Info system.
This manual page was written by Stephane Bortzmeyer <firstname.lastname@example.org>, for the
Debian GNU/Linux system (but may be used by others).
This manual page is in the public domain.