comparison lisp/ange-ftp.el @ 3532:09bff9415131

(ange-ftp-real-load): New function. (ange-ftp-load): New function--handles `load'.
author Richard M. Stallman <rms@gnu.org>
date Mon, 07 Jun 1993 04:51:25 +0000
parents c2b4a5b9c8d5
children 507f64624555
comparison
equal deleted inserted replaced
3531:0732700eb6c0 3532:09bff9415131
854 854
855 ;;;; ------------------------------------------------------------ 855 ;;;; ------------------------------------------------------------
856 ;;;; Internal variables. 856 ;;;; Internal variables.
857 ;;;; ------------------------------------------------------------ 857 ;;;; ------------------------------------------------------------
858 858
859 (defconst ange-ftp-version "$Revision: 1.22 $") 859 (defconst ange-ftp-version "$Revision: 1.23 $")
860 860
861 (defvar ange-ftp-data-buffer-name " *ftp data*" 861 (defvar ange-ftp-data-buffer-name " *ftp data*"
862 "Buffer name to hold directory listing data received from ftp process.") 862 "Buffer name to hold directory listing data received from ftp process.")
863 863
864 (defvar ange-ftp-netrc-modtime nil 864 (defvar ange-ftp-netrc-modtime nil
3619 (let* ((tmp1 (ange-ftp-make-tmp-name (car pa1))) 3619 (let* ((tmp1 (ange-ftp-make-tmp-name (car pa1)))
3620 (bin1 (ange-ftp-binary-file fn1))) 3620 (bin1 (ange-ftp-binary-file fn1)))
3621 (ange-ftp-copy-file-internal fn1 tmp1 t nil 3621 (ange-ftp-copy-file-internal fn1 tmp1 t nil
3622 (format "Getting %s" fn1)) 3622 (format "Getting %s" fn1))
3623 tmp1)))) 3623 tmp1))))
3624 3624
3625 (defun ange-ftp-load (file)
3626 (if (ange-ftp-ftp-name file)
3627 (let ((copy (ange-ftp-file-local-copy file)))
3628 (unwind-protect
3629 (load copy)
3630 (delete-file copy)))
3631 (ange-ftp-real-load file)))
3632
3625 ;; Calculate default-unhandled-directory for a given ange-ftp buffer. 3633 ;; Calculate default-unhandled-directory for a given ange-ftp buffer.
3626 (defun ange-ftp-unhandled-file-name-directory (filename) 3634 (defun ange-ftp-unhandled-file-name-directory (filename)
3627 (file-name-directory ange-ftp-tmp-name-template)) 3635 (file-name-directory ange-ftp-tmp-name-template))
3628 3636
3629 3637
3781 (put 'unhandled-file-name-directory 'ange-ftp 3789 (put 'unhandled-file-name-directory 'ange-ftp
3782 'ange-ftp-unhandled-file-name-directory) 3790 'ange-ftp-unhandled-file-name-directory)
3783 (put 'file-name-sans-versions 'ange-ftp 'ange-ftp-file-name-sans-versions) 3791 (put 'file-name-sans-versions 'ange-ftp 'ange-ftp-file-name-sans-versions)
3784 (put 'dired-uncache 'ange-ftp 'ange-ftp-dired-uncache) 3792 (put 'dired-uncache 'ange-ftp 'ange-ftp-dired-uncache)
3785 (put 'dired-compress-file 'ange-ftp 'ange-ftp-dired-compress-file) 3793 (put 'dired-compress-file 'ange-ftp 'ange-ftp-dired-compress-file)
3794 (put 'load 'ange-ftp 'ange-ftp-load)
3786 3795
3787 ;; Turn off truename processing to save time. 3796 ;; Turn off truename processing to save time.
3788 ;; Treat each name as its own truename. 3797 ;; Treat each name as its own truename.
3789 (put 'file-truename 'ange-ftp 'identity) 3798 (put 'file-truename 'ange-ftp 'identity)
3790 3799
3874 (let (file-name-handler-alist) 3883 (let (file-name-handler-alist)
3875 (apply 'file-name-sans-versions args))) 3884 (apply 'file-name-sans-versions args)))
3876 (defun ange-ftp-real-shell-command (&rest args) 3885 (defun ange-ftp-real-shell-command (&rest args)
3877 (let (file-name-handler-alist) 3886 (let (file-name-handler-alist)
3878 (apply 'shell-command args))) 3887 (apply 'shell-command args)))
3888 (defun ange-ftp-real-load (&rest args)
3889 (let (file-name-handler-alist)
3890 (apply 'load args)))
3879 3891
3880 ;; Here we support using dired on remote hosts. 3892 ;; Here we support using dired on remote hosts.
3881 ;; I have turned off the support for using dired on foreign directory formats. 3893 ;; I have turned off the support for using dired on foreign directory formats.
3882 ;; That involves too many unclean hooks. 3894 ;; That involves too many unclean hooks.
3883 ;; It would be cleaner to support such operations by 3895 ;; It would be cleaner to support such operations by