[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
tramp (2.0.28); Tramp does not properly replace ange-ftp
From: |
Bruce Tulloch |
Subject: |
tramp (2.0.28); Tramp does not properly replace ange-ftp |
Date: |
Tue, 04 Feb 2003 16:12:17 +1100 |
User-agent: |
Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.0.0) Gecko/20020623 Debian/1.0.0-0.woody.1 |
--text follows this line--
Enter your bug report in this message, including as much
detail as you
possibly can about the problem, what you did to cause it and
what the
local and remote machines are.
If you can give a simple set of instructions to make this
bug happen
reliably, please include those. Thank you for helping kill
bugs in
TRAMP.
Another useful thing to do is to put (setq
tramp-debug-buffer t) in
the ~/.emacs file and to repeat the bug. Then, include the
contents
of the *tramp/foo* buffer and the *debug tramp/foo* buffer
in your bug
report.
--bug report follows this line--
Tramp does not turn off Ange-Ftp "permanently".
Instead ange-ftp hooks are removed from
file-name-handler-alist only
to be replaced in this alist (with higher priority than
tramp) when
next something else uses an ange-ftp function.
This breaks tramp's control of magic file names.
Upon booting up emacs I have:
file-name-handler-alist's value is
(("\\(\\.Z\\(~\\|\\.~[0-9]+~\\)?\\'\\)\\|\\(\\.bz2\\'\\)\\|\\(\\.tgz\\'\\)\\|\\(\\.gz\\(~\\|\\.~[0-9]+~\\)?\\'\\)"
. jka-compr-handler)
("\\`/[^/:]+:" . tramp-file-name-handler)
("^/[^/:]*\\'" . ange-ftp-completion-hook-function)
("^/[^/:]*[^/:.]:" . ange-ftp-hook-function)
("\\`/:" . file-name-non-special))
which is fine.
After causing the (auto)loading of tramp (by visiting a
remote file) I get:
file-name-handler-alist's value is
(("\\(\\.Z\\(~\\|\\.~[0-9]+~\\)?\\'\\)\\|\\(\\.bz2\\'\\)\\|\\(\\.tgz\\'\\)\\|\\(\\.gz\\(~\\|\\.~[0-9]+~\\)?\\'\\)"
. jka-compr-handler)
("^/[^/]*$" . tramp-completion-file-name-handler)
("\\`/[^/:]+:" . tramp-file-name-handler)
("\\`/:" . file-name-non-special))
after using ediff on a couple buffers, ange-ftp functions
are called
that seem to (re)load ange-ftp resulting in this:
file-name-handler-alist's value is
(("\\(\\.Z\\(~\\|\\.~[0-9]+~\\)?\\'\\)\\|\\(\\.bz2\\'\\)\\|\\(\\.tgz\\'\\)\\|\\(\\.gz\\(~\\|\\.~[0-9]+~\\)?\\'\\)"
. jka-compr-handler)
("^/[^/:]*\\'" . ange-ftp-completion-hook-function)
("^/[^/:]*[^/:.]:" . ange-ftp-hook-function)
("^/[^/]*$" . tramp-completion-file-name-handler)
("\\`/[^/:]+:" . tramp-file-name-handler)
("\\`/:" . file-name-non-special))
Reloading tramp-ftp is the only way I have found to reset
this alist
(other than manually). My question is why is it necessary to
remove
the ange-ftp hooks at all ? Would it not be better just to
leave them
in the list _below_ the tramp hooks. How can I do this ?
Emacs : GNU Emacs 20.7.2 (i386-debian-linux-gnu, X toolkit)
of Fri Apr 5 2002 on cyberhq modified by Debian
Package: tramp (2.0.28)
current state:
==============
(setq
tramp-ls-command nil
tramp-test-groks-nt nil
tramp-file-exists-command nil
tramp-current-multi-method nil
tramp-current-method nil
tramp-current-user nil
tramp-current-host nil
tramp-auto-save-directory nil
tramp-default-method "ssh"
tramp-rsh-end-of-line "\n"
tramp-password-end-of-line "\n"
tramp-remote-path '("/bin" "/usr/bin" "/usr/sbin"
"/usr/local/bin" "/usr/ccs/bin" "/local/bin"
"/local/freeware/bin" "/local/gnu/bin" "/usr/freeware/bin"
"/usr/pkg/bin" "/usr/contrib/bin")
tramp-login-prompt-regexp ".*ogin: *"
tramp-password-prompt-regexp
"^.*\\([pP]assword\\|passphrase.*\\):
- tramp (2.0.28); Tramp does not properly replace ange-ftp,
Bruce Tulloch <=