Frequently Asked Questions
**************************
* Where can I get the latest TRAMP?
TRAMP is available under the URL below.
`http://savannah.nongnu.org/download/tramp/'
There is also a Savannah project page.
`https://savannah.gnu.org/projects/tramp/'
* Which systems does it work on?
The package has been used successfully on Emacs 20 and Emacs 21,
as well as XEmacs 21. XEmacs 20 is more problematic, see the
notes in `tramp.el'. I don't think anybody has really tried it on
Emacs 19.
The package was intended to work on Unix, and it really expects a
Unix-like system on the remote end, but some people seemed to have
some success getting it to work on NT Emacs.
There is some informations on TRAMP on NT at the following URL;
many thanks to Joe Stoy for providing the information:
`ftp://ftp.comlab.ox.ac.uk/tmp/Joe.Stoy/'
The above mostly contains patches to old ssh versions; Tom Roche
has a Web page with instructions:
`http://www4.ncsu.edu/~tlroche/plinkTramp.html'
??? Is the XEmacs info correct?
??? Can somebody provide some information for getting it to work
on NT Emacs? I think there was some issue with `ssh'?
* I can't stop Ange-FTP starting with Emacs
Ange-FTP is loaded from TRAMP automatically if you require a file
by the ftp method. Unfortunately, there are some Lisp packages
which make Ange-FTP file name handlers active. You can see it
applying `C-h v file-name-handler-alist':
file-name-handler-alist's value is
(("^/[^/:]*\\'" . ange-ftp-completion-hook-function)
("^/[^/:]*[^/:.]:" . ange-ftp-hook-function)
("^/[^/]*$" . tramp-completion-file-name-handler)
("\\`/[^/:]+:" . tramp-file-name-handler)
("\\`/:" . file-name-non-special))
Please try to find out which package is responsible for loading
Ange-FTP, and raise a bug report.
A workaround is to require Ange-FTP before TRAMP in your
`~/.emacs', because TRAMP cleans up the entries in
`file-name-handler-alist':
;; Ange-FTP temporarily required
(require 'ange-ftp)
;; TRAMP cleans up `file-name-handler-alist'
(require 'tramp)
* File name completion does not work with TRAMP
When you log in to the remote machine, do you see the output of
`ls' in color? If so, this may be the cause of your problems.
`ls' outputs ANSI escape sequences that your terminal emulator
interprets to set the colors. These escape sequences will confuse
TRAMP however.
In your `.bashrc', `.profile' or equivalent on the remote machine
you probably have an alias configured that adds the option
`--color=yes' or `--color=auto'.
You should remove that alias and ensure that a new login _does not_
display the output of `ls' in color. If you still cannot use
filename completion, report a bug to the TRAMP developers.
* File name completion does not work in large directories
TRAMP uses globbing for some operations. (Globbing means to use
the shell to expand wildcards such as `*.c'.) This might create
long command lines, especially in directories with many files.
Some shells choke on long command lines, or don't cope well with
the globbing itself.
If you have a large directory on the remote end, you may wish to
execute a command like `ls -d * ..?* > /dev/null' and see if it
hangs. Note that you must first start the right shell, which
might be `/bin/sh', `ksh' or `bash', depending on which of those
supports tilde expansion.
* What kinds of systems does TRAMP work on
TRAMP really expects the remote system to be a Unix-like system.
The local system should preferably be Unix-like, as well, but
TRAMP might work on NT with some tweaking.
* How can I get notified when TRAMP file transfers are complete?
The following snippet can be put in your `~/.emacs' file. It makes
Emacs beep after reading from or writing to the remote host.
(defadvice tramp-handle-write-region
(after tramp-write-beep-advice activate)
" make tramp beep after writing a file."
(interactive)
(beep))
(defadvice tramp-handle-do-copy-or-rename-file
(after tramp-copy-beep-advice activate)
" make tramp beep after copying a file."
(interactive)
(beep))
(defadvice tramp-handle-insert-file-contents
(after tramp-copy-beep-advice activate)
" make tramp beep after copying a file."
(interactive)
(beep))
* There's this `~/.sh_history' file on the remote host which keeps
growing and growing. What's that?
Sometimes, TRAMP starts `ksh' on the remote host for tilde
expansion. Maybe `ksh' saves the history by default. TRAMP tries
to turn off saving the history, but maybe you have to help. For
example, you could put this in your `.kshrc':
if [ -f $HOME/.sh_history ] ; then
/bin/rm $HOME/.sh_history
fi
if [ "${HISTFILE-unset}" != "unset" ] ; then
unset HISTFILE
fi
if [ "${HISTSIZE-unset}" != "unset" ] ; then
unset HISTSIZE
fi
* TRAMP doesn't transfer strings with more than 500 characters
correctly
On some few systems, the implementation of `process-send-string'
seems to be broken for longer strings. This case, you should
customize the variable `tramp-chunksize' to 500. For a
description how to determine whether this is necessary see the
documentation of `tramp-chunksize'.