Mercurial > emacs
changeset 56259:ed6c2f79cef5
* net/ange-ftp.el (ange-ftp-file-remote-p): New return value,
according to new documentation of `file-remote-p'.
* files.el (file-remote-p): Fix doc to say that return value is
identification of remote system, if not nil.
(file-relative-name): Use new return value of `file-remote-p'.
author | Kai Großjohann <kgrossjo@eu.uu.net> |
---|---|
date | Sat, 26 Jun 2004 14:41:13 +0000 |
parents | 3b1880995ace |
children | 2e0a719f6a41 |
files | lisp/ChangeLog lisp/files.el lisp/net/ange-ftp.el |
diffstat | 3 files changed, 20 insertions(+), 17 deletions(-) [+] |
line wrap: on
line diff
--- a/lisp/ChangeLog Sat Jun 26 13:12:28 2004 +0000 +++ b/lisp/ChangeLog Sat Jun 26 14:41:13 2004 +0000 @@ -1,3 +1,12 @@ +2004-06-26 Kai Grossjohann <kai.grossjohann@gmx.net> + + * net/ange-ftp.el (ange-ftp-file-remote-p): New return value, + according to new documentation of `file-remote-p'. + + * files.el (file-remote-p): Fix doc to say that return value is + identification of remote system, if not nil. + (file-relative-name): Use new return value of `file-remote-p'. + 2004-06-26 Nick Roberts <nickrob@gnu.org> * progmodes/gdb-ui.el (gdb-toggle-breakpoint)
--- a/lisp/files.el Sat Jun 26 13:12:28 2004 +0000 +++ b/lisp/files.el Sat Jun 26 14:41:13 2004 +0000 @@ -650,7 +650,13 @@ (load library)) (defun file-remote-p (file) - "Test whether FILE specifies a location on a remote system." + "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:\"." (let ((handler (find-file-name-handler file 'file-remote-p))) (if handler (funcall handler 'file-remote-p file) @@ -2916,8 +2922,8 @@ (file-name-as-directory (expand-file-name (or directory default-directory)))) (setq filename (expand-file-name filename)) - (let ((hf (find-file-name-handler filename 'file-remote-p)) - (hd (find-file-name-handler directory 'file-remote-p))) + (let ((fremote (file-remote-p filename)) + (dremote (file-remote-p directory))) (if ;; Conditions for separate trees (or ;; Test for different drives on DOS/Windows @@ -2925,20 +2931,8 @@ ;; Should `cygwin' really be included here? --stef (memq system-type '(ms-dos cygwin windows-nt)) (not (eq t (compare-strings filename 0 2 directory 0 2)))) - ;; Test for different remote file handlers - (not (eq hf hd)) ;; Test for different remote file system identification - (and - hf - (let ((re (car (rassq hf file-name-handler-alist)))) - (not - (equal - (and - (string-match re filename) - (substring filename 0 (match-end 0))) - (and - (string-match re directory) - (substring directory 0 (match-end 0)))))))) + (not (equal fremote dremote))) filename (let ((ancestor ".") (filename-dir (file-name-as-directory filename)))
--- a/lisp/net/ange-ftp.el Sat Jun 26 13:12:28 2004 +0000 +++ b/lisp/net/ange-ftp.el Sat Jun 26 14:41:13 2004 +0000 @@ -4117,7 +4117,7 @@ tmp1)))) (defun ange-ftp-file-remote-p (file) - (when (ange-ftp-ftp-name file) t)) + (ange-ftp-replace-name-component file "")) (defun ange-ftp-load (file &optional noerror nomessage nosuffix) (if (ange-ftp-ftp-name file)