[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: ange-ftp problem
From: |
Michael Albinus |
Subject: |
Re: ange-ftp problem |
Date: |
Thu, 29 Jan 2004 20:59:42 +0100 |
User-agent: |
Gnus/5.1002 (Gnus v5.10.2) Emacs/21.3.50 (gnu/linux) |
Stefan Monnier <address@hidden> writes:
> Finally, I don't think I have write-access to any ftp server any more.
> Can I use sftp instead? How would I go about telling ange-ftp to use sftp?
I've tried shortly the following settings, it didn't work. But you get
an inspiration what to do ...
(setq ange-ftp-ftp-program-name "sftp"
ange-ftp-ftp-program-args '("v")
tramp-default-method "ftp")
> One more thing: if someone could reproduce (part of) the problem without
> dired, that would help (or if someone could edebug dired to see where the
> problem comes from).
Hm. The problem is related to dired: copying the file via ange-ftp
works, the error happens when dired refreshes the buffer.
If you manage to setup ange-ftp you can try the following scenario:
- Load both the local and remote dired buffers
C-x C-f /localhost:/tmp/
C-x C-f ~/
- Set the cursor on any file on the local dired buffer
- Copy the file to the remote host
C /localhost:/tmp/
> Oh, wait: could you get a backtrace (by setting setq debug-on-error or if
> that doesn't work, by setting debug-on-signal) ?
There's no backtrace setting debug-*. I've put a backtrace call into
ange-ftp-error, here it is:
# backtrace()
(let ((standard-output standard-output)) (backtrace))
(let ((standard-output ...)) (let (...) (backtrace)) (with-current-buffer
standard-output (prog1 ... ...)))
(with-output-to-string (backtrace))
(tramp-message 1 "%s" (with-output-to-string (backtrace)))
ange-ftp-error("localhost" "albinus" #("DIR failed: 550 /tmp/.emacs: No such
file or directory." 0 12 nil 12 55 (inhibit-line-move-field-capture t field
output rear-nonsticky t)))
(if no-error nil (ange-ftp-error host user (concat "DIR failed: " ...)))
(if (car (setq result ...)) (save-excursion (set-buffer ...) (erase-buffer)
(if ... ... ... ...) (while ... ...) (goto-char 1) (run-hooks ...) (if parse
...) (run-hooks ...) (setq ange-ftp-ls-cache-file key ange-ftp-ls-cache-lsargs
lsargs ange-ftp-ls-cache-res ...) (if ... nil ange-ftp-ls-cache-res)) (if
no-error nil (ange-ftp-error host user ...)))
(unwind-protect (if (car ...) (save-excursion ... ... ... ... ... ... ... ...
... ...) (if no-error nil ...)) (ange-ftp-del-tmp-name temp))
(if (and ange-ftp-ls-cache-file (string-equal key ange-ftp-ls-cache-file) (or
dumb ...)) ange-ftp-ls-cache-res (setq temp (ange-ftp-make-tmp-name host)) (if
wildcard (progn ... ...) (setq lscmd ...)) (unwind-protect (if ... ... ...)
(ange-ftp-del-tmp-name temp)))
(let* ((host ...) (user ...) (name ...) (key ...) (host-type ...) (dumb ...)
result temp lscmd parse-func) (if (string-equal name "") (setq name ...)) (if
(and ange-ftp-ls-cache-file ... ...) ange-ftp-ls-cache-res (setq temp ...) (if
wildcard ... ...) (unwind-protect ... ...)))
(if parsed (let* (... ... ... ... ... ... result temp lscmd parse-func) (if
... ...) (if ... ange-ftp-ls-cache-res ... ... ...)) (error "Should never
happen. Please report. Bug ref. no.: 1"))
(let* ((ange-ftp-this-file ...) (parsed ...)) (if parsed (let* ... ... ...)
(error "Should never happen. Please report. Bug ref. no.: 1")))
ange-ftp-ls(".emacs" "--dired -ald" nil)
(if wildcard (let (...) (ange-ftp-ls ... switches nil nil t)) (ange-ftp-ls
file switches full))
(insert (if wildcard (let ... ...) (ange-ftp-ls file switches full)))
(if (and (not wildcard) (setq tem ...)) (ange-ftp-insert-directory
(ange-ftp-expand-symlink tem ...) switches wildcard full) (insert (if wildcard
... ...)))
(if parsed (if (and ... ...) (ange-ftp-insert-directory ... switches wildcard
full) (insert ...)) (ange-ftp-real-insert-directory file switches wildcard
full))
(let ((short ...) (parsed ...) tem) (if parsed (if ... ... ...)
(ange-ftp-real-insert-directory file switches wildcard full)))
ange-ftp-insert-directory(".emacs" "--dired -ald" nil nil)
apply(ange-ftp-insert-directory (".emacs" "--dired -ald" nil nil))
(progn (apply fn args))
(unwind-protect (progn (apply fn args)) (set-match-data
save-match-data-internal))
(let ((save-match-data-internal ...)) (unwind-protect (progn ...)
(set-match-data save-match-data-internal)))
(save-match-data (apply fn args))
(if fn (save-match-data (apply fn args)) (ange-ftp-run-real-handler operation
args))
(let ((fn ...)) (if fn (save-match-data ...) (ange-ftp-run-real-handler
operation args)))
ange-ftp-hook-function(insert-directory ".emacs" "--dired -ald" nil nil)
apply(ange-ftp-hook-function insert-directory (".emacs" "--dired -ald" nil
nil))
(let* ((inhibit-file-name-handlers ...) (inhibit-file-name-operation
operation)) (apply (quote ange-ftp-hook-function) operation args))
(cond ((memq operation ...) (apply ... operation args)) (t (let* ... ...)))
(let ((ange-ftp-name-format ...) (ange-ftp-ftp-name-arg "")
(ange-ftp-ftp-name-res nil)) (cond (... ...) (t ...)))
(progn (or (boundp ...) (require ...)) (let (... ... ...) (cond ... ...)))
(unwind-protect (progn (or ... ...) (let ... ...)) (set-match-data
save-match-data-internal))
(let ((save-match-data-internal ...)) (unwind-protect (progn ... ...)
(set-match-data save-match-data-internal)))
(save-match-data (or (boundp ...) (require ...)) (let (... ... ...) (cond ...
...)))
tramp-ftp-file-name-handler(insert-directory ".emacs" "--dired -ald" nil nil)
apply(tramp-ftp-file-name-handler insert-directory (".emacs" "--dired -ald"
nil nil))
(cond (foreign (apply foreign operation args)) (t (tramp-run-real-handler
operation args)))
(let* ((filename ...) (foreign ...)) (cond (foreign ...) (t ...)))
(progn (let* (... ...) (cond ... ...)))
(unwind-protect (progn (let* ... ...)) (set-match-data
save-match-data-internal))
(let ((save-match-data-internal ...)) (unwind-protect (progn ...)
(set-match-data save-match-data-internal)))
(save-match-data (let* (... ...) (cond ... ...)))
tramp-file-name-handler(insert-directory ".emacs" "--dired -ald" nil nil)
insert-directory(".emacs" "--dired -ald" nil nil)
(while --dolist-temp--46606 (setq f (car --dolist-temp--46606))
(insert-directory f switches nil nil) (setq --dolist-temp--46606 (cdr
--dolist-temp--46606)))
(let ((--dolist-temp--46606 file-list) f) (while --dolist-temp--46606 (setq f
...) (insert-directory f switches nil nil) (setq --dolist-temp--46606 ...)) nil)
(catch (quote --cl-block-nil--) (let (... f) (while --dolist-temp--46606 ...
... ...) nil))
(cl-block-wrapper (catch (quote --cl-block-nil--) (let ... ... nil)))
(block nil (let (... f) (while --dolist-temp--46606 ... ... ...) nil))
(dolist (f file-list) (insert-directory f switches nil nil))
(if file-list (dolist (f file-list) (insert-directory f switches nil nil))
(insert-directory dir switches wildcard (not wildcard)))
(let ((opoint ...) (process-environment ...) end) (if (or dired-use-ls-dired
...) (setq switches ...)) (if file-list (dolist ... ...) (insert-directory dir
switches wildcard ...)) (if (not ...) (save-excursion ... ... ... ... ... ...))
(dired-insert-set-properties opoint (point)) (unless (save-excursion ... ...)
(let ... ...)) (save-excursion (goto-char opoint) (if ... ...) (when wildcard
...)))
dired-insert-directory("/localhost:/tmp/" "-ald" (".emacs"))
(let ((default-directory directory)) (dired-insert-directory directory
(concat dired-actual-switches "d") (list filename)))
(let (buffer-read-only opoint) (beginning-of-line) (setq opoint (point)) (let
(...) (dired-insert-directory directory ... ...)) (goto-char opoint) (when
marker-char (let ... ...)) (goto-char opoint) (let (...) (if ... ... ...))
(forward-line -1) (if dired-after-readin-hook (save-excursion ...))
(dired-move-to-filename))
(catch (quote not-found) (if (string= directory cur-dir) (progn ... ... ...)
(if ... ... ...)) (let (buffer-read-only opoint) (beginning-of-line) (setq
opoint ...) (let ... ...) (goto-char opoint) (when marker-char ...) (goto-char
opoint) (let ... ...) (forward-line -1) (if dired-after-readin-hook ...)
(dired-move-to-filename)) nil)
(setq filename (if relative (file-relative-name filename directory)
(file-name-nondirectory filename)) reason (catch (quote not-found) (if ... ...
...) (let ... ... ... ... ... ... ... ... ... ... ...) nil))
(let* ((opoint ...) (cur-dir ...) (orig-file-name filename) (directory ...)
reason) (setq filename (if relative ... ...) reason (catch ... ... ... nil))
(if reason (goto-char opoint)) (not reason))
dired-add-entry("/localhost:/tmp/.emacs" 67)
apply(dired-add-entry ("/localhost:/tmp/.emacs" 67))
(if (apply fun args) (setq success-list (cons ... success-list)))
(save-current-buffer (set-buffer buf) (if (apply fun args) (setq success-list
...)))
(with-current-buffer buf (if (apply fun args) (setq success-list ...)))
(while --dolist-temp--46605 (setq buf (car --dolist-temp--46605))
(with-current-buffer buf (if ... ...)) (setq --dolist-temp--46605 (cdr
--dolist-temp--46605)))
(let ((--dolist-temp--46605 ...) buf) (while --dolist-temp--46605 (setq buf
...) (with-current-buffer buf ...) (setq --dolist-temp--46605 ...)) nil)
(catch (quote --cl-block-nil--) (let (... buf) (while --dolist-temp--46605
... ... ...) nil))
(cl-block-wrapper (catch (quote --cl-block-nil--) (let ... ... nil)))
(block nil (let (... buf) (while --dolist-temp--46605 ... ... ...) nil))
(dolist (buf (dired-buffers-for-dir ... file)) (with-current-buffer buf (if
... ...)))
(let (success-list) (dolist (buf ...) (with-current-buffer buf ...))
success-list)
dired-fun-in-all-buffers("/localhost:/tmp/" ".emacs" dired-add-entry
"/localhost:/tmp/.emacs" 67)
dired-add-file("/localhost:/tmp/.emacs" 67)
(progn (funcall file-creator from to dired-overwrite-confirmed) (if overwrite
(dired-remove-file to)) (setq success-count (1+ success-count)) (message "%s:
%d of %d" operation success-count total) (dired-add-file to actual-marker-char))
(condition-case err (progn (funcall file-creator from to
dired-overwrite-confirmed) (if overwrite ...) (setq success-count ...) (message
"%s: %d of %d" operation success-count total) (dired-add-file to
actual-marker-char)) (file-error (progn ... ...)))
(let* ((overwrite ...) (dired-overwrite-confirmed ...) (actual-marker-char
...)) (condition-case err (progn ... ... ... ... ...) (file-error ...)))
(if (not to) (setq skipped (cons ... skipped)) (let* (... ... ...)
(condition-case err ... ...)))
(lambda (from) (setq to (funcall name-constructor from)) (if (equal to from)
(progn ... ...)) (if (not to) (setq skipped ...) (let* ...
...)))("/home/albinus/.emacs")
mapcar((lambda (from) (setq to (funcall name-constructor from)) (if (equal to
from) (progn ... ...)) (if (not to) (setq skipped ...) (let* ... ...)))
("/home/albinus/.emacs"))
(let (to overwrite-query overwrite-backup-query) (mapcar (function ...)
fn-list))
(let (failures skipped (success-count 0) (total ...)) (let (to
overwrite-query overwrite-backup-query) (mapcar ... fn-list)) (cond (failures
...) (skipped ...) (t ...)))
dired-create-files(dired-copy-file "Copy [-p]" ("/home/albinus/.emacs")
(lambda (from) (expand-file-name (file-name-nondirectory from) target)) 67)
(if (and (consp into-dir) (functionp ...)) (apply (car into-dir) operation
rfn-list fn-list target (cdr into-dir)) (if (not ...) (error "Marked %s: target
must be a directory: %s" operation target)) (or into-dir (setq target ...))
(dired-create-files file-creator operation fn-list (if into-dir ... ...)
marker-char))
(let* ((fn-list ...) (rfn-list ...) (dired-one-file ...) (target-dir ...)
(default ...) (target ...) (into-dir ...)) (if (and ... ...) (apply ...
operation rfn-list fn-list target ...) (if ... ...) (or into-dir ...)
(dired-create-files file-creator operation fn-list ... marker-char)))
dired-do-create-files(copy dired-copy-file "Copy [-p]" nil 67 nil nil)
(let ((dired-recursive-copies dired-recursive-copies)) (dired-do-create-files
(quote copy) (function dired-copy-file) (if dired-copy-preserve-time "Copy
[-p]" "Copy") arg dired-keep-marker-copy nil dired-copy-how-to-fn))
dired-do-copy(nil)
call-interactively(dired-do-copy)
> Stefan
Best regards, Michael.
- ange-ftp-name-format needs to be improved, Katsumi Yamaoka, 2004/01/21
- Re: ange-ftp-name-format needs to be improved, Michael Albinus, 2004/01/24
- Re: ange-ftp-name-format needs to be improved, Katsumi Yamaoka, 2004/01/26
- Tramp ftp bug (was Re: ange-ftp-name-format needs to be improved), Katsumi Yamaoka, 2004/01/26
- ange-ftp problem (was: ange-ftp-name-format needs to be improved), Michael Albinus, 2004/01/28
- Re: ange-ftp problem, Katsumi Yamaoka, 2004/01/28
- Re: ange-ftp problem (was: ange-ftp-name-format needs to be improved), Stefan Monnier, 2004/01/28
- Re: ange-ftp problem, Juri Linkov, 2004/01/28
- Re: ange-ftp problem, Stefan Monnier, 2004/01/29
- Re: ange-ftp problem,
Michael Albinus <=
- Re: ange-ftp problem, Juri Linkov, 2004/01/29