tramp: File name completion
5.2 File name completion
========================
TRAMP can complete the following TRAMP file name components: method
names, user names, host names, and file names located on remote hosts.
Enable this by activating partial completion in ‘.emacs’.
(emacs)Completion Options.
For example, type ‘C-x C-f /t <TAB>’, TRAMP completion choices show
up as
telnet: tmp/
toto:
‘telnet:’ is a possible completion for the respective method, ‘tmp/’
stands for the directory ‘/tmp’ on your local host, and ‘toto:’ might be
a host TRAMP has detected in your ‘~/.ssh/known_hosts’ file (when using
‘ssh’ as default method).
Type ‘e <TAB>’ for the minibuffer completion to ‘/telnet:’. Typing
‘<TAB>’ shows host names TRAMP from ‘/etc/hosts’ file, for example.
/telnet:127.0.0.1: /telnet:192.168.0.1:
/telnet:[::1]: /telnet:localhost:
/telnet:melancholia.danann.net: /telnet:melancholia:
Choose a host from the above list and then continue to complete file
names on that host.
When the configuration (Customizing Completion) includes user
names, then the completion lists will account for the user names as
well.
Remote hosts previously visited or hosts whose connections are kept
persistently (Connection caching) will be included in the
completion lists.
After remote host name completion comes completion of file names on
the remote host. It works the same as with local host file completion,
except that killing with double-slash ‘//’ kills only the file name part
of the TRAMP file name syntax. A triple-slash stands for the default
behavior. (emacs)Minibuffer File.
Example:
C-x C-f /telnet:melancholia:/usr/local/bin//etc <TAB>
⊣ /telnet:melancholia:/etc
C-x C-f /telnet:melancholia://etc <TAB>
⊣ /etc
C-x C-f /telnet:melancholia:/usr/local/bin///etc <TAB>
⊣ /etc
During file name completion, remote directory contents are re-read
regularly to account for any changes in the filesystem that may affect
the completion candidates. Such re-reads can account for changes to the
file system by applications outside Emacs (Connection caching).
-- User Option: tramp-completion-reread-directory-timeout
The timeout is number of seconds since last remote command for
rereading remote directory contents. 0 re-reads immediately during
file name completion, ‘nil’ uses cached directory contents.