diff lisp/net/tramp.el @ 70020:2578326defd6

* net/tramp.el (tramp-display-shell-command-buffer): New defvar. (tramp-handle-shell-command): Display output buffer only when `tramp-display-shell-command-buffer' is true. (tramp-handle-process-file): Set `tramp-display-shell-command-buffer'.
author Michael Albinus <michael.albinus@gmx.de>
date Thu, 13 Apr 2006 19:51:04 +0000
parents 3a5ea93ff8b4
children def3f4aee280 c156f6a9e7b5
line wrap: on
line diff
--- a/lisp/net/tramp.el	Thu Apr 13 16:41:10 2006 +0000
+++ b/lisp/net/tramp.el	Thu Apr 13 19:51:04 2006 +0000
@@ -3584,6 +3584,10 @@
   "Global variable keeping asynchronous process object.
 Used in `tramp-handle-shell-command'")
 
+(defvar tramp-display-shell-command-buffer t
+  "Whether to display output buffer of `shell-command'.
+This is necessary for handling DISPLAY of `process-file'.")
+
 (defun tramp-handle-shell-command (command &optional output-buffer error-buffer)
   "Like `shell-command' for tramp files.
 This will break if COMMAND prints a newline, followed by the value of
@@ -3692,7 +3696,8 @@
 	      (skip-chars-forward "^ ")
 	      (setq status (read (current-buffer)))))
 	  (unless (zerop (buffer-size))
-	    (display-buffer output-buffer))
+	    (when tramp-display-shell-command-buffer
+	      (display-buffer output-buffer)))
 	  status))
     ;; The following is only executed if something strange was
     ;; happening.  Emit a helpful message and do it anyway.
@@ -3707,11 +3712,10 @@
   (when (and (numberp buffer) (zerop buffer))
     (error "Implementation does not handle immediate return"))
   (when (consp buffer) (error "Implementation does not handle error files"))
-  (shell-command
-   (mapconcat 'tramp-shell-quote-argument
-              (cons program args)
-              " ")
-   buffer))
+  (let ((tramp-display-shell-command-buffer display))
+    (shell-command
+     (mapconcat 'tramp-shell-quote-argument (cons program args) " ")
+     buffer)))
 
 ;; File Editing.