* lisp/server.el: Improve Commentary.
This commit is contained in:
parent
ee5c591249
commit
ecbdb3b0ad
1 changed files with 21 additions and 20 deletions
|
@ -27,12 +27,12 @@
|
||||||
|
|
||||||
;;; Commentary:
|
;;; Commentary:
|
||||||
|
|
||||||
;; This Lisp code is run in Emacs when it is to operate as
|
;; This library allows Emacs to operate as a server for other
|
||||||
;; a server for other processes.
|
;; processes.
|
||||||
|
|
||||||
;; Load this library and do M-x server-edit to enable Emacs as a server.
|
;; Load this library and do `M-x server-start' to enable Emacs as a server.
|
||||||
;; Emacs opens up a socket for communication with clients. If there are no
|
;; Emacs opens up a socket for communication with clients. If there are no
|
||||||
;; client buffers to edit, server-edit acts like (switch-to-buffer
|
;; client buffers to edit, `server-edit' acts like (switch-to-buffer
|
||||||
;; (other-buffer))
|
;; (other-buffer))
|
||||||
|
|
||||||
;; When some other program runs "the editor" to edit a file,
|
;; When some other program runs "the editor" to edit a file,
|
||||||
|
@ -42,10 +42,10 @@
|
||||||
|
|
||||||
;; Note that any number of clients may dispatch files to Emacs to be edited.
|
;; Note that any number of clients may dispatch files to Emacs to be edited.
|
||||||
|
|
||||||
;; When you finish editing a Server buffer, again call server-edit
|
;; When you finish editing a Server buffer, again call `server-edit'
|
||||||
;; to mark that buffer as done for the client and switch to the next
|
;; to mark that buffer as done for the client and switch to the next
|
||||||
;; Server buffer. When all the buffers for a client have been edited
|
;; Server buffer. When all the buffers for a client have been edited
|
||||||
;; and exited with server-edit, the client "editor" will return
|
;; and exited with `server-edit', the client "editor" will return
|
||||||
;; to the program that invoked it.
|
;; to the program that invoked it.
|
||||||
|
|
||||||
;; Your editing commands and Emacs's display output go to and from
|
;; Your editing commands and Emacs's display output go to and from
|
||||||
|
@ -54,25 +54,28 @@
|
||||||
;; the client. This is possible in four cases:
|
;; the client. This is possible in four cases:
|
||||||
|
|
||||||
;; 1. On a window system, where Emacs runs in one window and the
|
;; 1. On a window system, where Emacs runs in one window and the
|
||||||
;; program that wants to use "the editor" runs in another.
|
;; program that wants to use "the editor" runs in another.
|
||||||
|
|
||||||
;; 2. On a multi-terminal system, where Emacs runs on one terminal and the
|
;; 2. On a multi-terminal system, where Emacs runs on one terminal and
|
||||||
;; program that wants to use "the editor" runs on another.
|
;; the program that wants to use "the editor" runs on another.
|
||||||
|
|
||||||
;; 3. When the program that wants to use "the editor" is running
|
;; 3. When the program that wants to use "the editor" is running as a
|
||||||
;; as a subprocess of Emacs.
|
;; subprocess of Emacs.
|
||||||
|
|
||||||
;; 4. On a system with job control, when Emacs is suspended, the program
|
;; 4. On a system with job control, when Emacs is suspended, the
|
||||||
;; that wants to use "the editor" will stop and display
|
;; program that wants to use "the editor" will stop and display
|
||||||
;; "Waiting for Emacs...". It can then be suspended, and Emacs can be
|
;; "Waiting for Emacs...". It can then be suspended, and Emacs can
|
||||||
;; brought into the foreground for editing. When done editing, Emacs is
|
;; be brought into the foreground for editing. When done editing,
|
||||||
;; suspended again, and the client program is brought into the foreground.
|
;; Emacs is suspended again, and the client program is brought into
|
||||||
|
;; the foreground.
|
||||||
|
|
||||||
;; The buffer local variable "server-buffer-clients" lists
|
;; The buffer local variable `server-buffer-clients' lists
|
||||||
;; the clients who are waiting for this buffer to be edited.
|
;; the clients who are waiting for this buffer to be edited.
|
||||||
;; The global variable "server-clients" lists all the waiting clients,
|
;; The global variable `server-clients' lists all the waiting clients,
|
||||||
;; and which files are yet to be edited for each.
|
;; and which files are yet to be edited for each.
|
||||||
|
|
||||||
|
;;; Code:
|
||||||
|
|
||||||
;; Todo:
|
;; Todo:
|
||||||
|
|
||||||
;; - handle command-line-args-left.
|
;; - handle command-line-args-left.
|
||||||
|
@ -80,8 +83,6 @@
|
||||||
;; to here.
|
;; to here.
|
||||||
;; - fix up handling of the client's environment (place it in the terminal?).
|
;; - fix up handling of the client's environment (place it in the terminal?).
|
||||||
|
|
||||||
;;; Code:
|
|
||||||
|
|
||||||
(eval-when-compile (require 'cl-lib))
|
(eval-when-compile (require 'cl-lib))
|
||||||
|
|
||||||
(defgroup server nil
|
(defgroup server nil
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue