(tramp-default-method): Change to "ssh" from "sm".
(tramp-wrong-passwd-regexp): Restructure. Add additional
alternative.
(tramp-su-program): New internal variable for method parameter.
(tramp-perl-encode-with-module, tramp-perl-decode-with-module):
New variables. Very short Perl one-liner, but requires Perl
module MIME::Base64 to be installed on the remote site.
(tramp-perl-encode, tramp-perl-decode): New base64
encoder/decoder. From Juanma Barranquero <lektu@terra.es>.
(tramp-handle-file-truename): Invoke Ange-FTP properly (even
though Ange-FTP doesn't do anything for this operation).
(tramp-handle-set-visited-file-modtime): Comment change.
(tramp-handle-make-directory): Save-excursion.
(tramp-handle-expand-many-files): Don't try to invoke Ange-FTP
twice, once is enough.
(tramp-action-permission-denied): Show *tramp/foo* buffer so the
user knows what's wrong.
(tramp-post-connection): Support the two Perl encoders and
decoders.
(tramp-coding-commands): Ditto. Add some todo items.
(tramp-methods): Remove inline encoding method parameters. The
encoding is now autodetected. Also shorten the list of
methods (u/m distinction gone) and rename the remaining methods to
have longer, but more mnemonic, names.
(tramp-login-prompt-regexp, tramp-password-prompt-regexp)
(tramp-wrong-passwd-regexp): Trailing `$' not needed, regexp is
matched at end of buffer anyway.
(tramp-yesno-prompt-regexp): New variable, for questions where the
user should say "yes" or "no".
(tramp-file-name-structure-unified)
(tramp-file-name-structure-separate): Allow dash in method names.
(tramp-actions-before-shell): New variable, contains list of
pattern/action pairs. Output sent by remote end is scanned for
the patterns, then the actions are executed.
(tramp-multi-actions): Like `tramp-actions-before-shell', but
executed for each hop in a multi-hop connection.
(tramp-last-cmd-time): New variable. If nothing has been sent to
remote end for 60 seconds, look to see if the remote end is still
alive.
(tramp-perl-mime-encode, tramp-perl-mime-decode): Remove. It
didn't work.
(tramp-perl-encode, tramp-perl-decode): New variables, these
require the MIME::Base64 module on the remote end.
(tramp-handle-file-attributes): Restructure logic.
(tramp-handle-file-attributes-with-ls)
(tramp-handle-file-attributes-with-perl): More debugging.
(tramp-handle-directory-files): Grok fifth arg `files-only' for
XEmacs.
(tramp-handle-make-directory, tramp-handle-delete-directory)
(tramp-handle-delete-file, tramp-handle-insert-directory): Expand
file name.
(tramp-handle-shell-command): Use `when', not `if'.
(tramp-handle-file-local-copy, tramp-handle-write-region): Adapt
to autodetection of inline encoding.
(tramp-invoke-ange-ftp): Require ange-ftp to make sure that
variable ange-ftp-name-format is defined before binding it.
(tramp-action-login, tramp-action-password, tramp-action-succeed)
(tramp-action-permission-denied, tramp-action-yesno): Functions
called from `tramp-actions-before-shell'.
(tramp-multi-action-login, tramp-multi-action-password)
(tramp-multi-action-succeed)
(tramp-multi-action-permission-denied): Functions called from
`tramp-multi-actions'.
(tramp-process-one-action, tramp-process-actions): Pattern
matching and action invocation code for
`tramp-actions-before-shell'.
(tramp-process-one-multi-action, tramp-process-multi-actions):
Same for `tramp-multi-actions'.
(tramp-open-connection-telnet, tramp-open-connection-rsh)
(tramp-open-connection-su): Process actions instead of hardwired
logic.
(tramp-multi-connect-telnet, tramp-multi-connect-rlogin)
(tramp-multi-connect-su): Ditto.
(tramp-post-connection): New method for tramp_encode and
tramp_decode scripts.
(tramp-post-connection): Invoke inline autodetection code.
(tramp-coding-commands): List of inline codings.
(tramp-find-inline-encoding): This is the inline autodetection
code.
(tramp-maybe-open-connection): If nothing was sent to connection
for 60 seconds, look if it connection is still alive.
(tramp-send-command): Remember that something was sent to the
connection.
(tramp-make-tramp-file-name, tramp-make-tramp-multi-file-name):
Use backticks for constructing alist.
(tramp-get-encoding-command, tramp-set-encoding-command)
(tramp-get-decoding-command, tramp-set-decoding-command)
(tramp-get-encoding-function, tramp-set-encoding-function)
(tramp-get-decoding-function, tramp-set-decoding-function): Use
for results of inline autodetection.
(tramp-get-encoding-command, tramp-get-decoding-command)
(tramp-get-encoding-function, tramp-get-decoding-function):
Remove these old functions.
(tramp-methods): Rename methods invoking "ssh1" or "ssh2" to
longer names. Use old names "sm1", "sm2" and so on for methods
invoking "ssh -1" or "ssh -2".
(tramp-multi-file-name-structure-separate): Typo, its name was set
to "tramp-file-name-structure-separate". Trivial patch. From
Steve Youngs <youngs@xemacs.org>.
(tramp-multi-sh-program): New variable.
(tramp-open-connection-multi): Use it. Now you can use multi
methods from Windows (at least in principle).
(tramp-do-copy-or-rename-via-buffer): New function.
(tramp-do-copy-or-rename-file): Use it. Change and simplify
logic. Omit special case of invoking rcp directly to copy the
files.
(tramp-open-connection-su, tramp-multi-connect-telnet)
(tramp-multi-connect-rlogin, tramp-multi-connect-su)
(tramp-make-tramp-file-name, tramp-make-tramp-multi-file-name):
Use backticks in format-spec for brevity and to avoid
character/number confusion in XEmacs.
which I guess to be good for most people.
(tramp-default-method-alist): Use "ftp" method (ie, forwarding to
Ange-FTP) for some user/host combinations.
(tramp-file-name-structure, tramp-file-name-regexp)
(tramp-make-tramp-file-format)
(tramp-make-tramp-file-user-nil-format)
(tramp-multi-file-name-structure)
(tramp-multi-file-name-hop-structure)
(tramp-make-multi-tramp-file-format): New default value which
unifies the filename syntax between Tramp and Ange-FTP. The new
syntax is "/method:user@host:path". Note the colon after the
method.
(tramp-handle-file-name-directory): Don't return "/" when
completing a remote root directory (where the filename looks like
"/method:user@host:/").
(tramp-handle-ange-ftp): Deleted.
(tramp-disable-ange-ftp): New function, called at toplevel,
deletes Ange-FTP from file-name-handler-alist.
(tramp-multi-file-name-hop-structure): Split for easier
readability.
(tramp-handle-make-symbolic-link): Use user/host/method/... from
LINKNAME, not FILENAME.
(tramp-handle-verify-visited-file-modtime): Call
tramp-ange-ftp-file-name-p with right parameters.
(tramp-handle-verify-visited-file-modtime): `insert' does not
work for integers, convert them to strings first.
(tramp-handle-ange-ftp): New function to perform setup for
replacing Ange-FTP with Tramp.
(tramp-repair-jka-compr): New function to factor out some
previously top-level code. Call the function at top-level.
(tramp-invoke-ange-ftp): New function to forward calls to
Ange-FTP.
(with-parsed-tramp-file-name): New macro for the usual big `let'
statement to dissect a file-name.
(tramp-handle-make-symbolic-link, tramp-handle-load)
(tramp-handle-file-name-directory)
(tramp-handle-file-name-nondirectory, tramp-handle-file-truename)
(tramp-handle-file-truename, tramp-handle-file-directory-p)
(tramp-handle-file-regular-p, tramp-handle-file-symlink-p)
(tramp-handle-file-writable-p, tramp-handle-file-writable-p):
Use the new macro and forward call to Ange-FTP if applicable.
(tramp-make-ange-ftp-file-name): New helper function to convert a
file name into an Ange-FTP file name, used by
`tramp-invoke-ange-ftp'.
(tramp-default-method-alist): New user option.
(tramp-find-default-method): Use it.
(tramp-sh-extra-args): New variable.
(tramp-find-shell): Use it.