Commit 3f788773 authored by Kai Großjohann's avatar Kai Großjohann
Browse files

* 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'.
parent 2101105e
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> 2004-06-26 Nick Roberts <nickrob@gnu.org>
* progmodes/gdb-ui.el (gdb-toggle-breakpoint) * progmodes/gdb-ui.el (gdb-toggle-breakpoint)
......
...@@ -650,7 +650,13 @@ This is an interface to the function `load'." ...@@ -650,7 +650,13 @@ This is an interface to the function `load'."
(load library)) (load library))
(defun file-remote-p (file) (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))) (let ((handler (find-file-name-handler file 'file-remote-p)))
(if handler (if handler
(funcall handler 'file-remote-p file) (funcall handler 'file-remote-p file)
...@@ -2916,8 +2922,8 @@ on a DOS/Windows machine, it returns FILENAME on expanded form." ...@@ -2916,8 +2922,8 @@ on a DOS/Windows machine, it returns FILENAME on expanded form."
(file-name-as-directory (expand-file-name (or directory (file-name-as-directory (expand-file-name (or directory
default-directory)))) default-directory))))
(setq filename (expand-file-name filename)) (setq filename (expand-file-name filename))
(let ((hf (find-file-name-handler filename 'file-remote-p)) (let ((fremote (file-remote-p filename))
(hd (find-file-name-handler directory 'file-remote-p))) (dremote (file-remote-p directory)))
(if ;; Conditions for separate trees (if ;; Conditions for separate trees
(or (or
;; Test for different drives on DOS/Windows ;; Test for different drives on DOS/Windows
...@@ -2925,20 +2931,8 @@ on a DOS/Windows machine, it returns FILENAME on expanded form." ...@@ -2925,20 +2931,8 @@ on a DOS/Windows machine, it returns FILENAME on expanded form."
;; Should `cygwin' really be included here? --stef ;; Should `cygwin' really be included here? --stef
(memq system-type '(ms-dos cygwin windows-nt)) (memq system-type '(ms-dos cygwin windows-nt))
(not (eq t (compare-strings filename 0 2 directory 0 2)))) (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 ;; Test for different remote file system identification
(and (not (equal fremote dremote)))
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))))))))
filename filename
(let ((ancestor ".") (let ((ancestor ".")
(filename-dir (file-name-as-directory filename))) (filename-dir (file-name-as-directory filename)))
......
...@@ -4117,7 +4117,7 @@ directory, so that Emacs will know its current contents." ...@@ -4117,7 +4117,7 @@ directory, so that Emacs will know its current contents."
tmp1)))) tmp1))))
(defun ange-ftp-file-remote-p (file) (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) (defun ange-ftp-load (file &optional noerror nomessage nosuffix)
(if (ange-ftp-ftp-name file) (if (ange-ftp-ftp-name file)
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment