emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Emacs-diffs] emacs-25 c7ed57e 2/3: Mention that processes start in defa


From: Noam Postavsky
Subject: [Emacs-diffs] emacs-25 c7ed57e 2/3: Mention that processes start in default-directory (Bug#18515)
Date: Thu, 6 Apr 2017 19:16:56 -0400 (EDT)

branch: emacs-25
commit c7ed57eaef46ed74ce926fc05dec9eaa5737f3d9
Author: Noam Postavsky <address@hidden>
Commit: Noam Postavsky <address@hidden>

    Mention that processes start in default-directory (Bug#18515)
    
    * doc/lispref/processes.texi (Synchronous Processes):
    (Asynchronous Processes):
    * lisp/subr.el (start-process):
    * src/callproc.c (call-process): Mention that the subprocess starts in
    `default-directory' when local, suggest `start-file-process' and
    `process-file' otherwise.
---
 doc/lispref/processes.texi | 13 +++++++++++--
 lisp/subr.el               |  7 ++++++-
 src/callproc.c             |  4 ++++
 3 files changed, 21 insertions(+), 3 deletions(-)

diff --git a/doc/lispref/processes.texi b/doc/lispref/processes.texi
index 2a79cc7..2acb7c9 100644
--- a/doc/lispref/processes.texi
+++ b/doc/lispref/processes.texi
@@ -300,8 +300,11 @@ system, much like text written into a file.  @xref{Coding 
Systems}.
 @defun call-process program &optional infile destination display &rest args
 This function calls @var{program} and waits for it to finish.
 
-The current working directory of the subprocess is
address@hidden
+The current working directory of the subprocess is set to the current
+buffer's value of @code{default-directory} if that is local (as
+determined by @code{unhandled-file-name-directory}), or "~" otherwise.
+If you want to run a process in a remote directory use
address@hidden
 
 The standard input for the new process comes from file @var{infile} if
 @var{infile} is not @code{nil}, and from the null device otherwise.
@@ -677,6 +680,12 @@ created with @code{make-pipe-process}, described below.
 
 The original argument list, modified with the actual connection
 information, is available via the @code{process-contact} function.
+
+The current working directory of the subprocess is set to the current
+buffer's value of @code{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 direcotry use
address@hidden
 @end defun
 
 @defun make-pipe-process &rest args
diff --git a/lisp/subr.el b/lisp/subr.el
index ebac2e0..472f931 100644
--- a/lisp/subr.el
+++ b/lisp/subr.el
@@ -1970,7 +1970,12 @@ 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."
+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
diff --git a/src/callproc.c b/src/callproc.c
index 6d69e13..a781e47 100644
--- a/src/callproc.c
+++ b/src/callproc.c
@@ -240,6 +240,10 @@ Otherwise it waits for PROGRAM to terminate
 and returns a numeric exit status or a signal description string.
 If you quit, the process is killed with SIGINT, or SIGKILL if you quit again.
 
+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 `process-file'.
+
 usage: (call-process PROGRAM &optional INFILE DESTINATION DISPLAY &rest ARGS)  
*/)
   (ptrdiff_t nargs, Lisp_Object *args)
 {



reply via email to

[Prev in Thread] Current Thread [Next in Thread]