diff options
| author | Daiki Ueno | 2015-03-23 12:40:29 +0900 |
|---|---|---|
| committer | Daiki Ueno | 2015-03-23 16:27:29 +0900 |
| commit | 47e0e319329a1ecf9da4fa1afd2b9f2738fada67 (patch) | |
| tree | 6260b8887776e71e448a62a707d6d15b5e3a1fcc /doc | |
| parent | 165bea78008ec7545698f2e893821b4090f20c79 (diff) | |
| download | emacs-47e0e319329a1ecf9da4fa1afd2b9f2738fada67.tar.gz emacs-47e0e319329a1ecf9da4fa1afd2b9f2738fada67.zip | |
Generalize start-process with keyword args
* src/process.c (Fmake_process): New function.
(create_process, create_pty): Check p->pty_flag instead of
Vprocess_connection_type.
(syms_of_process): Register QCcommand, QCconnection_type, Qpty,
Qpipe, and Smake_process. Unregister Sstart_process.
* lisp/subr.el (start-process): New function, ported from the C
implementation.
* doc/lispref/processes.texi (Asynchronous Processes): Mention
`make-process'.
* etc/NEWS: Mention `make-process'.
Diffstat (limited to 'doc')
| -rw-r--r-- | doc/lispref/ChangeLog | 4 | ||||
| -rw-r--r-- | doc/lispref/processes.texi | 55 |
2 files changed, 59 insertions, 0 deletions
diff --git a/doc/lispref/ChangeLog b/doc/lispref/ChangeLog index 3644d40fabf..ff1f8148e81 100644 --- a/doc/lispref/ChangeLog +++ b/doc/lispref/ChangeLog | |||
| @@ -1,3 +1,7 @@ | |||
| 1 | 2015-03-23 Daiki Ueno <ueno@gnu.org> | ||
| 2 | |||
| 3 | * processes.texi (Asynchronous Processes): Mention `make-process'. | ||
| 4 | |||
| 1 | 2015-03-18 Eli Zaretskii <eliz@gnu.org> | 5 | 2015-03-18 Eli Zaretskii <eliz@gnu.org> |
| 2 | 6 | ||
| 3 | * minibuf.texi (Basic Completion): Fix a typo. (Bug#20108) | 7 | * minibuf.texi (Basic Completion): Fix a typo. (Bug#20108) |
diff --git a/doc/lispref/processes.texi b/doc/lispref/processes.texi index 177cd684f5c..3e9cc50de52 100644 --- a/doc/lispref/processes.texi +++ b/doc/lispref/processes.texi | |||
| @@ -692,6 +692,61 @@ use the function @code{process-tty-name} (@pxref{Process | |||
| 692 | Information}). | 692 | Information}). |
| 693 | @end defvar | 693 | @end defvar |
| 694 | 694 | ||
| 695 | @defun make-process &rest args | ||
| 696 | This function is like @code{start-process}, but takes keyword arguments. | ||
| 697 | |||
| 698 | The arguments @var{args} are a list of keyword/argument pairs. | ||
| 699 | Omitting a keyword is always equivalent to specifying it with value | ||
| 700 | @code{nil}. Here are the meaningful keywords: | ||
| 701 | |||
| 702 | @table @asis | ||
| 703 | @item :name @var{name} | ||
| 704 | Use the string @var{name} as the process name. It is modified if | ||
| 705 | necessary to make it unique. | ||
| 706 | |||
| 707 | @item :buffer @var{buffer} | ||
| 708 | Use @var{buffer} as the process buffer. | ||
| 709 | |||
| 710 | @item :command @var{command} | ||
| 711 | Use @var{command} as the command line of the process. @var{command} | ||
| 712 | is a list starting with the program's executable file name, followed | ||
| 713 | by strings to give to program as arguments. | ||
| 714 | |||
| 715 | @item :coding @var{coding} | ||
| 716 | If @var{coding} is a symbol, it specifies the coding system to be | ||
| 717 | used for both reading and writing of data from and to the | ||
| 718 | connection. If @var{coding} is a cons cell | ||
| 719 | @w{@code{(@var{decoding} . @var{encoding})}}, then @var{decoding} | ||
| 720 | will be used for reading and @var{encoding} for writing. | ||
| 721 | |||
| 722 | If @var{coding} is @code{nil}, the default rules for finding the | ||
| 723 | coding system will apply. @xref{Default Coding Systems}. | ||
| 724 | |||
| 725 | @item :connection-type @var{TYPE} | ||
| 726 | Initialize the type of device used to communicate with the subprocess. | ||
| 727 | Possible values are @code{pty} to use a pty, @code{pipe} to use a | ||
| 728 | pipe, or @code{nil} to use the default derived from the value of | ||
| 729 | the @code{process-connection-type} variable. | ||
| 730 | |||
| 731 | @item :noquery @var{query-flag} | ||
| 732 | Initialize the process query flag to @var{query-flag}. | ||
| 733 | @xref{Query Before Exit}. | ||
| 734 | |||
| 735 | @item :stop @var{stopped} | ||
| 736 | If @var{stopped} is non-@code{nil}, start the process in the | ||
| 737 | ``stopped'' state. | ||
| 738 | |||
| 739 | @item :filter @var{filter} | ||
| 740 | Initialize the process filter to @var{filter}. | ||
| 741 | |||
| 742 | @item :sentinel @var{sentinel} | ||
| 743 | Initialize the process sentinel to @var{sentinel}. | ||
| 744 | @end table | ||
| 745 | |||
| 746 | The original argument list, modified with the actual connection | ||
| 747 | information, is available via the @code{process-contact} function. | ||
| 748 | @end defun | ||
| 749 | |||
| 695 | @node Deleting Processes | 750 | @node Deleting Processes |
| 696 | @section Deleting Processes | 751 | @section Deleting Processes |
| 697 | @cindex deleting processes | 752 | @cindex deleting processes |