diff options
author | Jason Rumney <jasonr@gnu.org> | 2006-09-15 23:53:48 +0000 |
---|---|---|
committer | Jason Rumney <jasonr@gnu.org> | 2006-09-15 23:53:48 +0000 |
commit | 8e9e7fa199123417ba55dcb1ad8c0a6181cb9384 (patch) | |
tree | f667b926306f750c458d2850f49a66365b63a72a /lisp | |
parent | 05ca18a822791db528d4bc7be83399a6ef8d3497 (diff) | |
download | emacs-8e9e7fa199123417ba55dcb1ad8c0a6181cb9384.tar.gz |
(dnd-open-remote-file-function): Use dnd-open-local-file on ms-windows.
(dnd-open-unc-file): Remove.
(dnd-open-local-file): Mention in doc string that it also handles
remote files if the system natively supports unc file-names.
Diffstat (limited to 'lisp')
-rw-r--r-- | lisp/ChangeLog | 8 | ||||
-rw-r--r-- | lisp/dnd.el | 32 |
2 files changed, 18 insertions, 22 deletions
diff --git a/lisp/ChangeLog b/lisp/ChangeLog index 1a94a34f7cd..04a32dad602 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog @@ -1,3 +1,11 @@ +2006-09-16 Jason Rumney <jasonr@gnu.org> + + * dnd.el (dnd-open-remote-file-function): Use dnd-open-local-file + on ms-windows. + (dnd-open-unc-file): Remove. + (dnd-open-local-file): Mention in doc string that it also handles + remote files if the system natively supports unc file-names. + 2006-09-15 Kim F. Storm <storm@cua.dk> * help.el (describe-key): Handle C-h k in *Help* buffer; collect diff --git a/lisp/dnd.el b/lisp/dnd.el index f1e1c6b1b9e..f8cdf9a1239 100644 --- a/lisp/dnd.el +++ b/lisp/dnd.el @@ -61,16 +61,16 @@ if some action was made, or nil if the URL is ignored." (defcustom dnd-open-remote-file-function (if (eq system-type 'windows-nt) - 'dnd-open-unc-file + 'dnd-open-local-file 'dnd-open-remote-url) "The function to call when opening a file on a remote machine. The function will be called with two arguments; URI and ACTION. See `dnd-open-file' for details. If nil, then dragging remote files into Emacs will result in an error. -Predefined functions are `dnd-open-unc-file' and `dnd-open-remote-url'. -`dnd-open-unc-file' attempts to open the file using its UNC name and is the -default on MS-Windows. `dnd-open-remote-url' uses `url-handler-mode' and -is the default except for MS-Windows." +Predefined functions are `dnd-open-local-file' and `dnd-open-remote-url'. +`dnd-open-local-file' attempts to open a remote file using its UNC name and +is the default on MS-Windows. `dnd-open-remote-url' uses `url-handler-mode' +and is the default except for MS-Windows." :version "22.1" :type 'function :group 'dnd) @@ -163,7 +163,11 @@ Return nil if URI is not a local file." The file is opened in the current window, or a new window if `dnd-open-file-other-window' is set. URI is the url for the file, and must have the format file:file-name or file:///file-name. -The last / in file:/// is part of the file name. ACTION is ignored." +The last / in file:/// is part of the file name. If the system +natively supports unc file names, then remote urls of the form +file://server-name/file-name will also be handled by this function. +An alternative for systems that do not support unc file names is +`dnd-open-remote-url'. ACTION is ignored." (let* ((f (dnd-get-local-file-name uri t))) (if (and f (file-readable-p f)) @@ -174,22 +178,6 @@ The last / in file:/// is part of the file name. ACTION is ignored." 'private) (error "Can not read %s" uri)))) -(defun dnd-open-unc-file (uri action) - "Open a remote file using its unc path. -The file is opened in the current window, or a new window if -`dnd-open-file-other-window' is set. URI is the url for the file, -and must have the format file://hostname/file-name. ACTION is ignored. -//hostname/file-name is the unc path." - (let ((unc-file (if (string-match "^file:" uri) - (substring uri 5)))) - (if (and unc-file (file-readable-p unc-file)) - (progn - (if dnd-open-file-other-window - (find-file-other-window unc-file) - (find-file unc-file)) - 'private) - (error "Invalid file url")))) - (defun dnd-open-remote-url (uri action) "Open a remote file with `find-file' and `url-handler-mode'. Turns `url-handler-mode' on if not on before. The file is opened in the |