summaryrefslogtreecommitdiff
path: root/lisp/files.el
diff options
context:
space:
mode:
authorMichael Albinus <michael.albinus@gmx.de>2007-07-08 18:03:20 +0000
committerMichael Albinus <michael.albinus@gmx.de>2007-07-08 18:03:20 +0000
commitd08ab4c3f48799c5e1c0d032f55c5d77e46202ab (patch)
tree13bdba0ff3b6f8cc4fba810d6496286b93291bf4 /lisp/files.el
parentc4e2993c64843369d7ac17c181b9124bdb92e41c (diff)
downloademacs-d08ab4c3f48799c5e1c0d032f55c5d77e46202ab.tar.gz
* files.el (file-remote-p): Introduce optional parameter CONNECTED.
* net/tramp.el: * net/tramp-ftp.el: * net/tramp-smb.el: * net/tramp-uu.el: * net/trampver.el: Migrate to Tramp 2.1. * net/tramp-cache.el: * net/tramp-fish.el: * net/tramp-gw.el: New Tramp packages. * net/tramp-util.el: * net/tramp-vc.el: Removed. * net/ange-ftp.el: Add ange-ftp property to 'start-file-process (ange-ftp-file-remote-p): Handle optional parameter CONNECTED. * net/rcompile.el (remote-compile): Handle Tramp 2.1 arguments. * progmodes/compile.el (compilation-start): Redefine `start-process' temporarily when `default-directory' is remote. Remove case of synchronous compilation, this won't happen ever. (compilation-setup): Make local variable `comint-file-name-prefix' for remote compilation.
Diffstat (limited to 'lisp/files.el')
-rw-r--r--lisp/files.el12
1 files changed, 9 insertions, 3 deletions
diff --git a/lisp/files.el b/lisp/files.el
index 69ed54c5633..9458f231c8d 100644
--- a/lisp/files.el
+++ b/lisp/files.el
@@ -727,17 +727,23 @@ This is an interface to the function `load'."
(cons load-path (get-load-suffixes)))))
(load library))
-(defun file-remote-p (file)
+(defun file-remote-p (file &optional connected)
"Test whether FILE specifies a location on a remote system.
Return an identification of the system if the location is indeed
remote. The identification of the system may comprise a method
to access the system and its hostname, amongst other things.
For example, the filename \"/user@host:/foo\" specifies a location
-on the system \"/user@host:\"."
+on the system \"/user@host:\".
+
+If CONNECTED is non-nil, the function returns an identification only
+if FILE is located on a remote system, and a connection is established
+to that remote system.
+
+`file-remote-p' will never open a connection on its own."
(let ((handler (find-file-name-handler file 'file-remote-p)))
(if handler
- (funcall handler 'file-remote-p file)
+ (funcall handler 'file-remote-p file connected)
nil)))
(defun file-local-copy (file)