Function: start-process
start-process is a byte-compiled function defined in subr.el.gz.
Signature
(start-process NAME BUFFER PROGRAM &rest PROGRAM-ARGS)
Documentation
Start a program in a subprocess. Return the process object for it.
NAME is name for process. It is modified if necessary to make it unique. BUFFER is the buffer (or buffer name) to associate with the process.
Process output (both standard output and standard error streams) goes at end of BUFFER, unless you specify a filter function to handle the output. BUFFER may also be nil, meaning that this process is not associated with any buffer.
PROGRAM is the program file name. It is searched for in exec-path(var)/exec-path(fun)
(which see). If nil, just associate a pty with the buffer. Remaining
arguments PROGRAM-ARGS are strings to give program as arguments.
If you want to separate standard output from standard error, use
make-process or invoke the command through a shell and redirect
one of them using the shell syntax.
The process runs in default-directory if that is local (as
determined by unhandled-file-name-directory), or "~"
otherwise. If you want to run a process in a remote directory
use start-file-process.
Probably introduced at or before Emacs version 17.
Source Code
;; Defined in /usr/src/emacs/lisp/subr.el.gz
;;;; Process stuff.
(defun start-process (name buffer program &rest program-args)
"Start a program in a subprocess. Return the process object for it.
NAME is name for process. It is modified if necessary to make it unique.
BUFFER is the buffer (or buffer name) to associate with the process.
Process output (both standard output and standard error streams)
goes at end of BUFFER, unless you specify a filter function to
handle the output. BUFFER may also be nil, meaning that this
process is not associated with any buffer.
PROGRAM is the program file name. It is searched for in `exec-path'
\(which see). If nil, just associate a pty with the buffer. Remaining
arguments PROGRAM-ARGS are strings to give program as arguments.
If you want to separate standard output from standard error, use
`make-process' or invoke the command through a shell and redirect
one of them using the shell syntax.
The process runs in `default-directory' if that is local (as
determined by `unhandled-file-name-directory'), or \"~\"
otherwise. If you want to run a process in a remote directory
use `start-file-process'."
(unless (fboundp 'make-process)
(error "Emacs was compiled without subprocess support"))
(apply #'make-process
(append (list :name name :buffer buffer)
(if program
(list :command (cons program program-args))))))