2015-12-29 Michael Albinus Version 2.2.13 released. * tramp-compat.el (tramp-compat-delete-dups): Use `tramp-compat-funcall'. * tramp-gvfs.el (tramp-gvfs-parse-device-names): Make `split-string' call compatible with older Emacsen. 2015-12-19 Michael Albinus * tramp.el (tramp-dissect-file-name): Fix docstring. * tramp-sh.el (tramp-do-file-attributes-with-ls): Reorder ls arguments. (tramp-get-ls-command-with-w-option): Improve check. * trampver.el.in: Add Version: keyword. 2015-12-15 Michael Albinus * tramp-sh.el (tramp-open-connection-setup-interactive-shell): Move up uname check. Handle Mac OS X eol encoding. Set utf8 encoding with stty. 2015-12-09 Michael Albinus * tramp-sh.el (tramp-perl-file-truename): Do not raise an error if file doesn't exist. 2015-12-07 Michael Albinus * tramp-sh.el (tramp-open-connection-setup-interactive-shell): Make lax check for utf8. (tramp-get-remote-locale): Add "en_US.UTF-8" as candidate. 2015-12-06 Michael Albinus * tramp-sh.el (tramp-perl-file-truename): Do not append trailing slash. Quote apostrophes. (tramp-sh-handle-file-truename): Do not append trailing slash in the "ls" case. (tramp-get-ls-command-with-w-option): New defun. (tramp-do-file-attributes-with-ls) (tramp-do-directory-files-and-attributes-with-stat): Use it. 2015-12-03 Michael Albinus * tramp-sh.el (tramp-open-connection-setup-interactive-shell): Suppress error messages for "mesg" and "biff" calls. (tramp-get-remote-path): Ignore errors when expanding `tramp-own-remote-path'. Raise a warning instead. 2015-11-18 Paul Eggert * tramp.el (tramp-syntax): Fix docstring quoting problem with ‘ '’. 2015-11-11 Michael Albinus * tramp.el (tramp-handle-file-equal-p) (tramp-handle-file-in-directory-p): New defuns. Suggested by Harvey Chapman * tramp-adb.el (tramp-adb-file-name-handler-alist) * tramp-gvfs.el (tramp-gvfs-file-name-handler-alist) * tramp-sh.el (tramp-sh-file-name-handler-alist) * tramp-smb.el (tramp-smb-file-name-handler-alist) : Add handler. 2015-11-01 Michael Albinus * tramp.el (tramp-set-completion-function): The argument could also be a zeroconf service type. * tramp-gvfs.el (tramp-zeroconf-parse-device-names): Renamed from `tramp-zeroconf-parse-service-device-names'. (tramp-zeroconf-parse-webdav-device-names): Removed. Code merged with `tramp-zeroconf-parse-device-names'. (tramp-gvfs-parse-device-names): New defun. (top): Use it when `tramp-zeroconf-parse-device-names' is not applicable. 2015-10-30 Michael Albinus * tramp-gvfs.el (tramp-gvfs-handle-file-attributes): An attribute returned by gvfs-info might be empty. In case of undetermined uid or gid, return "UNKNOWN" or -1, respectively. (tramp-zeroconf-parse-service-device-names): New defun. Derived from `tramp-zeroconf-parse-workstation-device-names'. (top): Add completion functions for "afp" and "smb" methods. 2015-10-29 Michael Albinus * tramp-gvfs.el (tramp-gvfs-methods): Add "afp" method. (tramp-gvfs-handle-expand-file-name) (tramp-gvfs-handler-mounted-unmounted) (tramp-gvfs-connection-mounted-p, tramp-gvfs-mount-spec) (tramp-gvfs-maybe-open-connection): Support also "afp". (tramp-gvfs-handle-file-attributes): Handle the case of empty "owner::user" and "owner::group" entries. 2015-10-28 Michael Albinus * tramp-compat.el (tramp-compat-delete-dups): New defun. * tramp-smb.el (tramp-smb-handle-directory-files): Use it. 2015-10-28 Stefan Monnier * tramp.el (auto-save-file-name-transforms): Declare. 2015-10-21 Jürgen Hötzel * tramp-gvfs.el (tramp-gvfs-handle-file-attributes): Just suppress LC_MESSAGES locale category settings. 2015-10-18 Michael Albinus * tramp.el (tramp-handle-make-auto-save-file-name): Expand `tramp-auto-save-directory'. * tramp-adb.el (directory-listing-before-filename-regexp): Declare it. * tramp-compat.el (directory-listing-before-filename-regexp): Remove declaration. 2015-10-16 Jürgen Hötzel * tramp-gvfs.el (tramp-gvfs-handle-file-attributes): Handle symlink targets containing spaces. 2015-10-13 Noah Friedman * tramp-sh.el (tramp-open-connection-setup-interactive-shell): Send -onlcr as well. 2015-10-12 Jürgen Hötzel * tramp-gvfs.el (tramp-gvfs-handle-file-attributes): Suppress localized settings in order to proper parse gfvs output. 2015-10-12 Michael Albinus * tramp.el (tramp-completion-function-alist): Fix docstring. * tramp-gvfs.el: "customer option" -> "custom option". 2015-10-12 Warren Lynn (tiny change) * tramp-sh.el (tramp-do-copy-or-rename-file-out-of-band): Quote argument in proper order. (Bug#21562) 2015-10-04 Michael Albinus * tramp.el (tramp-get-remote-tmpdir): Don't use `file-remote-p' (due to XEmacs compatibility). * tramp-compat.el (directory-listing-before-filename-regexp): Declare if it doesn't exist. (file-remote-p): Remove defalias, which was necessary for GNU Emacs 21. (redisplay): Make it an alias if it doesn't exist. * trampver.el.in (locate-dominating-file) (tramp-compat-replace-regexp-in-string): Autoload. (tramp-repository-get-version): Do not dupe byte-compiler. 2015-10-03 Michael Albinus * trampver.el.in (tramp-repository-get-version): Suppress compiler warnings. 2015-09-20 Michael Albinus * tramp.el (tramp-handle-file-notify-rm-watch): Use `delete-process' (tramp-handle-file-notify-valid-p): Check also, that file or directory to be watched still exists. * tramp-gvfs.el (tramp-gvfs-handle-file-notify-add-watch): Improve implementation. (tramp-gvfs-monitor-file-process-filter): Rename from `tramp-gvfs-file-gvfs-monitor-file-process-filter'. Delete process if appropriate. * tramp-sh.el (tramp-sh-handle-file-notify-add-watch): Improve implementation. (tramp-sh-gvfs-monitor-dir-process-filter): Rename from `tramp-sh-file-gvfs-monitor-dir-process-filter'. Delete process if appropriate. (tramp-sh-inotifywait-process-filter): Rename from `tramp-sh-file-inotifywait-process-filter'. Delete process if appropriate. 2015-09-13 Michael Albinus * tramp.el (tramp-file-name-for-operation): Add `file-notify-valid-p'. (tramp-handle-file-notify-valid-p): New defun. * tramp-adb.el (tramp-adb-file-name-handler-alist) * tramp-gvfs.el (tramp-gvfs-file-name-handler-alist) * tramp-sh.el (tramp-sh-file-name-handler-alist) * tramp-smb.el (tramp-smb-file-name-handler-alist) : Add handler. 2015-09-11 Michael Albinus * tramp-sh.el (tramp-sh-handle-file-notify-add-watch): Set proper events to watch for. (tramp-sh-file-gvfs-monitor-dir-process-filter): Report only watched events. 2015-09-04 Paul Eggert * tramp.el (tramp-chunksize): Substitute quotes before putting them in the help buffer. 2015-09-02 Paul Eggert * tramp.el (tramp-set-completion-function): Escape ' in doc. 2015-09-01 Michael Albinus * tramp.el (tramp-clear-passwd): Clear also the passwords of the hops. * tramp-sh.el (tramp-methods) : Mask "Password:" template. Otherwise, it could be interpreted as password prompt if the remote host echoes the command. (tramp-remote-coding-commands): Add "openssl enc -base64". 2015-08-30 Michael Albinus * tramp-sh.el (tramp-convert-file-attributes): Revert patch from 2015-08-24. Tramp shall behave like for local files. 2015-08-26 Paul Eggert Go back to grave quoting in Tramp * tramp-adb.el: * tramp-cache.el: * tramp-compat.el: * tramp-gvfs.el: * tramp-gw.el: * tramp-sh.el: * tramp-smb.el: * tramp.el: Stick with grave quoting in diagnostics strings. This is more portable to older Emacs, desirable for Tramp. * tramp-compat.el (format-message): Fall back on simple ‘format’, since that’s good enough now. 2015-08-25 Paul Eggert Tramp diagnostics as per ‘text-quoting-style’ * tramp-adb.el (tramp-adb-handle-file-truename) (tramp-adb-get-ls-command, tramp-adb-handle-make-directory) (tramp-adb-handle-delete-directory) (tramp-adb-handle-delete-file) (tramp-adb-handle-file-local-copy) (tramp-adb-handle-write-region, tramp-adb-handle-copy-file) (tramp-adb-send-command-and-check, tramp-adb-wait-for-output) (tramp-adb-maybe-open-connection): * tramp-cache.el: * tramp-compat.el (tramp-compat-temporary-file-directory) (tramp-compat-octal-to-decimal) (tramp-compat-coding-system-change-eol-conversion): * tramp-gvfs.el (tramp-gvfs-file-name-handler) (tramp-gvfs-do-copy-or-rename-file) (tramp-gvfs-handle-delete-directory) (tramp-gvfs-handle-delete-file) (tramp-gvfs-handle-expand-file-name) (tramp-gvfs-handle-file-local-copy) (tramp-gvfs-handle-file-notify-add-watch) (tramp-gvfs-handle-make-directory) (tramp-gvfs-handle-write-region, tramp-gvfs-url-file-name): * tramp-gw.el (tramp-gw-gw-proc-sentinel) (tramp-gw-aux-proc-sentinel, tramp-gw-open-connection): * tramp-sh.el (tramp-sh-handle-file-truename) (tramp-sh-handle-set-visited-file-modtime) (tramp-sh-handle-set-file-modes) (tramp-sh-handle-file-name-all-completions) (tramp-sh-handle-add-name-to-file, tramp-do-copy-or-rename-file) (tramp-do-copy-or-rename-file-directly) (tramp-do-copy-or-rename-file-out-of-band) (tramp-sh-handle-make-directory) (tramp-sh-handle-delete-directory, tramp-sh-handle-delete-file) (tramp-sh-handle-insert-directory, tramp-process-sentinel) (tramp-sh-handle-start-file-process) (tramp-sh-handle-file-local-copy) (tramp-sh-handle-write-region, tramp-sh-handle-vc-registered) (tramp-sh-handle-file-notify-add-watch, tramp-maybe-send-script) (tramp-find-file-exists-command, tramp-open-shell) (tramp-find-shell) (tramp-open-connection-setup-interactive-shell) (tramp-find-inline-encoding, tramp-find-inline-compress) (tramp-compute-multi-hops, tramp-maybe-open-connection) (tramp-wait-for-output, tramp-send-command-and-check) (tramp-send-command-and-read, tramp-get-remote-path) (tramp-get-ls-command, tramp-get-ls-command-with-dired) (tramp-get-ls-command-with-quoting-style) (tramp-get-test-command, tramp-get-remote-ln) (tramp-get-remote-perl, tramp-get-remote-stat) (tramp-get-remote-readlink, tramp-get-remote-trash) (tramp-get-remote-touch, tramp-get-remote-gvfs-monitor-dir) (tramp-get-remote-inotifywait, tramp-get-remote-id) (tramp-get-remote-python): * tramp-smb.el (tramp-smb-errors) (tramp-smb-handle-add-name-to-file, tramp-smb-handle-copy-file) (tramp-smb-handle-delete-directory) (tramp-smb-handle-delete-file) (tramp-smb-handle-file-local-copy) (tramp-smb-handle-make-directory) (tramp-smb-handle-make-directory-internal) (tramp-smb-handle-make-symbolic-link) (tramp-smb-handle-rename-file, tramp-smb-handle-set-file-acl) (tramp-smb-handle-set-file-modes) (tramp-smb-handle-write-region, tramp-smb-get-file-entries): * tramp.el (tramp-debug-message, tramp-error) (tramp-process-actions): Generate diagnostics according to ‘text-quoting-style’, by using curved quotes in format strings and ‘format-message’ when appropriate. * tramp-compat.el (format-message): Define a replacement, if it’s an older version of Emacs that doesn’t have it already. 2015-08-25 Michael Albinus * tramp-sh.el (tramp-awk-encode, tramp-awk-decode) (tramp-awk-coding-test): New defconsts. (tramp-remote-coding-commands): Use them. (tramp-find-inline-encoding): Check for Perl only if necessary. 2015-08-24 Michael Albinus * tramp-sh.el (tramp-stat-marker, tramp-stat-quoted-marker): New defconsts. (tramp-do-file-attributes-with-stat) (tramp-do-directory-files-and-attributes-with-stat): Use them. (tramp-convert-file-attributes): Remove double slashes in symlinks. 2015-08-22 Paul Eggert * tramp.el (tramp-process-actions): Prefer (substitute-command-keys "`\\[foo-command]'") to "`M-x foo-command'" in docstrings and the like. 2015-08-18 Michael Albinus * tramp.el (tramp-get-method-parameter): * tramp-adb.el (tramp-adb-parse-device-names) (tramp-adb-get-device): * trampver.el.in (tramp-repository-get-version): Use `tramp-compat-replace-regexp-in-string'. 2015-08-18 Pierre Téchoueyres (tiny change) * tramp-cmds.el (tramp-reporter-dump-variable): Encode/decode string. 2015-08-15 Jürgen Hötzel * tramp-sh.el (tramp-sh-handle-set-file-selinux-context): Do not cache SELinux context if not all context components are given. 2015-08-14 Jürgen Hötzel * tramp-sh.el (tramp-remote-selinux-p): Use "selinuxenabled" rather than "getenforce". 2015-08-14 Michael Albinus * tramp-adb.el (tramp-adb-handle-set-file-modes) (tramp-adb-handle-set-file-times): * tramp-sh.el (tramp-sh-handle-set-file-modes) (tramp-sh-handle-set-file-times): Use `tramp-flush-file-property' rather than `tramp-flush-directory-property'. (tramp-sh-handle-file-acl): Do not redirect stderr to /dev/null, this is done in `tramp-send-command-and-check'. 2015-08-14 Jürgen Hötzel * tramp-sh.el (tramp-sh-handle-set-file-modes) (tramp-sh-handle-set-file-times): * tramp-adb.el (tramp-adb-handle-set-file-modes) (tramp-adb-handle-set-file-times): Flush the file properties of the directory. 2015-08-13 Jürgen Hötzel * tramp-adb.el (tramp-adb-handle-directory-files-and-attributes): Make a copy of result to prevent modification of the tramp-cache by side effects. Use the correct cache key. 2015-08-10 Jürgen Hötzel * tramp-adb.el (tramp-adb-prompt): Match leading escape sequence. Recent adb version send initial escape sequences, even when terminal type is set to TERM=dumb. 2015-08-07 Jürgen Hötzel * tramp-adb.el (tramp-adb-ls-output-name-less-p): Improve error checking. "ls -l" on Android in Enforcing mode can print "lstat './FILENAME failed: Permission denied". 2015-08-03 Jürgen Hötzel * tramp-cache.el (tramp-set-file-property): Fix code typo. 2015-07-29 Michael Albinus * tramp.el (tramp-handle-file-name-as-directory) (tramp-handle-file-name-directory, tramp-handle-file-remote-p): Keep hop in result. * tramp-cache.el (tramp-get-file-property) (tramp-set-file-property, tramp-flush-file-property) (tramp-get-connection-property, tramp-set-connection-property) (tramp-flush-connection-property): Remove hop from vector. * tramp-gw.el (tramp-gw-process-filter): Ignore errors. * tramp-sh.el (tramp-methods) : Separate STDERR. (tramp-do-copy-or-rename-file-out-of-band): Increase timeout of netstat to 60". (tramp-sh-handle-start-file-process): Do not show hops in prompt. 2015-07-23 Michael Albinus * tramp-sh.el (tramp-open-connection-setup-interactive-shell): Add "tab0" to stty call. 2015-07-22 Michael Albinus * tramp-sh.el (tramp-ssh-controlmaster-options): Use 0.0.0.1 as test host. 2015-07-19 Michael Albinus * tramp.el (tramp-methods): Adapt docstring. (tramp-get-method-parameter): Replace argument METHOD by VEC. Check also for hits in `tramp-connection-properties'. Adapt docstring. (tramp-get-remote-tmpdir): Cache only the local name of tmpdir. (all): Adapt `tramp-get-method-parameter' calls. * tramp-cache.el (tramp-connection-properties): Adapt docstring. * tramp-gvfs.el (tramp-gvfs-maybe-open-connection): Adapt `tramp-get-method-parameter' call. * tramp-sh.el (tramp-methods): Add `tramp-remote-shell-login' parameter where it fits. (tramp-get-remote-path): Use it. (all): Adapt `tramp-get-method-parameter' calls. 2015-07-18 Michael Albinus * tramp-gvfs.el (tramp-gvfs-do-copy-or-rename-file): New defun. (tramp-gvfs-handle-copy-file, tramp-gvfs-handle-rename-file): Use it. (tramp-gvfs-handle-make-directory): Reimplement PARENTS handling, "gvfs-mkdir -p ..." does not work robust. * tramp-sh.el (tramp-make-copy-program-file-name): Fix quoting for "psftp" method. 2015-06-28 Michael Albinus Version 2.2.12 released. 2015-06-21 Michael Albinus * tramp-adb.el (tramp-adb-handle-file-local-copy): Improve error handling. 2015-06-01 Michael Albinus * tramp.el (tramp-handle-make-auto-save-file-name): Wrap `auto-save-file-name-transforms' by `symbol-value', it doesn't exist in XEmacs. * tramp-sh.el (tramp-set-file-uid-gid): Add a timeout for the local case, because "chown" might fail on w32. * trampver.el.in (tramp-repository-get-version): Don't run for XEmacs. 2015-05-31 Michael Albinus * tramp.el (tramp-message): Dump connection buffer for error messages. (tramp-handle-make-auto-save-file-name): When calling `make-auto-save-file-name' internally, make sure it uses Unix-like behavior, not Windows-like behavior. * tramp-sh.el (tramp-histfile-override): Use ".tramp_history" as default. (Bug#20446) 2015-05-30 Michael Albinus * trampver.el.in (tramp-repository-get-version): New defun. * tramp.el (tramp-debug-message): Use it. 2015-05-29 Michael Albinus * tramp.el (tramp-call-process-region): New defun. * tramp-sh.el (tramp-get-inline-coding): Use it. 2015-05-27 Michael Albinus * tramp.el (tramp-auto-save-directory): Add :tags. (tramp-handle-make-auto-save-file-name): Let native `make-auto-save-file-name' use `auto-save-file-name-transforms', if `tramp-auto-save-directory' is not set. 2015-05-26 Michael Albinus * tramp-sh.el (tramp-set-auto-save): Remove it. There are major modes which set `auto-save-mode' on their own rules; Tramp shall not overwrite such settings. (Bug#20621) 2015-05-25 Orivej Desh (tiny change) * tramp-sh.el (tramp-make-copy-program-file-name): Add sqare brackets around host name. 2015-05-25 Michael Albinus * tramp-sh.el (tramp-do-copy-or-rename-file-via-buffer) (tramp-sh-handle-insert-file-contents-literally): Inhibit also `epa-file-handler'. (Bug#20634) 2015-05-20 Paul Eggert * tramp.el (tramp-methods): Use double-quotes rather than TeX markup in doc strings. * tramp-cmds.el: Fix minor quoting problems. 2015-04-09 Stefan Monnier * tramp-sh.el (tramp-remote-process-environment): Don't set EMACS envvar. (Bug#20202) 2015-04-08 Michael Albinus * tramp-cache.el (tramp-flush-file-property): Fix nasty scoping bug. 2015-04-04 Michael Albinus * tramp-cache.el (tramp-flush-directory-property): Quote directory name when used in regexp. 2015-04-03 Michael Albinus * tramp-cache.el (tramp-flush-file-property) (tramp-flush-directory-property): Use `directory-file-name' of the truename. (Bug#20249) 2015-03-24 Michael Albinus * tramp-sh.el (tramp-do-file-attributes-with-ls) (tramp-do-file-attributes-with-stat): Quote file names in output. (tramp-do-directory-files-and-attributes-with-stat): Use "//" as marker. 2015-03-18 Michael Albinus * tramp-sh.el (tramp-do-directory-files-and-attributes-with-stat): Mark apostrophs with ?/ instead of \037. (Bug#20117) 2015-03-17 Michael Albinus * tramp-sh.el (tramp-ssh-controlmaster-options): Change test for ControlPath in order to avoid DNS timeouts. (Bug#20015) (tramp-maybe-send-script): Avoid leading tabs in shell scripts. (Bug#20118) 2015-03-15 Michael Albinus * tramp-adb.el: * tramp-gvfs.el: * tramp-sh.el: * tramp-smb.el: Set tramp-autoload cookie for all defcustoms. * tramp.el (tramp-ssh-controlmaster-options) (tramp-use-ssh-controlmaster-options): Move them to tramp-sh.el. (tramp-default-method): Do not check for `tramp-ssh-controlmaster-options'. * tramp-sh.el (tramp-use-ssh-controlmaster-options): New defcustom, moved from tramp.el. (tramp-ssh-controlmaster-options): New defvar, moved from tramp.el but with a nil initial value. (tramp-ssh-controlmaster-options): New defun. (tramp-do-copy-or-rename-file-out-of-band) (tramp-maybe-open-connection): Use it. (Bug#20015) 2015-03-04 Michael Albinus * tramp.el (tramp): Add :link property. 2015-02-15 Michael Albinus * tramp-sh.el (tramp-do-directory-files-and-attributes-with-stat) (tramp-sh-handle-file-name-all-completions) (tramp-sh-handle-delete-directory) (tramp-sh-handle-expand-file-name, tramp-sh-handle-process-file): Normalize use of "cd". 2015-02-15 Jérémy Compostella * tramp-sh.el (tramp-remote-process-environment): Disable paging with PAGER=cat. (Bug#19870) 2015-02-09 Paul Eggert Port to platforms lacking test -a and -o * tramp-sh.el (tramp-find-executable): Prefer '&&' to 'test -a'. 2015-02-08 Michael Albinus * tramp.el (tramp-login-prompt-regexp): Allow also "user", as required by Fritz!Box telnet. 2015-02-04 Michael Albinus * tramp.el (tramp-handle-unhandled-file-name-directory): Return nil when required by the spec. * tramp-sh.el (tramp-get-inline-coding): Set `default-directory' to a local directory. Sporadically, `call-process-region' does not handle a remote default directory properly. 2015-02-03 Michael Albinus * tramp.el (tramp-ssh-controlmaster-options): Don't use a tempfile for ControlPath. (Bug#19702) * tramp-sh.el (tramp-histfile-override): Use t instead of 'unset. (tramp-open-shell, tramp-maybe-open-connection): Set also HISTFILESIZE and HISTSIZE when needed. (Bug#19731) 2015-02-02 Michael Albinus * tramp.el (tramp-ssh-controlmaster-options): Use "%C" for ControlPath if possible. (Bug#19702) * tramp-sh.el (tramp-histfile-override): Add another choice 'unset. Use it as default. (tramp-open-shell, tramp-maybe-open-connection): Support it. (Bug#19731) 2015-02-01 Michael Albinus * tramp-adb.el (tramp-adb-ls-toolbox-regexp): Fix regexp in order to support file names starting with a space. * tramp-sh.el (tramp-perl-file-attributes) (tramp-perl-directory-files-and-attributes): Escape apostrophes in file names. (tramp-do-file-attributes-with-stat): Quote file name. (tramp-sh-handle-directory-files-and-attributes): Fall back to `tramp-handle-directory-files-and-attributes' in case of problems. (tramp-do-directory-files-and-attributes-with-stat): Do not use \0 as delimeter. Use the `quoting-style' arg of `ls' if possible. (tramp-sh-handle-file-name-all-completions): Use arguments of `ls' in proper order. (tramp-sh-handle-delete-directory): Goto root directory before deleting. (tramp-get-remote-locale): Accept also \r in output. (tramp-get-ls-command-with-quoting-style): New defun. 2015-01-25 Michael Albinus * tramp-adb.el (tramp-adb-handle-directory-files-and-attributes): Quote all remote file names. 2015-01-23 Michael Albinus * tramp.el (tramp-autoload-file-name-handler): Use "/". * tramp-compat.el (tramp-compat-temporary-file-directory): Revert patch. 2015-01-22 Michael Albinus * tramp.el (tramp-autoload-file-name-handler): Use `tramp-compat-temporary-file-directory'. * tramp-compat.el (tramp-compat-temporary-file-directory): Autoload it. 2015-01-20 Michael Albinus * tramp-sh.el (tramp-do-directory-files-and-attributes-with-stat): Make it also working for file names with apostrophes. 2015-01-18 Zhongwei Yao * tramp-adb.el (tramp-adb-connect-if-not-connected): New user option. (tramp-methods): Add `tramp-default-port' for "adb". (tramp-adb-parse-device-names): Add traces. Return device names with port, if present. (tramp-adb-get-device): New defun. (tramp-adb-execute-adb-command, tramp-adb-maybe-open-connection): Use it. (tramp-adb-maybe-open-connection): Set `tramp-current-*' variables. Remove checks for listed devices. 2015-01-13 Michael Albinus * tramp.el (tramp-handle-file-notify-rm-watch): Do not check in `file-notify-descriptors', the implementation has been changed. * tramp-cache.el (tramp-dump-connection-properties): * tramp-sh.el (tramp-do-copy-or-rename-file-via-buffer) (tramp-sh-handle-file-local-copy): Use `with-temp-file'. 2014-12-29 Michael Albinus Version 2.2.11 released. * tramp-compat.el (top): Require cl-macs for Emacs 22. Make an alias for `default-toplevel-value' if it doesn't exist. * tramp-smb.el (tramp-smb-handle-copy-directory): Use `tramp-compat-delete-directory'. 2014-12-26 Paul Eggert * tramp.el: Spelling fixes. 2014-12-24 Michael Albinus * tramp-sh.el (tramp-do-copy-or-rename-file-out-of-band): Use `tramp-rsh-end-of-line', it ought to be more robust. 2014-12-23 Michael Albinus * tramp.el (tramp-read-passwd): Ignore errors from `auth-source-*'. * tramp-sh.el (tramp-do-copy-or-rename-file-out-of-band): Use "\n" as end-of-line delimeter for passwords, when running on MS Windows. 2014-12-21 Michael Albinus * tramp.el (tramp-handle-insert-file-contents): Set `find-file-not-found-functions' in case of errors. (Bug#18623) 2014-12-20 Michael Albinus * tramp-sh.el (tramp-histfile-override): Add :version. 2014-12-20 Teodor Zlatanov * tramp-sh.el (tramp-histfile-override): Clarify docstring. 2014-12-19 Michael Albinus * tramp-sh.el (tramp-send-command-and-read): New optional arg MARKER. (tramp-get-remote-path): Use it. 2014-12-17 Teodor Zlatanov * tramp-sh.el (tramp-histfile-override): New variable. (tramp-open-shell, tramp-maybe-open-connection): Use it. 2014-12-16 Michael Albinus * tramp.el (tramp-error-with-buffer): Call `message' properly. (tramp-accept-process-output): Use nil as argument for `accept-process-output', when there is a gateway prepended. * tramp-gw.el (tramp-gw-open-connection): Suppress traces in wrong debug buffer. (tramp-gw-open-connection): Set process coding system 'binary. (tramp-gw-open-network-stream): Handle HTTP error 403. * tramp-sh.el (tramp-compute-multi-hops): Suppress traces in wrong debug buffer. (tramp-maybe-open-connection): Set connection property "gateway". 2014-12-10 Michael Albinus * tramp-sh.el (tramp-get-remote-path): Use a login shell in order to determine `tramp-own-remote-path'. 2014-12-08 Stefan Monnier * tramp.el (tramp-handle-make-symbolic-link): Mark unused arg. 2014-11-22 Michael Albinus * tramp.el (tramp-action-password): Clean password on subsequent attempts even if there was no wrong password indication. (Bug#19047) * tramp-sh.el (tramp-get-remote-locale): Return "LC_ALL=C" as fallback. (tramp-open-connection-setup-interactive-shell): No need to check for nil as `tramp-get-remote-locale' return value. (tramp-sh-handle-start-file-process, tramp-sh-handle-process-file): Propagate `process-environment'. 2014-11-20 Michael Albinus Improve XEmacs compatibility. * tramp.el (tramp-autoload-file-name-handler): Wrap `temporary-file-directory' by `symbol-value', it doesn't exist in XEmacs. (tramp-read-passwd): Don't use `with-timeout-suspend' and `with-timeout-unsuspend' if they don't exist, like in XEmacs. (tramp-time-less-p, tramp-time-subtract): Remove functions. (tramp-handle-file-newer-than-file-p, tramp-time-diff): * tramp-adb.el (tramp-adb-ls-output-time-less-p): * tramp-cache.el (tramp-get-file-property): * tramp-smb.el (tramp-smb-handle-insert-directory): Use `time-less-p' and `time-subtract, respectively. * tramp-adb.el (top): Do not require time-date.el. * tramp-compat.el (top): Require time-date.el for XEmacs. * tramp-sh.el (tramp-open-connection-setup-interactive-shell): Check, whether `utf-8' is a valid coding system. 2014-11-07 Michael Albinus * tramp.el (tramp-check-cached-permissions): Include hop in the constructed Tramp file name. (Bug#18943) 2014-11-05 Michael Albinus * tramp.el (tramp-error-with-buffer): Show connection buffer only when message appeared in minibuffer. (Bug#18891) * tramp-adb.el (tramp-adb-handle-file-attributes): * tramp-gvfs.el (tramp-gvfs-handle-file-attributes): * tramp-sh.el (tramp-sh-handle-file-attributes): Return nil in case of errors. 2014-11-04 Michael Albinus * tramp-sh.el (tramp-do-copy-or-rename-file-via-buffer): Don't use a local copy; setting `inhibit-file-name-handlers' proper might be more performant. (Bug#18751) 2014-11-03 Michael Albinus * tramp-sh.el (tramp-do-copy-or-rename-file-via-buffer): Use a local copy of FILENAME, when it is remote. (Bug#18751) 2014-11-02 Michael Albinus * tramp-adb.el (tramp-adb-handle-process-file): Do not raise an error when the command fails; the return code must indicate. (tramp-adb-send-command-and-check): Fix docstring. 2014-11-01 Michael Albinus * tramp-cache.el (tramp-get-file-property) (tramp-set-file-property): Check, that `tramp-cache-get-count-*' and `tramp-cache-set-count-*' are bound. Otherwise, there might be compiler warnings. * tramp-sh.el (tramp-get-remote-uid, tramp-get-remote-gid): Return -1 respective "UNKNOWN", if uid or gid cannot be determined. 2014-11-01 Wolfgang Jenkner * tramp-sh.el (tramp-send-command): Fix the case where the remote-echo connection property is non-nil (bug#18858). 2014-11-01 Paul Eggert * tramp-sh.el (tramp-get-remote-touch): Omit unnecessary call to current-time. 2014-10-25 Michael Albinus * tramp-gvfs.el (tramp-gvfs-methods-mounttracker) (tramp-gvfs-mountlocation-signature): Check `tramp-gvfs-enabled' during initialization. (Bug#18774) 2014-10-14 Jérémy Compostella Michael Albinus * tramp-sh.el (tramp-open-connection-setup-interactive-shell): Reduce the amount of set environment variable commands. 2014-10-12 Michael Albinus * tramp-sh.el (tramp-get-remote-id): Check also for "gid". 2014-10-12 Stefan Monnier * tramp-sh.el (tramp-sh-handle-vc-registered): Don't modify the global vc-handled-backends (bug#18535). 2014-09-14 Michael Albinus * tramp-cache.el (tramp-flush-file-function): Simplify check. Suppress debug messages. * tramp.el (tramp-file-name-handler): * tramp-gvfs.el (tramp-gvfs-url-file-name): Apply `cons' where appropriate. 2014-09-05 Michael Albinus * tramp-sh.el (tramp-sh-handle-start-file-process): Expand `default-directory'. 2014-08-28 Michael Albinus * tramp.el (tramp-handle-shell-command): Use `display-buffer'. (Bug#18326) 2014-08-27 Michael Albinus * tramp-adb.el: Spell author name correctly. 2014-08-07 Reuben Thomas * tramp.el (tramp-handle-file-symlink-p): * tramp-ftp.el (tramp-ftp-file-name-handler): Remove a comment about VMS, which we no longer support. 2014-08-07 Michael Albinus * tramp-sh.el (tramp-do-copy-or-rename-file-out-of-band): Use cached "remote-copy-args" value, if available. (Bug#18199) 2014-08-05 Michael Albinus * tramp-cache.el (tramp-flush-file-function): Suppress function also for Tramp working buffers. 2014-07-28 Emilio C. Lopes * tramp-sh.el (tramp-get-remote-python): Also search for executables named "python2" or "python3". (tramp-get-remote-uid-with-python): Use parentheses around arguments to `print' to make it compatible with Python 3. (tramp-get-remote-gid-with-python): Ditto. (Bug#18118) 2014-07-24 Michael Albinus * tramp-cache.el (tramp-flush-file-function): Wrap the code with `save-match-data'. (Bug#18095) 2014-07-03 Michael Albinus * .cvsignore: Remove. * .gitignore: Adjust. * tramp-sh.el (tramp-open-connection-setup-interactive-shell): Prefer utf-8 coding. (Bug#17859) * trampver.el.in: Replace CVS by GIT. 2014-07-02 Michael Albinus * tramp-adb.el (tramp-adb-sh-fix-ls-output): Use `bolp'. * tramp-sh.el (tramp-sh-handle-set-visited-file-modtime) (tramp-sh-handle-verify-visited-file-modtime): Use `point-at-eol'. 2014-06-23 Mario Lang * tramp-adb.el (tramp-adb-send-command-and-check): And and -> and. 2014-06-20 Michael Albinus * tramp-adb.el (tramp-adb-handle-process-file): * tramp-sh.el (tramp-sh-handle-process-file): * tramp-smb.el (tramp-smb-handle-process-file): Do not raise the output buffer when DISPLAY is non-nil. (Bug#17815) 2014-06-16 Michael Albinus * tramp.el (tramp-call-process): Handle error strings. 2014-06-15 Michael Albinus Version 2.2.10 released. * tramp.el (tramp-check-cached-permissions): Use `tramp-compat-file-attributes'. * tramp-cache.el (tramp-flush-file-function): Do not flush file properties of temporary buffers. * tramp-sh.el (tramp-call-local-coding-command): Use nil as argument of `tramp-call-process'. 2014-06-13 Michael Albinus * tramp.el (tramp-call-process): Add new argument VEC. (tramp-set-completion-function, tramp-parse-putty) * tramp-adb.el (tramp-adb-execute-adb-command) * tramp-sh.el (tramp-sh-handle-set-file-times) (tramp-set-file-uid-gid, tramp-do-copy-or-rename-file-out-of-band) (tramp-sh-handle-write-region, tramp-call-local-coding-command): Adapt callees. * tramp-adb.el (tramp-adb-maybe-open-connection): Don't set `tramp-current-*' variables. * tramp-gvfs.el (tramp-gvfs-handle-file-name-all-completions): Use "-h" option for "gvfs-ls". (tramp-gvfs-send-command): Simplify traces. * tramp-smb.el (tramp-smb-handle-insert-directory): Use progress reporter. 2014-06-03 Michael Albinus * tramp.el (tramp-ssh-controlmaster-options): Improve search regexp. (Bug#17653) 2014-06-02 Michael Albinus * tramp.el (tramp-call-process): Add traces. (tramp-handle-unhandled-file-name-directory): Return "/". 2014-05-31 Michael Albinus * tramp-adb.el (tramp-adb-handle-write-region): Improve messages. * tramp-efs.el (top): * tramp-ftp.el (top): Remove special handling for URL syntax. * tramp-gvfs.el (tramp-gvfs-handle-delete-file): Flush file properties, not directory properties. * tramp-smb.el (tramp-smb-handle-copy-directory) (tramp-smb-handle-set-file-acl): Use `start-process'. (tramp-smb-handle-rename-file): Flush also file properties of FILENAME. 2014-05-26 Michael Albinus * tramp-gvfs.el (tramp-gvfs-methods) : Add. (tramp-gvfs-handle-file-attributes): Use `string-to-number' when reading "unix::mode". (tramp-gvfs-url-file-name): `user' and `localname' could be nil. * tramp-sh.el (tramp-methods) : Remove. It has never worked satisfactorily. (top): Remove completion function for "sftp". 2014-05-17 Michael Albinus * tramp-sh.el (tramp-find-inline-encoding): Do not match "%%t" for a temporary file name. 2014-05-13 Michael Albinus * tramp-sh.el (tramp-methods) : Reinsert. There are cases, where "plink -ssh" is not desired. (top): Reinsert completion function for "plinkx". 2014-05-12 Michael Albinus * tramp.el (tramp-handle-file-accessible-directory-p): Check for `file-readable-p' instead of `file-executable-p'. 2014-05-06 Michael Albinus * tramp-sh.el (tramp-uudecode): Replace the hard-coded temporary file name by a format specifier. (tramp-remote-coding-commands): Enhance docstring. (tramp-find-inline-encoding): Replace "%t" by a temporary file name. (Bug#17415) This is CVE-2014-3424. 2014-05-05 Michael Albinus * tramp-sh.el (tramp-remote-process-environment): Change :version to "24.4". (tramp-open-shell): Do not let-bind `tramp-end-of-output'. 2014-04-22 Michael Albinus * tramp-sh.el (tramp-sh-handle-file-name-all-completions): Set IFS=" when using read builtin, in order to preserve spaces in the file name. 2014-04-16 Michael Albinus * tramp.el (tramp-run-real-handler, tramp-file-name-handler): Do not autoload. (tramp-file-name-handler, tramp-completion-file-name-handler): Revert patch from 2014-04-10, it isn't necessary anymore. (tramp-autoload-file-name-handler) (tramp-register-autoload-file-name-handlers): New defuns. (top): Autoload call of `tramp-register-autoload-file-name-handlers'. (tramp-register-file-name-handlers): Remove also `tramp-autoload-file-name-handler' from `file-name-handler-list'. Do not autoload its invocation, but eval it after loading of 'tramp. 2014-04-13 Michael Albinus * tramp-sh.el (tramp-sh-handle-file-truename): Revert previous patch, there are new problems with file names containing spaces. Get rid of backticks. (Bug#17238) 2014-04-11 Michael Albinus * tramp-sh.el (tramp-sh-handle-file-truename): Quote the file name twice due to backticks. (Bug#17238) (tramp-sh-handle-expand-file-name): Tweak docstring. 2014-04-10 Michael Albinus * tramp.el (tramp-methods): Tweak docstring. (tramp-file-name-handler, tramp-completion-file-name-handler): Avoid recursive loading. * tramp-adb.el (tramp-unload-hook): Unload `tramp-adb'. * tramp-compat.el (tramp-unload-hook): Unload `tramp-loaddefs'. * tramp-sh.el (tramp-do-copy-or-rename-file-out-of-band): Tweak docstring. (tramp-sh-handle-write-region): Tweak error message. (tramp-make-copy-program-file-name): Tweak docstring. Quote result also locally. 2014-03-31 Michael Albinus * tramp-sh.el (tramp-remote-process-environment): Remove HISTFILE and HISTSIZE; it's too late to set them here. Add :version entry. (tramp-open-shell): Add "HISTFILE=/dev/null" to the shell's env arguments. Do not send extra "PSx=..." commands. (tramp-maybe-open-connection): Setenv HISTFILE to /dev/null. 2014-03-25 Michael Albinus * tramp.el (tramp-connection-timeout): Fix docstring. * tramp-sh.el (tramp-sh-handle-vc-registered): Revert change from 2014-03-07, it decreases performance unnecessarily. Let-bind `remote-file-name-inhibit-cache' to nil in the second pass. (tramp-do-copy-or-rename-file-directly): In the `rename' case, check whether source directory has set the sticky bit. 2014-03-24 Michael Albinus * tramp-sh.el (tramp-methods) : Remove. Use its `tramp-login-args' for "plink", "pscp" and "psftp". (top): Remove completion function for "plinkx". Completion function for "psftp" is `tramp-completion-function-alist-ssh'. (tramp-find-executable): Do not call "which" on SunOS. 2014-03-23 Thierry Volpiatto * tramp.el (tramp-read-passwd): Suspend the timers while reading the password. 2014-03-21 Michael Albinus * tramp.el (tramp-methods): Add docstring for `tramp-login-env' and `tramp-copy-env'. * tramp-sh.el (tramp-methods) : Add `tramp-login-env'. (tramp-maybe-open-connection): Handle `tramp-login-env'. 2014-03-20 Michael Albinus * tramp-sh.el (vc-handled-backends, vc-bzr-program) (vc-git-program, vc-hg-program): Declare. (tramp-sh-handle-vc-registered): Remove backends when the remote binary does not exist. 2014-03-17 Michael Albinus * tramp.el (tramp-action-out-of-band): Read pending output. * tramp-sh.el (tramp-methods) : Redirect stderr to "/dev/null". (tramp-do-copy-or-rename-file-out-of-band): Simplify assembling of remote command. (tramp-find-inline-encoding): Do not raise an error. (tramp-send-command-and-check): Fix docstring. 2014-03-16 Michael Albinus * tramp-sh.el (tramp-methods) : Tune `tramp-remote-copy-*'. (tramp-do-copy-or-rename-file-out-of-band): Fiddle with the remote commands. 2014-03-14 Michael Albinus * tramp.el (tramp-methods): Add docstring for `tramp-remote-copy-program' and `tramp-remote-copy-args'. * tramp-sh.el (tramp-methods) : Add `tramp-remote-copy-*'. (tramp-do-copy-or-rename-file-out-of-band): Merge `tramp-do-copy-or-rename-file-with-nc'. (tramp-do-copy-or-rename-file-with-nc, tramp-get-remote-nc): Remove. (tramp-make-copy-program-file-name): Handle also the "nc" case. 2014-03-13 Michael Albinus * tramp.el (tramp-methods): Fix docstring for `tramp-copy-program'. (tramp-call-process): Trace also DESTINATION. * tramp-sh.el (tramp-methods, tramp-default-user-alist): Add "nc". (top): Completion function for "nc" is `tramp-completion-function-alist-telnet'. (tramp-do-copy-or-rename-file-out-of-band): Call function if adviced in `tramp-methods'. Do not set `default-directory' for `start-process-shell-command' call, not needed anymore. (tramp-do-copy-or-rename-file-with-nc, tramp-get-remote-nc): New defuns. 2014-03-10 Michael Albinus * tramp-sh.el (tramp-open-connection-setup-interactive-shell): Do not add nil to the environment, when there's no remote `locale'. (tramp-find-inline-encoding): Check, that the remote host has installed perl, before sending scripts. 2014-03-07 Michael Albinus * tramp-sh.el (tramp-sh-handle-vc-registered): Run first pass only when `remote-file-name-inhibit-cache' is nil. (tramp-sh-file-name-handler): Use `tramp-error'. Simplify code. 2014-03-06 Michael Albinus * tramp.el (tramp-error): VEC-OR-PROC can be nil. (tramp-action-password): Clear password cache if needed. (tramp-read-passwd): Do not clear password cache. * tramp-gvfs.el (tramp-gvfs-handler-askpassword): Clear password cache unless it is the first password request. 2014-03-04 Michael Albinus * tramp-sh.el (tramp-sh-handle-vc-registered): Do not call `tramp-send-command-and-check'. 2014-02-28 Michael Albinus * tramp-adb.el (tramp-adb-parse-device-names): Use `accept-process-output'. (tramp-adb-handle-file-truename): Cache the localname only. (tramp-adb-handle-make-directory) (tramp-adb-handle-delete-directory): Flush file properties correctly. (tramp-adb-handle-set-file-modes): Do not raise an error when file modes cannot be changed. * tramp-cache.el (tramp-flush-directory-property): Remove also file properties of symlinks. 2014-02-27 Michael Albinus * tramp.el (tramp-call-process): Improve trace message. (tramp-handle-insert-file-contents): Trace error case. * tramp-adb.el (tramp-adb-file-name-handler-alist) : Use `tramp-handle-insert-directory'. (tramp-adb-handle-insert-directory): Remove function. (tramp-adb-send-command-and-check): New defun, replacing `tramp-adb-command-exit-status'. Change all callees. (tramp-adb-handle-file-attributes) (tramp-adb-handle-directory-files-and-attributes): Use it. (tramp-adb-ls-output-name-less-p): Use `directory-listing-before-filename-regexp'. (tramp-adb-handle-delete-directory): Flush also file properties of the truename of directory. (tramp-adb-handle-file-name-all-completions): Add "./" and "../". (tramp-adb-handle-file-local-copy): Make the local copy readable. (tramp-adb-handle-write-region): Implement APPEND. (tramp-adb-handle-rename-file): Make it more robust. Flush file properties correctly. (tramp-adb-maybe-open-connection): Set `tramp-current-*' variables. Check for connected devices only when needed. 2014-02-27 Daniel Colascione * tramp-sh.el (tramp-get-remote-path): Don't signal error when explicit tramp path is empty. 2014-02-24 Michael Albinus * tramp-sh.el (tramp-sh-handle-file-truename): Improve last fix. 2014-02-23 Michael Albinus * tramp-sh.el (tramp-sh-handle-file-truename): Preserve trailing "/". (Bug#16851) 2014-02-21 Michael Albinus * tramp.el (tramp-check-cached-permissions): Call `file-attributes' with `suffix' being a symbol but a string. 2014-02-20 Michael Albinus * tramp.el (ls-lisp-use-insert-directory-program): Declare. (tramp-handle-insert-directory): New defun, taken from tramp-gvfs.el. * tramp-gvfs.el (tramp-gvfs-file-name-handler-alist) : Use `tramp-handle-insert-directory'. (tramp-gvfs-handle-insert-directory): Remove function. * tramp-sh.el (tramp-sh-handle-insert-directory): Call `tramp-handle-insert-directory'. 2014-02-19 Michael Albinus * tramp.el (tramp-handle-make-symbolic-link): New defun. (tramp-check-cached-permissions): Call `file-attributes' if the cache is empty. * tramp-adb.el (tramp-adb-file-name-handler-alist) : Use `tramp-handle-make-symbolic-link'. * tramp-gvfs.el (tramp-gvfs-file-name-handler-alist) : Use `tramp-handle-make-symbolic-link'. (tramp-gvfs-maybe-open-connection): Set always connection properties, even if target is mounted already. * tramp-sh.el (tramp-color-escape-sequence-regexp): Set tramp-autoload cookie. (tramp-get-remote-touch): New defun. (tramp-sh-handle-set-file-times): Use it. (tramp-sh-handle-directory-files-and-attributes): Use `tramp-handle-directory-files-and-attributes' if neither stat nor perl are available on the remote host. * tramp-smb.el (tramp-smb-handle-insert-directory): Mark trailing "/". Write long listing only when "l" belongs to the switches. 2014-02-16 Michael Albinus Version 2.2.9 released. 2014-02-10 Michael Albinus * tramp-sh.el (tramp-sh-handle-vc-registered): Apply heredoc script more robustly. 2014-02-08 Michael Albinus * tramp-sh.el (tramp-sh-handle-start-file-process): Insert output at end of buffer. (Bug#16120) 2014-02-06 Michael Albinus * tramp-sh.el (tramp-sh-handle-start-file-process): Use "&&" instead of ";" in order to avoid additional prompts. Let heredoc scripts read from tty. (Bug#16582) (tramp-send-command): No special handling of heredocs, it isn't necessary anymore. 2014-02-05 Michael Albinus * tramp-sh.el (tramp-end-of-heredoc): New defconst. (tramp-sh-handle-set-file-acl) (tramp-sh-handle-start-file-process) (tramp-sh-handle-write-region, tramp-sh-handle-vc-registered) (tramp-find-executable, tramp-send-command): Use it. 2014-01-17 Michael Albinus * tramp.el (tramp-password-prompt-regexp): Use `password-word-equivalents' if available. (tramp-action-password, tramp-process-one-action) (tramp-read-passwd): Let-bind `case-fold-search' to t. (Bug#13124) 2013-12-06 Michael Albinus * tramp-sh.el (tramp-sh-handle-start-file-process): Handle long command lines, lasting from "sh -c ...". (Bug#16045) 2013-12-02 Michael Albinus * tramp-sh.el (tramp-remote-process-environment): Do not set "LC_ALL". (tramp-get-remote-locale): New defun. (tramp-open-connection-setup-interactive-shell): Use it. 2013-11-26 Michael Albinus * tramp.el (tramp-file-name-regexp-unified): Support IPv6 host names on MS Windows, like "/[::1]:". * tramp-sh.el (tramp-sh-handle-insert-directory): Accept nil SWITCHES. 2013-11-25 Michael Albinus * tramp-cmds.el (tramp-cleanup-connection): Clean up `tramp-current-connection' only when KEEP-PASSWORD is non-nil. 2013-11-16 Michael Albinus * tramp-cmds.el (tramp-cleanup-connection): Clean up `tramp-current-connection'. 2013-11-15 Michael Albinus * tramp-sh.el (tramp-remote-process-environment): Set "LC_ALL" to "en_US.utf8" and "LC_CTYPE" to "". (tramp-maybe-open-connection): Set "LC_ALL" to "en_US.utf8". (tramp-sh-handle-insert-directory): Don't set "LC_ALL" and "LC_CTYPE". 2013-11-14 Michael Albinus * tramp-gvfs.el (top): Run init code only when `tramp-gvfs-enabled' is not nil. (tramp-gvfs-enabled): Check also :system bus. 2013-11-13 Michael Albinus * tramp.el (tramp-remote-file-name-spec-regexp): An IPv6 address can be empty. * tramp-gvfs.el (tramp-gvfs-handle-insert-directory): Accept nil SWITCHES. (tramp-gvfs-handle-write-region): Implement APPEND. 2013-11-11 Michael Albinus * tramp-sh.el (tramp-do-copy-or-rename-file-via-buffer) (tramp-sh-handle-file-local-copy): Don't write a message when saving temporary files. * tramp-smb.el (tramp-smb-handle-copy-directory): Fix bug when both directories are remote. (tramp-smb-handle-directory-files): Do not return double entries. Do not expand full file names. (tramp-smb-handle-insert-directory): Accept nil SWITCHES. (tramp-smb-handle-write-region): Implement APPEND. (tramp-smb-get-stat-capability): Fix a stupid bug. 2013-11-05 Michael Albinus Fix problems found while writing a test suite. * tramp-compat.el (tramp-compat-load): New defun. * tramp.el (tramp-handle-load): Use it. * tramp-sh.el (tramp-sh-handle-add-name-to-file): Handle the case "(numberp ok-if-already-exists)" correctly. 2013-11-04 Michael Albinus Fix problems found while writing a test suite. * tramp.el (tramp-file-name-regexp-unified): Simplify. (tramp-file-name-for-operation): Use `tramp-tramp-file-p'. (tramp-handle-substitute-in-file-name): Let-bind `process-environment' to nil when running original file name handler. Otherwise, there are problems with constructs like "$$FOO". * tramp-sh.el (tramp-do-copy-or-rename-file): Use correct prefix for `localname'. 2013-10-28 Michael Albinus * tramp-sh.el (tramp-sh-handle-copy-directory): * tramp-smb.el (tramp-smb-handle-copy-directory): Handle COPY-CONTENTS. (Bug#15737) 2013-10-18 Michael Albinus * tramp-smb.el (tramp-smb-maybe-open-connection): Fix an error introduced on 2013-09-08, which results in an infinite loop requesting a password. 2013-10-17 Michael Albinus Code cleanup. * tramp.el (tramp-debug-message): Do not check for connection buffer. (tramp-message): Use "vector" connection property. (tramp-rfn-eshadow-update-overlay, tramp-equal-remote) (tramp-eshell-directory-change): Use `tramp-tramp-file-p' instead of `file-remote-p'. (tramp-connectable-p, tramp-handle-file-remote-p): Suppress unrelated traces. * tramp-adb.el (tramp-adb-handle-copy-file) (tramp-adb-handle-rename-file): Use `tramp-tramp-file-p' instead of `file-remote-p'. (tramp-adb-maybe-open-connection): Set "vector" connection property. * tramp-cache.el (top): Suppress traces when reading persistency file. * tramp-cmds.el (tramp-list-remote-buffers) (tramp-cleanup-connection, tramp-cleanup-this-connection): Use `tramp-tramp-file-p' instead of `file-remote-p'. * tramp-compat.el (tramp-compat-process-running-p): Use `tramp-tramp-file-p' instead of `file-remote-p'. * tramp-ftp.el (tramp-ftp-file-name-handler): Use `tramp-tramp-file-p' instead of `file-remote-p'. * tramp-gvfs.el (tramp-gvfs-handle-copy-file) (tramp-gvfs-handle-rename-file): Use `tramp-tramp-file-p' instead of `file-remote-p'. (tramp-gvfs-handle-file-notify-add-watch): Set "vector" connection property. * tramp-gw.el (tramp-gw-gw-proc-sentinel) (tramp-gw-aux-proc-sentinel, tramp-gw-process-filter) (tramp-gw-open-network-stream): Suppress unrelated traces. * tramp-sh.el (tramp-sh-handle-set-file-times) (tramp-set-file-uid-gid): Use `tramp-tramp-file-p' instead of `file-remote-p'. (tramp-do-copy-or-rename-file-out-of-band): Set "vector" connection property. Improve debug message. (tramp-sh-handle-file-notify-add-watch): Refactor common code. Set "vector" connection property. Improve debug message. (tramp-maybe-open-connection): Do not request connection buffer too early. * tramp-smb.el (tramp-smb-actions-get-acl): New defconst, renamed from `tramp-smb-actions-with-acl'. (tramp-smb-actions-set-acl): New defconst. (tramp-smb-handle-copy-directory) (tramp-smb-maybe-open-connection): Set "vector" connection property. (tramp-smb-handle-copy-file, tramp-smb-handle-rename-file): Use `tramp-tramp-file-p' instead of `file-remote-p'. (tramp-smb-action-get-acl): New defun, renamed from `tramp-smb-action-with-acl'. (tramp-smb-action-set-acl): New defun. (tramp-smb-handle-set-file-acl): Rewrite. (tramp-smb-call-winexe): Do not request connection buffer too early. 2013-10-16 Michael Albinus * tramp-smb.el (tramp-smb-acl-program): New custom option. (tramp-smb-errors): Add error messages. (tramp-smb-actions-with-acl): New defconst. (tramp-smb-file-name-handler-alist) : Add handler. (tramp-smb-action-with-acl, tramp-smb-handle-set-file-acl): New defuns. (tramp-smb-handle-file-acl): Rewrite, using "smbcacls". (tramp-smb-handle-file-attributes): Simplify test for "stat" capability. (tramp-smb-get-stat-capability): Fix tests. 2013-10-07 Michael Albinus * tramp.el (tramp-handle-insert-file-contents): Improve handling of BEG and END. * tramp-gvfs.el (tramp-gvfs-file-name-handler-alist): Use `tramp-handle-insert-file-contents'. (tramp-gvfs-handle-insert-file-contents): Remove function. * tramp-sh.el (tramp-sh-handle-insert-directory): Use `save-restriction' in order to keep markers. 2013-10-02 Michael Albinus Version 2.2.8 released. * tramp-cmds.el (tramp-bug, tramp-append-tramp-buffers): * tramp-cache.el (tramp-cache-print): Use `tramp-compat-funcall'. 2013-09-19 Michael Albinus * tramp-sh.el (tramp-get-remote-id): Do not raise an error. (tramp-get-remote-uid-with-id, tramp-get-remote-gid-with-id) (tramp-get-remote-python): New defuns. (tramp-get-remote-uid-with-perl) (tramp-get-remote-gid-with-perl): New defuns. Perl code contributed by yary (tiny change). (tramp-get-remote-uid-with-python) (tramp-get-remote-gid-with-python): New defuns. Python code contributed by Andrey Tykhonov (tiny change). (tramp-get-remote-uid, tramp-get-remote-gid): Use new defuns. 2013-09-12 Michael Albinus * tramp.el (tramp-check-proper-method-and-host): Rename it from `tramp-check-proper-host'. Check for a valid method name. * tramp-adb.el (tramp-adb-maybe-open-connection): * tramp-gvfs.el (tramp-gvfs-maybe-open-connection): * tramp-sh.el (tramp-maybe-open-connection): * tramp-smb.el (tramp-smb-maybe-open-connection): Call it. * tramp-cache.el (tramp-cache-print): Don't print text properties also for hash values. 2013-09-10 Michael Albinus * tramp.el (tramp-cleanup): Remove. Functionality added to `tramp-cleanup-connection'. * tramp-cmds.el (tramp-cleanup-connection): Add optional parameters KEEP-DEBUG and KEEP-PASSWORD. * tramp.el (tramp-file-name-handler): * tramp-adb.el (tramp-adb-maybe-open-connection): * tramp-sh.el (tramp-open-connection-setup-interactive-shell) (tramp-maybe-open-connection): * tramp-smb.el (tramp-smb-maybe-open-connection): Use `tramp-cleanup-connection'. 2013-09-09 Michael Albinus * tramp-sh.el (tramp-open-connection-setup-interactive-shell): Do not clear password when throwing 'uname-changed. (tramp-maybe-open-connection): Catch 'uname-changed inside the progress reporter. 2013-09-08 Michael Albinus Improve compatibility with older Emacsen, and XEmacs. * .gitignore: Add files. * tramp.el (tramp-find-method, tramp-find-user): Call `propertize' only if it is bound. It isn't for XEmacs. (with-tramp-progress-reporter): Do not let-bind `result'. This yields to scoping errors in XEmacs. (tramp-handle-make-auto-save-file-name): New function, moved from tramp-sh.el. * tramp-adb.el (tramp-adb-file-name-handler-alist): Add handler for `make-auto-save-file-name'. (tramp-adb--gnu-switches-to-ash): Use `tramp-compat-replace-regexp-in-string'. * tramp-cache.el (tramp-cache-print): Call `substring-no-properties' only if it is bound. It isn't for XEmacs. * tramp-cmds.el (tramp-bug): Call `propertize' only if it is bound. It isn't for XEmacs. * tramp-compat.el (tramp-compat-copy-file): Catch `wrong-number-of-arguments' error. (tramp-compat-replace-regexp-in-string): New defun. * tramp-gvfs.el (tramp-gvfs-file-name-handler-alist): Add handler for `make-auto-save-file-name'. (tramp-gvfs-handle-copy-file): Use `tramp-compat-funcall' for `copy-file'. (tramp-gvfs-file-gvfs-monitor-file-process-filter) (tramp-gvfs-file-name): Use `tramp-compat-replace-regexp-in-string'. (tramp-synce-list-devices): Use `push' instead of `pushnew'. * tramp-gw.el (tramp-gw-open-network-stream): Use `tramp-compat-replace-regexp-in-string'. * tramp-sh.el (tramp-sh-file-name-handler-alist): Call `tramp-handle-make-auto-save-file-name'. (tramp-sh-handle-make-auto-save-file-name): Move to tramp.el. (tramp-sh-file-gvfs-monitor-dir-process-filter) (tramp-sh-file-inotifywait-process-filter): Use `tramp-compat-replace-regexp-in-string'. (tramp-compute-multi-hops): Use `push' instead of `pushnew'. * tramp-smb.el (tramp-smb-file-name-handler-alist): Add handler for `make-auto-save-file-name'. (tramp-smb-handle-copy-directory): Call `tramp-compat-replace-regexp-in-string'. (tramp-smb-get-file-entries): Use `push' instead of `pushnew'. (tramp-smb-handle-copy-file): Improve error message. (tramp-smb-handle-rename-file): Rename directly only in case `newname' does not exist yet. This is a restriction of smbclient. (tramp-smb-maybe-open-connection): Rerun the function only when `auth-sources' is non-nil. 2013-09-06 Michael Albinus Remove URL syntax. * tramp.el (tramp-syntax, tramp-prefix-format) (tramp-postfix-method-format, tramp-prefix-ipv6-format) (tramp-postfix-ipv6-format, tramp-prefix-port-format) (tramp-postfix-host-format, tramp-file-name-regexp) (tramp-completion-file-name-regexp) (tramp-completion-dissect-file-name) (tramp-handle-substitute-in-file-name): Remove 'url case. (tramp-file-name-regexp-url) (tramp-completion-file-name-regexp-url): Remove constants. 2013-09-03 Stefan Monnier * tramp.el (with-parsed-tramp-file-name): * tramp-compat.el (tramp-compat-with-temp-message): Silence compiler warnings, and factor out common code. * tramp-gvfs.el (tramp-gvfs-mount-spec, tramp-synce-list-devices): * tramp-smb.el (tramp-smb-get-file-entries): * tramp-sh.el (tramp-sh-handle-insert-directory) (tramp-compute-multi-hops): Fix misuses of `add-to-list'. 2013-09-02 Michael Albinus * tramp-compat.el (tramp-compat-user-error): Move it ... * tramp.el (tramp-user-error): ... here. (tramp-find-method, tramp-check-proper-host) (tramp-dissect-file-name, tramp-debug-message) (tramp-handle-shell-command): * tramp-adb.el (tramp-adb-handle-shell-command): * tramp-gvfs.el (tramp-gvfs-file-name-handler): Adapt callees. * tramp-cache.el (tramp-cache-print): Don't print text properties. 2013-08-29 Stefan Monnier Misc changes to reduce use of `(lambda...); and other cleanups. * tramp.el (with-tramp-progress-reporter): Avoid setq. 2013-08-26 Michael Albinus * tramp.el (tramp-find-method, tramp-find-user): Mark result with text property `tramp-default', if appropriate. (tramp-check-proper-host): New defun. (tramp-dissect-file-name): Do not check hostname. Revert change of 2013-03-18. (tramp-backtrace): Make VEC-OR-PROC optional. * tramp-adb.el (tramp-adb-maybe-open-connection): * tramp-gvfs.el (tramp-gvfs-maybe-open-connection): * tramp-sh.el (tramp-maybe-open-connection): * tramp-smb.el (tramp-smb-maybe-open-connection): Apply `tramp-check-proper-host'. * tramp-sh.el (tramp-sh-handle-verify-visited-file-modtime): BUF can be optional. (Bug#15186) 2013-08-17 Michael Albinus * tramp.el: * tramp-adb.el: * tramp-cmds.el: * tramp-efs.el: * tramp-ftp.el: * tramp-gvfs.el: * tramp-gw.el: * tramp-sh.el: Don't wrap external variable declarations by `eval-when-compile'. 2013-08-16 Michael Albinus * tramp-cmds.el (top): Don't declare `buffer-name'. (tramp-append-tramp-buffers): Rewrite buffer local variables part. 2013-08-15 Michael Albinus Remove byte compiler warnings, visible when compiling with `byte-compile-force-lexical-warnings' set to t. * tramp.el (tramp-debug-message, tramp-message, tramp-error) (tramp-error-with-buffer): Rename ARGS to ARGUMENTS and BUFFER to BUF. (tramp-handle-unhandled-file-name-directory) (tramp-handle-file-notify-add-watch, tramp-action-login) (tramp-action-succeed, tramp-action-permission-denied) (tramp-action-terminal, tramp-action-process-alive): Prefix unused arguments with "_". * tramp-adb.el (tramp-adb-parse-device-names) (tramp-adb-handle-insert-directory, tramp-adb-handle-delete-file) (tramp-adb-handle-copy-file): Prefix unused arguments with "_". (tramp-adb-handle-file-truename): Remove unused arguments. * tramp-cache.el (tramp-flush-directory-property) (tramp-flush-connection-property, tramp-list-connections) (tramp-parse-connection-properties): Prefix unused arguments with "_". * tramp-compat.el (tramp-compat-make-temp-file): Rename FILENAME to F. * tramp-efs.el (top, tramp-efs-file-name-handler): Use `mapc'. * tramp-gvfs.el (tramp-gvfs-handle-file-notify-add-watch) (tramp-gvfs-handle-write-region, tramp-bluez-parse-device-names) (tramp-zeroconf-parse-workstation-device-names) (tramp-zeroconf-parse-webdav-device-names) (tramp-synce-parse-device-names): Prefix unused arguments with "_". * tramp-gw.el (tramp-gw-gw-proc-sentinel) (tramp-gw-aux-proc-sentinel): Prefix unused arguments with "_". * tramp-sh.el (tramp-sh-handle-file-truename): Remove unused arguments. (tramp-sh-handle-copy-file, tramp-sh-handle-dired-compress-file) (tramp-sh-handle-insert-file-contents-literally) (tramp-sh-handle-file-notify-add-watch): Prefix unused arguments with "_". (tramp-do-copy-or-rename-file, tramp-barf-if-no-shell-prompt): Remove unused variables. * tramp-smb.el (tramp-smb-handle-copy-directory) (tramp-smb-handle-copy-file, tramp-smb-handle-delete-file) (tramp-smb-read-file-entry): Prefix unused arguments with "_". * tramp-uu.el (tramp-uu-b64-alphabet, tramp-uu-b64-char-to-byte): Make them a defconst. (tramp-uuencode-region): Remove unused variable. 2013-08-01 Michael Albinus Complete file name handlers. * tramp.el (tramp-handle-set-visited-file-modtime) (tramp-handle-verify-visited-file-modtime) (tramp-handle-file-notify-rm-watch): New functions. (tramp-call-process): Do not bind `default-directory'. * tramp-adb.el (tramp-adb-file-name-handler-alist): Order alphabetically. : : : : : : Add handler. (tramp-adb-handle-write-region): Apply `set-visited-file-modtime'. * tramp-gvfs.el (tramp-gvfs-file-name-handler-alist) : : : Add handler. (with-tramp-gvfs-error-message) (tramp-gvfs-handle-set-visited-file-modtime) (tramp-gvfs-fuse-file-name): Remove. (tramp-gvfs-handle-file-notify-add-watch) (tramp-gvfs-file-gvfs-monitor-file-process-filter): New defuns. (tramp-gvfs-handle-write-region): Fix error in moving tmpfile. * tramp-sh.el (tramp-sh-file-name-handler-alist): Order alphabetically. : Use default Tramp handler. : Remove private handler. (tramp-do-copy-or-rename-file-out-of-band): Do not bind `default-directory'. (tramp-sh-handle-executable-find) (tramp-sh-handle-file-notify-rm-watch): Remove functions. (tramp-sh-file-gvfs-monitor-dir-process-filter) (tramp-sh-file-inotifywait-process-filter, tramp-set-remote-path): Do not use `format' in `tramp-message'. * tramp-smb.el (tramp-smb-file-name-handler-alist) : : Add handler. (tramp-smb-call-winexe): Do not bind `default-directory'. 2013-07-29 Michael Albinus * tramp.el (tramp-use-ssh-controlmaster-options): New custom option. * tramp-sh.el (tramp-do-copy-or-rename-file-out-of-band) (tramp-maybe-open-connection): Use it. 2013-07-24 Michael Albinus * tramp.el (tramp-file-name-for-operation): * tramp-adb.el (tramp-adb-file-name-handler-alist): * tramp-gvfs.el (tramp-gvfs-file-name-handler-alist): * tramp-smb.el (tramp-smb-file-name-handler-alist): * tramp-sh.el (tramp-sh-file-name-handler-alist): Remove `file-notify-supported-p' entry. (tramp-sh-handle-file-notify-supported-p): Remove function. 2013-07-23 Michael Albinus * tramp.el (tramp-handle-file-notify-add-watch): New defun. * tramp-adb.el (tramp-adb-file-name-handler-alist): * tramp-gvfs.el (tramp-gvfs-file-name-handler-alist): * tramp-smb.el (tramp-smb-file-name-handler-alist): Use it. 2013-07-18 Michael Albinus * tramp.el (tramp-file-name-for-operation): Add `file-notify-supported-p'. * tramp-sh.el (tramp-sh-handle-file-notify-supported-p): New defun. (tramp-sh-file-name-handler-alist): Add it as handler for `file-notify-supported-p '. * tramp-adb.el (tramp-adb-file-name-handler-alist): * tramp-gvfs.el (tramp-gvfs-file-name-handler-alist): * tramp-smb.el (tramp-smb-file-name-handler-alist): Add `ignore' as handler for `file-notify-*' functions. 2013-07-14 Michael Albinus * tramp-sh.el (tramp-sh-handle-vc-registered): Use `ignore-error'. 2013-07-11 Michael Albinus * tramp.el (tramp-methods): Extend docstring. (tramp-connection-timeout): New defcustom. (tramp-error-with-buffer): Reset timestamp only when appropriate. (with-tramp-progress-reporter): Simplify. (tramp-process-actions): Improve messages. * tramp-gvfs.el (tramp-gvfs-maybe-open-connection): * tramp-sh.el (tramp-maybe-open-connection): Use `tramp-connection-timeout'. (tramp-methods) : Add method specific timeouts. 2013-07-10 Michael Albinus Improve error messages. (Bug#14808) * tramp.el (tramp-current-connection): New defvar, moved from tramp-sh.el. (tramp-message-show-progress-reporter-message): Removed, not needed anymore. (tramp-error-with-buffer): Show message in minibuffer. Discard input before waiting. Reset connection timestamp. (with-tramp-progress-reporter): Improve messages. (tramp-process-actions): Use progress reporter. Delete process in case of error. Improve messages. * tramp-sh.el (tramp-barf-if-no-shell-prompt): Use condition-case. Call `tramp-error-with-buffer' with vector and buffer. (tramp-current-connection): Removed. (tramp-maybe-open-connection): The car of `tramp-current-connection' are the first 3 slots of the vector. 2013-07-06 Michael Albinus * tramp-sh.el (tramp-sh-file-gvfs-monitor-dir-process-filter): Check for incomplete strings, and keep them for the next run. Handle file names with spaces. (tramp-sh-file-inotifywait-process-filter): Handle file names with spaces. 2013-07-05 Michael Albinus * tramp-sh.el (tramp-sh-handle-file-notify-add-watch): Support both "gvfs-monitor-dir" and "inotifywait". (tramp-sh-file-inotifywait-process-filter): Renamed from `tramp-sh-file-notify-process-filter'. (tramp-sh-file-gvfs-monitor-dir-process-filter) (tramp-get-remote-gvfs-monitor-dir): New defuns. 2013-07-04 Michael Albinus * tramp-sh.el (tramp-sh-handle-file-notify-add-watch): Check, that the `inotifywait' process runs. (tramp-sh-file-notify-process-filter): Do not return a cookie. 2013-07-01 Michael Albinus * tramp.el (tramp-file-name-for-operation): Remove `inotify-add-watch'. Add `file-notify-add-watch' and `file-notify-rm-watch'. * tramp-sh.el (tramp-sh-file-name-handler-alist): Remove `inotify-add-watch'. Add `file-notify-add-watch' and `file-notify-rm-watch'. (tramp-sh-handle-inotify-add-watch) (tramp-sh-inotify-process-filter): Remove functions. (tramp-sh-handle-file-notify-add-watch) (tramp-sh-file-notify-process-filter) (tramp-sh-handle-file-notify-rm-watch): New functions. 2013-06-19 Michael Albinus * tramp-adb.el (tramp-adb-get-toolbox): Remove function, it is not needed. * tramp-sh.el (tramp-find-shell): Don't set "busybox" property. 2013-05-24 Michael Albinus * tramp-gvfs.el (tramp-gvfs-enabled): New defconst. (tramp-gvfs-file-name-handler): Raise a user error when `tramp-gvfs-enabled' is nil. (top): Register signals only when `tramp-gvfs-enabled' is non-nil. Do not raise a user error when loading package. (Bug#14447) 2013-05-23 Michael Albinus * tramp-gvfs.el (top): Suppress D-Bus errors when loading package. (Bug#14447) 2013-04-22 Michael Albinus Fix pack/unpack coding. Reported by David Smith . * tramp-compat.el (tramp-compat-call-process): Move function ... * tramp.el (tramp-call-process): ... here. (tramp-set-completion-function, tramp-parse-putty): * tramp-adb.el (tramp-adb-execute-adb-command): * tramp-gvfs.el (tramp-gvfs-send-command): * tramp-sh.el (tramp-sh-handle-set-file-times, tramp-set-file-uid-gid) (tramp-sh-handle-write-region, tramp-call-local-coding-command): Use `tramp-call-process' instead of `tramp-compat-call-process'. * tramp-sh.el (tramp-perl-pack, tramp-perl-unpack): New defconst. (tramp-local-coding-commands, tramp-remote-coding-commands): Use them. (tramp-sh-handle-file-local-copy, tramp-sh-handle-write-region): (tramp-find-inline-compress): Improve traces. (tramp-maybe-send-script): Check for Perl binary. (tramp-get-inline-coding): Do not redirect STDOUT for local decoding. 2013-04-18 Michael Albinus * tramp-sh.el (tramp-remote-process-environment): Add "TMOUT=0". 2013-03-25 Michael Albinus * tramp.el (tramp-drop-volume-letter): Make it an ordinary defun. Defining it as defalias could introduce too eager byte-compiler optimization. (Bug#14030) 2013-03-18 Michael Albinus * tramp-compat.el (tramp-compat-user-error): New defun. * tramp-adb.el (tramp-adb-handle-shell-command): * tramp-gvfs.el (top): * tramp.el (tramp-find-method, tramp-dissect-file-name) (tramp-handle-shell-command): Use it. (tramp-dissect-file-name): Raise an error when hostname is a method name, and neither method nor user is specified. 2013-03-17 Michael Albinus * tramp-adb.el (tramp-adb-parse-device-names): Use `start-process' instead of `call-process'. Otherwise, the function might be blocked under MS Windows. (Bug#13299) 2013-03-15 Michael Albinus Version 2.2.7 released. 2013-03-13 Michael Albinus * tramp-sh.el (tramp-sh-handle-insert-directory): Check, whether `default-file-name-coding-system' is bound. It isn't in XEmacs. 2013-03-09 Michael Albinus Major rewrite due to changed D-Bus interface of GVFS 1.14. * tramp-gvfs.el (top): Extend check for gvfs availability. (tramp-gvfs-methods-mounttracker, tramp-gvfs-listmounts) (tramp-gvfs-mountlocation, tramp-gvfs-mountlocation-signature): New defconst. (tramp-gvfs-file-name-handler-alist) : : Use Tramp default handler. : : : Remove handler. : New handler. (tramp-gvfs-dbus-string-to-byte-array) (tramp-gvfs-dbus-byte-array-to-string): New defuns. Replace all calls of `dbus-string-to-byte-array' and `tramp-gvfs-dbus-byte-array-to-string'. (tramp-gvfs-handle-copy-file) (tramp-gvfs-handle-delete-directory) (tramp-gvfs-handle-delete-file, tramp-gvfs-handle-file-attributes) (tramp-gvfs-handle-file-directory-p) (tramp-gvfs-handle-file-executable-p) (tramp-gvfs-handle-file-name-all-completions) (tramp-gvfs-handle-file-readable-p) (tramp-gvfs-handle-file-writable-p) (tramp-gvfs-handle-insert-directory) (tramp-gvfs-handle-insert-file-contents) (tramp-gvfs-handle-make-directory, tramp-gvfs-handle-rename-file) (tramp-gvfs-handle-set-visited-file-modtime) (tramp-gvfs-handle-write-region): Rewrite. (tramp-gvfs-handle-file-acl) (tramp-gvfs-handle-file-selinux-context) (tramp-gvfs-handle-process-file, tramp-gvfs-handle-set-file-acl) (tramp-gvfs-handle-set-file-modes) (tramp-gvfs-handle-set-file-selinux-context) (tramp-gvfs-handle-shell-command) (tramp-gvfs-handle-start-file-process) (tramp-gvfs-handle-verify-visited-file-modtime): Remove defuns. (tramp-gvfs-url-file-name): Do not use `file-truename', we work over the symlinks. Fix user handling. (top, tramp-gvfs-handler-mounted-unmounted): Handle different names of the D-Bus signals. (tramp-gvfs-connection-mounted-p): Handle different names of the D-Bus methods. (tramp-gvfs-mount-spec-entry): New defun. (tramp-gvfs-mount-spec): Use it. (tramp-gvfs-maybe-open-connection): Check, that in case of "smb" there is a share name. Handle different names of the D-Bus signals and methods. Set connection properties needed for `tramp-check-cached-permissions'. (tramp-gvfs-send-command): Apply `tramp-gvfs-maybe-open-connection'. Return t or nil. * tramp.el (tramp-backtrace): Move up. (tramp-error): Dump a backtrace into the debug buffer when `tramp-verbose > 9. (tramp-file-mode-type-map, tramp-file-mode-from-int) (tramp-file-mode-permissions, tramp-get-local-uid) (tramp-get-local-gid, tramp-check-cached-permissions): Move from tramp-sh.el. * tramp-sh.el (tramp-file-mode-type-map) (tramp-check-cached-permissions, tramp-file-mode-from-int) (tramp-file-mode-permissions, tramp-get-local-uid) (tramp-get-local-gid): Move to tramp.el. 2013-03-05 Michael Albinus * tramp-compat.el (tramp-compat-delete-directory): Implement TRASH argument. 2013-03-03 Michael Albinus * tramp-adb.el (tramp-adb-maybe-open-connection): Cache, whether the "su" command is available on the device. 2013-03-01 Michael Albinus * tramp-adb.el (tramp-adb-prompt): Extend regexp. (tramp-adb-handle-process-file): Remove superfluous setting. (tramp-adb-command-exit-status): Handle case that COMMAND is nil. (tramp-adb-barf-unless-okay): Use `tramp-adb-command-exit-status'. (tramp-adb-maybe-open-connection): Apply "su" if user is defined. * tramp.el (tramp-obsolete-methods): New defconst. (tramp-warned-obsolete-methods): New defvar. (tramp-find-method): Check for obsolete methods. Map them to a replacement method if appropriate. * tramp-sh.el (tramp-methods) : Remove methods. (top): Remove completion functions for "scp1", "scp2", "ssh1", "ssh2" and "plink1". 2013-02-28 Michael Albinus * tramp-adb.el (tramp-adb-sdk-dir): Remove. Replaced by ... (tramp-adb-program): New defcustom. Remove function. Adapt calls. 2013-02-27 Michael Albinus * tramp-adb.el (tramp-adb-parse-device-names) (tramp-adb-maybe-open-connection): Add timeouts. (Bug#13299) 2013-02-26 Michael Albinus * tramp-sh.el (tramp-sh-handle-insert-directory): Add "2>/dev/null" to the ls command, in case "en_US.utf8" is not defined. POSIX environments fall back to the "C" locale then and emit a warning, which shall be suppressed. 2013-02-23 Michael Albinus * tramp.el (tramp-methods): Fix docstring. (tramp-ssh-controlmaster-options): Rename it from `tramp-ssh-controlmaster-template'. Return a string. (tramp-default-method): Adapt check for `tramp-ssh-controlmaster-options'. * tramp-sh.el (tramp-methods): Replace `tramp-ssh-controlmaster-template' by "%c". (tramp-do-copy-or-rename-file-out-of-band) (tramp-maybe-open-connection): Use it in format spec. Ensure, that it is applied for the first hop only. 2013-02-22 Michael Albinus * tramp.el (tramp-tramp-file-p): Fix docstring. * tramp-sh.el (tramp-sh-handle-insert-directory): Handle multibyte file names. 2013-02-21 Glenn Morris * tramp.el (tramp-get-debug-buffer): Ensure outline.el is not loaded while outline-regexp is let bound. (Bug#9584) 2013-02-21 Michael Albinus * tramp.el (tramp-ssh-controlmaster-template): Make it a defconst. Apply independent check for ControlPersist. * tramp-sh.el (tramp-sh-handle-set-file-times): Set $UTC only temporarily, via "env". 2013-02-19 Michael Albinus * tramp-cache.el (tramp-get-hash-table): New defun. (tramp-get-file-property, tramp-set-file-property) (tramp-get-connection-property, tramp-set-connection-property): Use it. (tramp-flush-file-property, tramp-flush-directory-property): Rename argument to KEY. (tramp-flush-connection-property): Simplify a little bit. (tramp-connection-property-p): New defun. (top): Reapply saved values only if there isn't a corresponding entry in `tramp-connection-properties'. 2013-02-17 Michael Albinus * tramp-sh.el (tramp-sh-handle-start-file-process): Let-bind `tramp-current-connection' in order to avoid an error when several commands are invoked in a short time in eshell and friends. 2013-02-16 Michael Albinus * tramp-cache.el (tramp-connection-properties): New custom option. (tramp-get-connection-property): Use it. * tramp-compat.el (top): Require 'trampver. * tramp-sh.el (tramp-remote-process-environment): Set tramp-autoload cookie. 2013-02-14 Michael Albinus * tramp.el (tramp-debug-message): Add `tramp-condition-case-unless-debug'. (tramp-debug-on-error): New defvar. (tramp-condition-case-unless-debug): New defun. (tramp-file-name-handler): Use it. 2013-02-13 Michael Albinus Use ControlMaster where applicable. (Bug#13677) * tramp.el (tramp-ssh-controlmaster-template): New defvar, replacing `tramp-detect-ssh-controlmaster'. (tramp-default-method): Use it. * tramp-sh.el (tramp-methods) : : Add ControlPath and ControlMaster arguments. : Remove methods. (top): Remove completion functions for "scpc", "rsyncc", "ssh1_old" and "ssh2_old". (tramp-do-copy-or-rename-file-out-of-band): Change trace level. (tramp-maybe-open-connection): Reuse tmpfile for ControlPath. 2013-02-12 Michael Albinus * tramp-adb.el (tramp-adb-handle-start-file-process): Rewrite. * tramp-compat.el (top): Declare `remote-file-name-inhibit-cache' only if it doesn't exist. * tramp-sh.el (tramp-sh-handle-start-file-process): Set process marker. 2013-02-03 Michael Albinus * tramp.el (tramp-debug-message): Extend function exclude list. (tramp-backtrace): New defun. (tramp-handle-insert-file-contents): Use `visit' when inserting the local copy. * tramp-sh.el (tramp-sh-handle-set-visited-file-modtime): Use `remote-file-name-inhibit-cache'. 2013-02-01 Andrew W. Nosenko (tiny change) * tramp.el (tramp-check-for-regexp): Avoid "Args out of range" error when buffer in question is narrowed so position 1 is out of visible part. 2013-01-30 Michael Albinus * tramp.el (tramp-tramp-file-p): Comment check for `string-as-unibyte'. The function does not exist on XEmacs, and likely we need another approach. * tramp-sh.el (tramp-compute-multi-hops): Check, whether `tramp-gw-*' variables are bound. 2013-01-30 Michael Albinus * tramp.el (tramp-process-connection-type): Fix docstring. (tramp-completion-reread-directory-timeout): Fix type. (tramp-connection-min-time-diff): New defcustom. * tramp-sh.el (tramp-maybe-open-connection): Use it. 2013-01-29 Michael Albinus * tramp-sh.el (tramp-sh-handle-start-file-process): Catch `suppress'. Otherwise, `tramp-run-real-handler' might be called in `tramp-file-name-handler'. (tramp-gw-tunnel-method, tramp-gw-socks-method): Declare for compatibility. (tramp-compute-multi-hops): Check, whether `tramp-gw-tunnel-method' and `tramp-gw-socks-method' are non-nil. 2013-01-25 Michael Albinus Experimental inotify support. * tramp.el (tramp-file-name-for-operation): Add `inotify-add-watch'. * tramp-sh.el (tramp-sh-file-name-handler-alist): Add handler for `inotify-add-watch'. (tramp-sh-handle-inotify-add-watch) (tramp-sh-inotify-process-filter, tramp-get-remote-inotifywait): New defuns. 2013-01-24 Michael Albinus * tramp.el (tramp-tramp-file-p): Check, whether NAME is unibyte. * tramp-sh.el (tramp-sh-handle-set-file-acl): Do not suppress basic attributes. (tramp-sh-handle-set-file-acl): Improve error checking. 2013-01-21 Michael Albinus * tramp-cmds.el (tramp-bug, tramp-append-tramp-buffers): Mark descriptive parts with `display' property. 2013-01-20 Michael Albinus Improve XEmacs compatibility. * tramp.el (tramp-replace-environment-variables): Make it a defun. * tramp-adb.el (top): Require `time-date'. (tramp-adb-ls-output-time-less-p): Use `tramp-time-less-p'. (tramp-adb-handle-copy-file, tramp-adb-handle-rename-file): Use `tramp-file-name-handler'. (tramp-adb-maybe-open-connection): Use `tramp-compat-set-process-query-on-exit-flag'. * tramp-sh.el (tramp-sh-handle-file-acl): Use `tramp-compat-funcall'. * tramp-smb.el (tramp-smb-handle-file-acl): Use `looking-at' and `tramp-compat-funcall'. 2013-01-18 Jürgen Hötzel * tramp-adb.el (tramp-adb-handle-start-file-process): Complete reimplementation using "adb shell command ..." instead of running remote shell interactively. 2013-01-09 Paul Eggert Spelling fixes. * tramp-adb.el (tramp-adb-get-toolbox): Fix misspelling of 'unknown'. 2013-01-08 Jürgen Hötzel * tramp.el (tramp-eshell-directory-change): Check remote-path first in session cache: When `tramp-own-remote-path' is in `tramp-remote-path', the remote path is only set in the session cache. 2013-01-08 Michael Albinus * tramp-adb.el (tramp-adb-file-name-handler-alist): Remove spurious entry. 2013-01-08 Glenn Morris * tramp.el (tramp-default-host-alist): Add :version. 2013-01-07 Jürgen Hötzel * tramp-adb.el (tramp-do-parse-file-attributes-with-ls): Handle filename correctly, when parsing "source -> target" symlink output. (tramp-adb-handle-set-file-times): New defun. 2013-01-07 Michael Albinus * tramp.el (tramp-default-host-alist): New defcustom. (tramp-find-host): Use it. (tramp-eshell-directory-change): Moved from tramp-sh.el. Add to `eshell-directory-change-hook'. * tramp-adb.el (top): Add adb specific entry in `tramp-default-host-alist'. (tramp-adb-file-name-host): Remove function. (tramp-adb-execute-adb-command, tramp-adb-maybe-open-connection): Use `tramp-file-name-host' instead of `tramp-adb-file-name-host'. * tramp-sh.el : Move eshell integration code to tramp.el. 2013-01-06 Jürgen Hötzel * tramp-adb.el (tramp-methods): Add `tramp-tmpdir' entry. 2013-01-06 Michael Albinus * tramp-adb.el (tramp-adb-ls-toolbox-regexp): The file size can consist of more than one digit. (tramp-adb-file-name-handler-alist): Use `tramp-handle-file-exists-p' consistently. (tramp-adb-file-name-handler): Don't tweak `tramp-default-host'. (tramp-adb-handle-file-exists-p): Remove function. (tramp-adb-file-name-host): New defun. (tramp-adb-execute-adb-command, tramp-adb-maybe-open-connection): Use it. (tramp-adb-maybe-open-connection): Set "remote-path" property. 2013-01-05 Michael Albinus * tramp-adb.el (tramp-do-parse-file-attributes-with-ls): (tramp-adb-handle-directory-files-and-attributes): Fix typos. 2013-01-04 Jürgen Hötzel * tramp-adb.el (tramp-adb-handle-file-attributes): More robust parsing of ls output using regular expression (handle filenames with spaces). Use virtual device number. (tramp-do-parse-file-attributes-with-ls): New defun (Code cleanup). 2013-01-04 Michael Albinus * tramp-sh.el (tramp-set-file-uid-gid): UID and GID must be non-negative integers. Otherwise, the default values are used. (tramp-convert-file-attributes): Convert uid and gid to integers. 2013-01-02 Michael Albinus * tramp-sh.el (tramp-sh-handle-set-file-acl): Add argument to `error' call. (tramp-do-copy-or-rename-file): Ignore errors when calling `set-file-extended-attributes'. * tramp-smb.el (tramp-smb-file-name-handler-alist): Add handler for `file-acl'. (tramp-smb-handle-file-acl): New defun. 2012-12-31 Jürgen Hötzel * tramp-adb.el (tramp-adb-maybe-open-connection): Handle errors (No device connected, invalid device name). (Bug #13299) 2012-12-30 Michael Albinus * tramp-sh.el (tramp-sh-handle-set-file-selinux-context): Return `t' on success. * tramp-smb.el (tramp-smb-file-name-handler-alist): Add handler for `set-file-selinux-context'. 2012-12-29 Michael Albinus * tramp-sh.el (tramp-sh-handle-file-acl): Suppress basic attributes. (tramp-sh-handle-set-file-acl): Return `t' on success. 2012-12-28 Michael Albinus * tramp-sh.el (tramp-set-file-uid-gid): Convert UID and GID to integers, if they are real numbers. (Bug#13282) 2012-12-27 Michael Albinus * tramp.el (tramp-handle-file-accessible-directory-p): New defun. * tramp-adb.el (tramp-adb-file-name-handler-alist): * tramp-gvfs.el (tramp-gvfs-file-name-handler-alist): * tramp-sh.el (tramp-sh-file-name-handler-alist): Add handler for `file-accessible-directory-p'. (Bug#13275) 2012-12-24 Jürgen Hötzel * tramp-adb.el (tramp-adb-get-toolbox): New Defun. Check for remote shell implementation (BusyBox or Toolbox). 2012-12-22 Jürgen Hötzel * tramp-adb.el (tramp-adb-get-ls-command): New defun. Suppress coloring, if possible (required for BusyBox based systems like CyanogenMod). 2012-12-22 Michael Albinus * tramp-adb.el (tramp-adb-maybe-open-connection): Check properties of remote device. Restart connection, if there is a change. 2012-12-19 Michael Albinus * tramp-sh.el (tramp-sh-handle-file-acl): Delete empty lines and text properties from returned ACL string. (tramp-sh-handle-set-file-acl): Do not use additional parentheses for "setfacl" command. 2012-12-18 Michael Albinus * tramp.el (tramp-error-with-buffer): Give a hint to use `tramp-cleanup-this-connection', when the process has died. (Bug#13151) 2012-12-17 Michael Albinus Add support for preserving ACL entries of files. * tramp.el (tramp-file-name-for-operation): Add `file-acl' and `set-file-acl' handlers. * tramp-adb.el (tramp-adb-handle-copy-file): Handle PRESERVE-EXTENDED-ATTRIBUTES. * tramp-compat.el (tramp-compat-copy-file): Handle PRESERVE-EXTENDED-ATTRIBUTES. * tramp-gvfs.el (tramp-gvfs-file-name-handler-alist): Add `file-acl' and `set-file-acl' handlers. (tramp-gvfs-handle-copy-file): Handle PRESERVE-EXTENDED-ATTRIBUTES. (tramp-gvfs-handle-file-acl, tramp-gvfs-handle-set-file-acl): New defuns. * tramp-sh.el (tramp-sh-file-name-handler-alist): Add `file-acl' and `set-file-acl' handlers. (tramp-remote-acl-p, tramp-sh-handle-file-acl) (tramp-sh-handle-set-file-acl): New defuns. (tramp-sh-handle-copy-file, tramp-do-copy-or-rename-file): Handle PRESERVE-EXTENDED-ATTRIBUTES. * tramp-smb.el (tramp-smb-file-name-handler-alist): Add `file-acl' and `set-file-acl' handlers. (tramp-smb-handle-copy-file): Handle PRESERVE-EXTENDED-ATTRIBUTES. 2012-12-14 Paul Eggert Fix permissions bugs with setgid directories etc. (Bug#13125) * tramp-sh.el (tramp-sh-handle-file-ownership-preserved-p): New optional arg GROUP. (tramp-get-local-gid): Use group-gid for integer, as that's faster and more reliable. 2012-12-13 Michael Albinus * tramp-adb.el (tramp-adb-file-name-p): Make it a defsubst. Otherwise, there could be errors in autoloading. (Bug#13151) 2012-12-11 Jürgen Hötzel * tramp-adb.el (tramp-adb-wait-for-output): Remove spurious " ^H" sequences. 2012-12-06 Michael Albinus * tramp.el (tramp-replace-environment-variables): Hide compiler warning. * Makefile.in (top): Remove EMACS_UTILS. (LISP_FILES): Remove tramp-util.el and tramp-vc.el. * tramp-compat.el (top): Don't require 'tramp-util and 'tramp-vc. * tramp-util.el: * tramp-vc.el: Move to obsolete/. * tramp.el (tramp-file-name-for-operation): Remove `executable-find', `start-process', `call-process' and `call-process-region'. * tramp-sh.el (top): Remove `tramp-sh-handle-call-process-region'. 2012-12-05 Michael Albinus * tramp-sh.el (tramp-do-copy-or-rename-file-out-of-band): Check return code of copy command. * tramp-adb.el (tramp-adb-sdk-dir, tramp-adb-prompt): Use group `tramp'. Add version. * tramp-adb.el (tramp-adb-handle-file-writable-p): Format docstring. Use `filename' but `localname'. (tramp-adb-find-test-command): Fix docstring. Use `vec' but `v'. 2012-12-03 Michael Albinus * tramp-adb.el (tramp-adb-find-test-command): New defun. Caches, whether the ash supports the "test" command. (tramp-adb-handle-file-writable-p): Use it. Use also `file-directory-p' and `file-writable-p' in order to force caching. 2012-12-02 Jürgen Hötzel * tramp-adb.el (top): Remove dependency on CL sequence functions. (tramp-adb-prompt): Add prompt used on Android > 4.0 devices. (tramp-adb-handle-file-writable-p): Implement using "test". (tramp-adb-command-exit-status): New defun. 2012-12-02 Michael Albinus * .gitignore: Add file. 2012-11-27 Michael Albinus * tramp-sh.el (tramp-perl-encode): Use "read STDIN" instead of "". This is binary safe. 2012-11-23 Michael Albinus * Makefile.in: Add tramp-adb.el. * tramp-adb.el (top): Adapt license and commentary. Require 'cl and declare `dired-move-to-filename-regexp' in order to avoid byte compiler warnings. Use `with-tramp-file-property' instead of `with-file-property', `with-tramp-progress-reporter' instead of `tramp-with-progress-reporter' and `string-to-number' instead of `string-to-int. 2012-11-23 Jürgen Hötzel * tramp-adb.el: New package. 2012-11-19 Michael Albinus * tramp-gvfs.el (tramp-gvfs-dbus-event-error): Ensure backward compatibility. * tramp-sh.el (tramp-do-copy-or-rename-file): If both files are remote, check out-of-band property for both. 2012-11-18 Paul Eggert * tramp.el (tramp-time-less-p, tramp-time-subtract): * tramp-sh.el (tramp-do-file-attributes-with-ls): Add a couple of FIXME comments. 2012-11-13 Glenn Morris * tramp-gvfs.el (tramp-gvfs-dbus-event-error): Use new names for hooks rather than obsolete aliases. 2012-11-08 Stefan Monnier * tramp.el (tramp-replace-environment-variables): Use `substitute-env-vars'. 2012-10-23 Michael Albinus * tramp-smb.el (tramp-smb-maybe-open-connection): Set `tramp-chunksize' to 1. This improves the performance. (tramp-smb-wait-for-output): Add timeout to `tramp-accept-process-output' calls. 2012-10-09 Michael Albinus * tramp.el (tramp-debug-message): Remove "tramp-with-progress-reporter" from regexp of ignored functions. (with-tramp-progress-reporter): Rename from `tramp-with-progress-reporter'. (with-tramp-file-property, with-tramp-connection-property): Move from tramp-cache.el, rename from `with-file-property' and `with-connection-property', respectively. * tramp-cache.el: Remove `with-file-property' and `with-connection-property'. * tramp.el: * tramp-gvfs.el: * tramp-sh.el: * tramp-smb.el: Adapt callees. 2012-10-06 Glenn Morris * tramp.el (tramp-save-ad-hoc-proxies): Add missing group :version tag. 2012-09-17 Chong Yidong * tramp-cmds.el (tramp-bug): Doc fixes. 2012-09-12 Michael Albinus Version 2.2.6 released. * tramp.el (tramp-accept-process-output): Don't use JUST-THIS-ONE in the XEmacs case. 2012-08-29 Michael Albinus * tramp-sh.el (tramp-remote-path): Add "/sbin" and "/usr/local/sbin". 2012-08-20 Michael Albinus * tramp.el (tramp-accept-process-output): Accept only output from PROC. Otherwise, process filters and sentinels might be confused. (Bug#12145) 2012-08-17 Michael Albinus * tramp-sh.el (tramp-sh-handle-start-file-process): Eliminate superfluous prompt. (Bug#12203) 2012-08-16 Glenn Morris * tramp.el: * tramp-smb.el: Replace version 24.2 with 24.3 where appropriate. 2012-08-14 Michael Albinus * tramp-sh.el (tramp-open-shell): Cache the shell name. (tramp-find-shell, tramp-open-connection-setup-interactive-shell): Use cached shell name. 2012-08-08 Michael Albinus * tramp-sh.el (tramp-find-file-exists-command): Protect the tests by `ignore-error'. (tramp-find-shell): Open also a new shell, when cache is already set. Reported by Carsten Bormann . (Bug#12148) 2012-07-06 Michael Albinus * tramp.el (tramp-restricted-shell-hosts-alist): New defcustom. * tramp-sh.el (tramp-maybe-open-connection): Handle it. 2012-07-05 Michael Albinus * tramp-sh.el (tramp-sh-handle-write-region): uid and gid can be floats. Reported by Russell Sim . 2012-07-02 Michael Albinus * tramp-sh.el (tramp-do-directory-files-and-attributes-with-stat): Redirect stderr to /dev/null. 2012-07-01 Glenn Morris * tramp-gvfs.el: Remove outdated and unnecessary dbus declarations. 2012-07-01 Michael Albinus * tramp-sh.el (tramp-sh-handle-vc-registered): Hide errors. (tramp-vc-file-name-handler): Use dummy results for `process-file' and `start-file-process'. 2012-06-26 Michael Albinus * tramp-compat.el (tramp-compat-temporary-file-directory): In XEmacs, there is no standard-value for `temporary-file-directory'. 2012-06-22 Michael Albinus * Makefile.in (EM): Use "-no-autoloads" instead of "-vanilla" in case of XEmacs. Suggested by Steve Youngs . * tramp.el (tramp-drop-volume-letter): Provide an XEmacs compatible declaration. * tramp-compat.el (top): Require packages, which aren't autoloaded anymore for XEmacs. Protect call of `tramp-file-name-handler' by `tramp-compat-funcall', pacifying the compiler. * tramp-efs.el (package-get-download-sites): Declare. 2012-06-21 Michael Albinus * tramp-cmds.el (tramp-append-tramp-buffers): Protect `list-load-path-shadows' call. * tramp-efs.el (top): Autoload only settings for `tramp-methods' and `tramp-default-method-alist'. 2012-06-20 Michael Albinus * tramp-compat.el (top): Do not require tramp-util.el and tramp-vc.el anymore, it hurts at least for SXEmacs. * tramp-sh.el (tramp-maybe-open-connection): Check also whether `non-essential' is bound. 2012-06-17 Michael Albinus * tramp.el (tramp-file-name-handler): Catch 'non-essential. * tramp-sh.el (tramp-maybe-open-connection): Throw if `non-essential' is non-nil. 2012-06-08 Michael Albinus * tramp-compat.el (tramp-compat-temporary-file-directory): Avoid infloop. 2012-06-06 Michael Albinus * tramp-compat.el (tramp-compat-temporary-file-directory): Ensure, that the temp directory is local. * tramp-sh.el (tramp-sh-handle-write-region): Let-bind `temporary-file-directory'. 2012-06-03 Michael Albinus Version 2.2.5 released. * tramp-compat.el (tramp-compat-condition-case-unless-debug): New defmacro. * tramp.el (tramp-file-name-handler): Use it. 2012-06-01 Michael Albinus * tramp.el (tramp-file-name-handler): If `debug-on-error' is set, propagate an error unchanged. (tramp-check-for-regexp): Search from buffer end, in order to avoid "Stack overflow in regexp matcher". 2012-05-08 Michael Albinus * tramp-sh.el (tramp-do-file-attributes-with-stat) (tramp-do-directory-files-and-attributes-with-stat) Return uid and gid as real numbers. They could run out of integer range on cygwin. 2012-04-23 Chong Yidong * tramp.el (tramp): Fix docstring. 2012-04-23 Michael Albinus * tramp-sh.el (tramp-copy-size-limit): Fix docstring. (tramp-do-copy-or-rename-file-out-of-band): Better trace format. 2012-04-19 Michael Albinus * tramp.el (tramp-action-password): Let-bind `enable-recursive-minibuffers' to t. 2012-04-19 Chong Yidong Remove * characters from the front of variable docstrings. 2012-04-18 Michael Albinus * tramp-cache.el (tramp-dump-connection-properties): Let-bind `print-length' and `print-level' to nil, in order to avoid truncation. Reported by Christopher Schmidt . 2012-04-02 Michael Albinus * tramp-gvfs.el (tramp-gvfs-send-command): Apply `tramp-compat-call-process' instead of `tramp-local-call-process'. Reported by Magnus Henoch . 2012-04-01 Chong Yidong * tramp.el (tramp-file-name-for-operation): Rename file-subdir-of-p to file-in-directory-p. 2012-03-28 Michael Albinus * tramp.el (tramp-message-show-progress-reporter-message): New defvar. (tramp-with-progress-reporter): Use it. We cannot use `tramp-message-show-message' here, because this suppresses also error buffers. 2012-03-27 Michael Albinus * tramp-compat.el (tramp-compat-copy-directory): Fix error in condition-case syntax. 2012-03-23 Michael Albinus * tramp.el (tramp-shell-prompt-pattern): Allow "[]" style prompts. (Bug#11065) 2012-03-17 Michael Albinus * tramp.el (tramp-handle-insert-file-contents): Use progress-reporter for the whole scenario. 2012-03-01 Michael Albinus * tramp-sh.el (tramp-remote-process-environment): Add "PAGER=\"\"". Reported by Robert Lupton the Good . 2012-02-28 Thierry Volpiatto * tramp.el (tramp-file-name-for-operation): Rename `files-equal-p' to `file-equal-p'. 2012-02-26 Michael Albinus * tramp.el (tramp-inodes, tramp-devices): Initialize with 0. (tramp-get-inode, tramp-get-device): Use cached values. 2012-02-25 Michael Albinus * tramp.el (tramp-file-name-for-operation): Add `files-equal-p' and `file-subdir-of-p'. * tramp-sh.el (tramp-sh-handle-copy-directory): * tramp-smb.el (tramp-smb-handle-copy-directory): Add COPY-CONTENTS argument. 2012-02-16 Michael Albinus * tramp.el (tramp-error-with-buffer): Suppress buffer view, if `tramp-message-show-message' is nil. * tramp-smb.el (tramp-smb-wrong-passwd-regexp): New defconst. (tramp-smb-maybe-open-connection): Handle wrong passwords. (tramp-smb-handle-rename-file): Fix spelling error. 2012-02-15 Glenn Morris * tramp.el (tramp-encoding-command-interactive) (tramp-local-end-of-line): Add missing :version tags to new defcustoms and defgroups. 2012-02-13 Michael Albinus * tramp.el (tramp-error-with-buffer): Use `tramp-get-connection-buffer'. * tramp-compat.el (tramp-compat-copy-directory): Add optional argument COPY-CONTENTS. It is not handled yet. * tramp-smb.el (tramp-smb-server-version) (tramp-smb-actions-with-tar): New defconst. (tramp-smb-action-with-tar): New defun. (tramp-smb-handle-copy-directory): Implement using "tar". By this, time-stamps are preserved. (tramp-smb-handle-copy-file): Handle also the case of directories. (tramp-smb-handle-rename-file): Use "rename", when source and target are on the same share. (tramp-smb-maybe-open-connection): Use `tramp-smb-server-version'. 2012-02-03 Michael Albinus * tramp-sh.el (tramp-remote-path): Add "/opt/local/bin". 2012-01-27 Michael Albinus * Makefile.in (EMACS_INFO): Add variable. * tramp.el (tramp-get-method-parameter): Move up. (tramp-mode-string-to-int, tramp-local-host-p): Set tramp-autoload cookie. 2012-01-26 Michael Albinus * tramp.el (tramp-completion-function-alist): Adapt docstring. (tramp-parse-shostkeys-sknownhosts): Do not return "." or "..". (tramp-parse-putty): Handle UNIX case. * tramp-sh.el (tramp-completion-function-alist-putty): Handle UNIX case. 2012-01-22 Michael Albinus * tramp.el (tramp-action-login): Set connection property "login-as". * tramp-cache.el (tramp-dump-connection-properties): Do not dump properties, when "login-as" is set. * tramp-sh.el (tramp-methods): Add user spec to "pscp" and "psftp". (tramp-default-user-alist): Don't add "pscp". (tramp-do-copy-or-rename-file-out-of-band): Use connection property "login-as", if set. (Bug#10530) 2012-01-21 Michael Albinus * tramp-sh.el (tramp-default-user-alist): Don't add "plink", "plink1" and "psftp". (Bug#10530) 2012-01-17 Michael Albinus * tramp.el (tramp-methods, tramp-rsh-end-of-line): Remove `tramp-password-end-of-line' from docstring. (tramp-default-password-end-of-line): Remove defcustom. (tramp-local-end-of-line): New defcustom. (tramp-action-login, tramp-action-password, tramp-action-yesno) (tramp-action-yn, tramp-action-terminal): Use it. (Bug#10530) * tramp-sh.el (tramp-methods): Do not use `tramp-password-end-of-line'. 2012-01-15 Michael Albinus Version 2.2.4 released. * tramp-sh.el (tramp-remote-path): Set tramp-autoload cookie. 2012-01-01 Michael Albinus * tramp-sh.el (tramp-remote-path): Add "/opt/bin" and "/opt/sbin". (tramp-find-shell): Rearrange implementation. (tramp-find-inline-compress): Cache the compress commands in the process cache. (tramp-get-inline-compress): Read connection properties from the process cache. 2011-12-30 Michael Albinus * tramp-sh.el (tramp-open-connection-setup-interactive-shell): Move check for busybox ... (tramp-find-shell): ... here. Simplify implementation. (tramp-remote-coding-commands): Make the test command an extra slot. (tramp-find-inline-encoding): Cache the coding commands in the process cache. Apply test command on the remote side, if defined. (tramp-get-inline-coding): Read connection properties from the process cache. 2011-12-29 Michael Albinus * tramp-sh.el (tramp-find-shell): Set "remote-shell" property also for alternative shells. (tramp-open-connection-setup-interactive-shell): Check, whether the shell is a busybox. (tramp-send-command): Don't suppress multiple prompts for busyboxes, it hurts. 2011-12-15 Michael Albinus * tramp-sh.el (tramp-find-file-exists-command): Spelling fixes. (tramp-remote-coding-commands): Check "test -c /dev/stdout". If failing, a regular file would be written otherwise. Reported by Dmitry Kurochkin . (tramp-find-inline-encoding): Embed checks in parentheses. 2011-12-07 Michael Albinus * tramp.el (top): Require 'cl. (tramp-enter-password): Remove it. Move implementation ... (tramp-action-password): ... here. (tramp-make-tramp-temp-file, tramp-read-passwd) (tramp-clear-passwd, tramp-time-less-p, tramp-time-diff): Set tramp-autoload cookie. 2011-12-02 Michael Albinus * tramp-sh.el (tramp-maybe-open-connection): Handle user interrupt. (Bug#10187) 2011-11-24 Michael Albinus * tramp.el (tramp-save-ad-hoc-proxies): New defcustom. (tramp-completion-handle-file-name-all-completions): Fix an error when called from ido. * tramp-sh.el (tramp-compute-multi-hops): Save `tramp-default-proxies-alist' when requested. 2011-11-22 Michael Albinus * tramp.el (tramp-completion-make-tramp-file-name) (tramp-get-completion-user-host): Remove optional arg HOP, not needed any longer. (tramp-completion-handle-file-name-all-completions): Handle hops. (tramp-completion-dissect-file-name): Use better local variable name. 2011-11-19 Michael Albinus * tramp.el (tramp-make-tramp-file-name): Fix docstring. (tramp-completion-make-tramp-file-name) (tramp-get-completion-user-host): New optional arg HOP. (tramp-completion-dissect-file-name1): Add hop to the vector. 2011-11-17 Michael Albinus Add ad-hoc hops. * tramp.el (tramp-user-regexp, tramp-file-name-regexp-unified) (tramp-file-name-regexp-url): Extend regexp by hop separator. (tramp-postfix-hop-format, tramp-postfix-hop-regexp) (tramp-remote-file-name-spec-regexp): New defconst. (tramp-file-name-structure): Extend structure for hops. (tramp-file-name-p, tramp-dissect-file-name) (with-parsed-tramp-file-name): Handle hops. (tramp-file-name-hop): New defun. (tramp-make-tramp-file-name): New optional arg HOP. * tramp-efs.el (tramp-disable-efs): Fix docstring. (tramp-efs-file-name-p): Simplify. * tramp-ftp.el (tramp-disable-ange-ftp): Fix docstring. (tramp-ftp-file-name-p): Simplify. * tramp-gvfs.el (tramp-gvfs-handle-expand-file-name): Add hop to connection vector. * tramp-gw.el (tramp-gw-open-connection): Add hop to connection vector. * tramp-sh.el (tramp-sh-handle-expand-file-name) (tramp-compute-multi-hops): Handle hops. * tramp-smb.el (tramp-smb-file-name-p): Simplify. 2011-11-16 Michael Albinus * tramp-cache.el (tramp-flush-file-property): Flush also properties of linked files. (Bug#9879) * tramp-sh.el (tramp-sh-handle-file-truename): Cache only the local file name. 2011-11-10 Thierry Volpiatto * tramp.el (tramp-parse-sknownhosts): Fix copy error of previous change. 2011-11-08 Thierry Volpiatto Michael Albinus * tramp.el (tramp-set-completion-function): Fix docstring. (tramp-parse-group, tramp-parse-file) (tramp-parse-shostkeys-sknownhosts): New defuns. (tramp-parse-rhosts, tramp-parse-rhosts-group, tramp-parse-shosts) (tramp-parse-shosts-group, tramp-parse-sconfig) (tramp-parse-sconfig-group, tramp-parse-shostkeys) (tramp-parse-sknownhosts, tramp-parse-hosts) (tramp-parse-hosts-group, tramp-parse-passwd, tramp-parse-netrc): Use them. (tramp-parse-passwd-group, tramp-parse-netrc-group) (tramp-parse-putty-group): Don't narrow. (tramp-parse-putty): Make a loop. 2011-10-26 Michael Albinus * tramp.el (tramp-cleanup): New defun. (tramp-file-name-handler): Catch the `suppress' signal. * tramp-cmds.el (tramp-cleanup-connection): Delete also process. * tramp-sh.el (tramp-open-connection-setup-interactive-shell): Use `tramp-cleanup'. (tramp-current-connection): New defvar. (tramp-maybe-open-connection): Use `tramp-cleanup'. Throw `suppress', if there was a failed connection shortly before. 2011-10-25 Michael Albinus * tramp-sh.el (tramp-sh-handle-file-directory-p): Return t for filenames "/method:foo:". (Bug#9793) 2011-10-23 Michael Albinus Version 2.2.3 released. * tramp-cache.el (top): Pacify byte-compiler using `init-file-user' and `site-run-file'. 2011-10-19 Michael Albinus * tramp.el (tramp-connectable-p): Make a stronger check on a running process. 2011-10-18 Michael Albinus * tramp.el (tramp-file-name-handler): Load Tramp packages silently. 2011-10-12 Michael Albinus * tramp.el (tramp-rfn-eshadow-update-overlay): Ignore errors. Let `file-name-handler-alist' be nil, the local file name part could look remotely (for example on VMS). (Bug#6019, Bug#9315) 2011-10-09 Michael Albinus * tramp.el (tramp-file-name-handler): Add 'debug to the error condition. 2011-09-23 Michael Albinus * tramp-sh.el (tramp-sh-handle-file-name-all-completions): Fix nasty bug using wrong cached values. 2011-09-21 Michael Albinus * tramp.el (tramp-handle-shell-command): Set process sentinel and process filter, as done also in `shell-command'. 2011-09-19 Michael Albinus * tramp-sh.el (tramp-inline-compress-commands): Add "xz". Suggested by Liam Stitt . * tramp-smb.el (tramp-methods): Use `tramp-smb-method'. (tramp-smb-handle-start-file-process): Don't reset query-on-exit-flag. (tramp-smb-kill-winexe-function): New defun. (tramp-smb-call-winexe): Add it to local `kill-buffer-hook'. 2011-09-18 Michael Albinus * tramp-sh.el (tramp-do-copy-or-rename-file-out-of-band) (tramp-maybe-open-connection): Use `tramp-file-name-real-host' for `tramp-current-host'. 2011-09-12 Michael Albinus * tramp-smb.el (tramp-smb-handle-file-attributes): Ignore errors. (tramp-smb-handle-start-file-process): Simplify process name detection. 2011-09-10 Michael Albinus * tramp-smb.el (tramp-smb-file-name-handler-alist): Add handler for `start-file-process'. (tramp-smb-handle-process-file): Tune process name determination. Use `tramp-temp-buffer-name'. Narrow region at point-max. (tramp-smb-handle-start-file-process): New defun. 2011-09-07 Michael Albinus * tramp.el (top): Don't require 'shell. (tramp-methods): Fix docstring. (tramp-get-remote-tmpdir): Use `tramp-tmpdir', if defined for the respective method. * tramp-compat.el (top): Require 'shell. * tramp-smb.el (tramp-methods): Add `tramp-tmpdir' entry. (tramp-smb-winexe-shell-command): Fix docstring. (tramp-smb-send-command): Remove argument `remove-prompt'. (tramp-smb-wait-for-output): Remove prompt. 2011-09-06 Michael Albinus * tramp.el (tramp-get-remote-tmpdir): New defun, moved from tramp-sh.el. Return complete remote file name. Handle "smb" case. (tramp-make-tramp-temp-file): Adapt call of `tramp-get-remote-tmpdir'. * tramp-sh.el (tramp-get-remote-tmpdir): Remove. * tramp-smb.el (tramp-smb-handle-process-file): Handle INFILE correctly. (tramp-smb-send-command): Fix previous patch for correct return value. 2011-09-04 Michael Albinus * tramp.el (top): Require 'shell. Use `tramp-unload-hook' but `tramp-cache-unload-hook' where appropriate. (tramp-methods): Rename `tramp-remote-sh' to `tramp-remote-shell'. Add `tramp-remote-shell-args'. (tramp-handle-shell-command): New defun, moved from tramp-sh.el. * tramp-sh.el (top): Don't require 'shell. (tramp-methods): Add `tramp-remote-shell' and `tramp-remote-shell-args' entries. (tramp-sh-file-name-handler-alist): Use `tramp-handle-shell-command'. (tramp-sh-handle-shell-command): Remove. (tramp-find-shell, tramp-open-connection-setup-interactive-shell): Use `tramp-remote-shell'. * tramp-smb.el (tramp-methods): Add `tramp-remote-shell' entry. (tramp-smb-prompt): Extend for powershell prompt. (tramp-smb-errors): Add "NT_STATUS_IMAGE_ALREADY_LOADED". (tramp-smb-file-name-handler-alist): Add handler for `process-file' and `shell-command'. (tramp-smb-winexe-program, tramp-smb-winexe-shell-command) (tramp-smb-winexe-shell-command-switch): New defcustoms. (tramp-smb-do-file-attributes-with-stat) (tramp-smb-get-file-entries, tramp-smb-get-cifs-capabilities): Use `tramp-get-connection-buffer'). (tramp-smb-handle-process-file, tramp-smb-call-winexe) (tramp-smb-shell-quote-argument): New defuns. (tramp-smb-send-command): New optional argument REMOVE-PROMPT. (tramp-smb-winexe-program): New optional argument ARGUMENT. Handle also winexe calls. (tramp-smb-wait-for-output): Check also for process end. 2011-08-31 Michael Albinus * tramp.el (tramp-root-regexp): Remove. (tramp-completion-file-name-regexp-unified) (tramp-completion-file-name-regexp-separate) (tramp-completion-file-name-regexp-url): Don't use leading volume letter on win32 systems. (Bug#5303, Bug#9311) (tramp-drop-volume-letter): Simplify definition. Suggested by Stefan Monnier . 2011-08-03 Michael Albinus * tramp-sh.el (tramp-open-connection-setup-interactive-shell) (tramp-open-shell): Use `tramp-shell-quote-argument'. 2011-07-30 Michael Albinus Version 2.2.2 released. 2011-07-27 Michael Albinus * tramp-sh.el (tramp-maybe-send-script): Don't let-bind the connection process, it could be nil. 2011-07-24 Michael Albinus * tramp-sh.el (tramp-barf-unless-okay): Return the value of `tramp-send-command-and-check' if there is no error. (tramp-send-command-and-read): Suppress *all* errors if NOERROR. 2011-07-22 Michael Albinus * tramp.el (tramp-file-name-handler): Avoid recursive loading. (Bug#9114) 2011-07-14 Chong Yidong * tramp-cmds.el (tramp-append-tramp-buffers): Revert to using switch-to-buffer. * tramp-compat.el (tramp-compat-pop-to-buffer-same-window): Deleted. 2011-07-08 Michael Albinus * tramp-sh.el (tramp-sh-handle-start-file-process): Use a human-friendly prompt. 2011-07-06 Michael Albinus * tramp-compat.el (tramp-compat-pop-to-buffer-same-window): New defun. * tramp-cmds.el (tramp-append-tramp-buffers): Use it. 2011-07-05 Stefan Monnier * tramp-cmds.el (tramp-append-tramp-buffers): Fix some uses of switch-to-buffer. 2011-07-04 Michael Albinus * tramp-cmds.el (tramp-cleanup-this-connection): New command. * tramp-sh.el (tramp-color-escape-sequence-regexp): New defconst. (tramp-sh-handle-insert-directory, tramp-convert-file-attributes): Use it. (tramp-remote-path): Add "/bin" and "/usr/bin". On busyboxes, `tramp-default-remote-path' does not exist. (tramp-send-command-and-read): New optional argument NOERROR. (tramp-open-connection-setup-interactive-shell) (tramp-get-remote-path, tramp-get-remote-stat): Use it. (tramp-get-remote-readlink): Do not mask with `ignore-errors'. (tramp-process-sentinel): Flush also process' connection property. (tramp-sh-handle-start-file-process): Do not set process sentinel. It is done now ... (tramp-maybe-open-connection): ... here. (Bug#8929) 2011-07-01 Michael Albinus * tramp.el (tramp-encoding-command-interactive): New defcustom. * tramp-sh.el (tramp-maybe-open-connection): Use it. 2011-06-23 Michael Albinus * tramp-sh.el (tramp-method-out-of-band-p): Check, whether SIZE is a number. 2011-06-21 Michael Albinus * tramp-cache.el (top): Don't load the persistency file when "emacs -Q" has been called. 2011-06-11 Michael Albinus * tramp.el (tramp-debug-message): Add `tramp-with-progress-reporter' to ignored backtrace functions. 2011-06-04 Michael Albinus * tramp-sh.el (tramp-find-shell): Apply workaround also for "SunOS 5.10". 2011-06-02 Stefan Monnier * tramp.el (tramp-with-progress-reporter): Rename from with-progress-reporter. Use `declare'. * tramp-smb.el: * tramp-sh.el: * tramp-gvfs.el: Update all uses. 2011-06-04 Michael Albinus * tramp.el (tramp-set-completion-function, tramp-parse-rhosts) (tramp-parse-shosts, tramp-parse-sconfig, tramp-parse-shostkeys) (tramp-parse-hosts, tramp-parse-passwd, tramp-parse-netrc) (tramp-parse-putty): * tramp-sh.el (tramp-completion-function-alist-rsh) (tramp-completion-function-alist-ssh) (tramp-completion-function-alist-telnet) (tramp-completion-function-alist-su) (tramp-completion-function-alist-putty): Set `tramp-autoload' cookie. * tramp-efs.el: * tramp-ftp.el: * tramp-sh.el: * tramp-smb.el: Set `tramp-autoload' cookie, and eval after load "tramp.el" `tramp-set-completion-function'. 2011-05-23 Stefan Monnier * .el: Don't quote lambda expressions with `quote'. 2011-05-18 Michael Albinus * tramp.el (tramp-process-actions): Set "first-password-request" property for the correct connection in case of multihops. 2011-05-17 Michael Albinus * tramp.el (tramp-handle-insert-file-contents): Use "dd" instead of "head" and "tail". There were problems with SunOS 5.9, and it performs better. 2011-05-05 Michael Albinus * tramp-sh.el (tramp-do-copy-or-rename-file-out-of-band): Fix port computation bug. (Bug#8618) 2011-04-25 Michael Albinus * tramp.el (tramp-process-actions): Add POS argument. Delete region between POS and (pos). * tramp-sh.el (tramp-do-copy-or-rename-file-out-of-band): Use `nil' position in `tramp-process-actions' call. (tramp-maybe-open-connection): Call `tramp-process-actions' with pos. * tramp-smb.el (tramp-smb-maybe-open-connection): Use `nil' position in `tramp-process-actions' call. 2011-04-17 Michael Albinus * tramp-sh.el (tramp-sh-handle-file-attributes): Handle the case when the scripts fail. Use `tramp-do-file-attributes-with-ls' then. (tramp-do-copy-or-rename-file-out-of-band): Do not check any longer whether `executable-find' is bound. * tramp-smb.el (tramp-smb-handle-copy-file): Fix docstring. 2011-03-12 Michael Albinus Version 2.2.1 released. * tramp-sh.el (tramp-methods): Exchange "%k" marker with options. 2011-03-09 Michael Albinus * tramp-sh.el (tramp-do-copy-or-rename-file-out-of-band): Do not use `tramp-file-name-port', because this returns also `tramp-default-port'. 2011-03-06 Juanma Barranquero * tramp-cache.el: Don't set `kill-emacs-hook' on noninteractive sessions (bug#8137). 2011-02-28 Michael Albinus * tramp-cmds.el (tramp-append-tramp-buffers): Dump load-path shadows. 2011-02-22 Glenn Morris * tramp-gvfs.el: Fix spelling of "precede". 2011-02-21 Michael Albinus * tramp.el (tramp-rfn-eshadow-setup-minibuffer): Do not use `field' property of `rfn-eshadow-overlay'. 2011-02-13 Michael Albinus * Makefile.in: Remove tramp-imap.el. * tramp.el (tramp-read-passwd): Simplify `auth-source-search' call. * tramp-imap.el: Remove file. 2011-02-13 Teodor Zlatanov * tramp.el (tramp-default-method): Also check if `auth-source-search' is bound. (tramp-read-passwd): Use `auth-source-search' instead of `auto-source-user-or-password'. 2011-02-05 Michael Albinus * tramp-smb.el (tramp-smb-errors): Use `regexp-opt'. Add "NT_STATUS_IO_TIMEOUT" and "NT_STATUS_NO_SUCH_USER". 2011-02-03 Era Eriksson (tiny change) * tramp.el (tramp-postfix-method-format) (tramp-postfix-method-regexp, tramp-prefix-domain-format) (tramp-prefix-domain-regexp, tramp-postfix-user-format) (tramp-postfix-user-regexp, tramp-prefix-port-format) (tramp-prefix-port-regexp, tramp-postfix-host-format) (tramp-postfix-host-regexp, tramp-handle-substitute-in-file-name): Doc fix. 2011-02-03 Michael Albinus * tramp-sh.el (tramp-remote-path): Add default settings for `tramp-default-remote-path' to the docstring. (tramp-get-remote-path): Suppress error message when `getconf PATH' fails. * tramp-smb.el (tramp-smb-errors): Add "NT_STATUS_UNSUCCESSFUL". 2011-01-10 Michael Albinus * tramp.el (tramp-default-method): Initialize with pscp/plink only when running under W32. (tramp-debug-message): Extend function exclude list. Use `regexp-opt'. * tramp-sh.el (tramp-find-inline-compress) (tramp-get-inline-coding): Quote command after pipe symbol for local calls under W32. (Bug#6784) 2010-12-31 Michael Albinus * tramp-sh.el (tramp-methods): Add recursive options to "scpc" and "scpx". 2010-12-30 Michael Albinus * tramp.el (tramp-default-method-alist, tramp-default-user-alist) (tramp-local-host-regexp, tramp-prefix-domain-format) (tramp-prefix-domain-regexp): Set tramp-autoload cookie. * tramp-efs.el: * tramp-ftp.el: * tramp-gvfs.el: * tramp-gw.el: * tramp-imap.el: * tramp-sh.el: * tramp-smb.el: Add tramp-autoload cookie for initialisation code of `tramp-default-method-alist' and `tramp-default-user-alist'. 2010-12-27 Michael Albinus * Makefile.in (tramp-loaddefs.el): Handle case on systems on which the format of absolute pathes are different between its shell and in emacsen, like MSYS. Reported by Yosuke YAMADA . * tramp.el (tramp-default-user-alist): Do not add "ssh" based methods, otherwise ~/.ssh/config would be ignored. 2010-12-14 Michael Albinus * tramp-cache.el (tramp-persistency-file-name): Use `locate-user-emacs-file' if fboundp. 2010-12-10 Michael Albinus * tramp.el (tramp-action-password, tramp-process-actions): Revert patch from 2010-12-08. Use `save-restriction'. 2010-12-08 Michael Albinus * tramp.el (tramp-temp-buffer-file-name): Make it permanent-local. (tramp-handle-insert-file-contents): Do not set permanent-local property. (tramp-action-password): Delete region, do not narrow. (tramp-process-actions): Do not widen. * tramp-sh.el (tramp-handle-start-file-process): Protect buffer-modified value. (Bug#7557) 2010-12-03 Michael Albinus * tramp-sh.el (tramp-methods): Add "ksu". (tramp-default-user-alist): Add "ksu". Use `regexp-opt' for method list. 2010-12-01 Michael Albinus * tramp.el (tramp-debug-message): Extend function exclude list. * tramp-sh.el (tramp-methods): Add recursive options to "pscp" and "psftp". Exchange "%k" marker with options. (tramp-do-copy-or-rename-file, tramp-sh-handle-file-local-copy): Compute size of link target. (tramp-do-copy-or-rename-file-out-of-band). Move setting of `tramp-current-*' up due to gateway methods. Optimze computing of copy arguments. Use `tramp-get-connection-name' and `tramp-get-connection-buffer'. Improve debug messages. 2010-11-27 Michael Albinus * tramp.el (tramp-default-method-alist) (tramp-default-user-alist, tramp-default-proxies-alist): Adapt custom options type. (Bug#7445) (tramp-local-host-regexp): Add "localhost6". (tramp-file-name-port): Check also for `tramp-default-port'. (tramp-get-connection-name): New defun. (tramp-get-connection-process): Use it. (tramp-drop-volume-letter): Fix doc string. * tramp-cmds.el: Remove solved todo item. * tramp-efs.el: * tramp-ftp.el: * tramp-gvfs.el: * tramp-gw.el: * tramp-imap.el: * tramp-smb.el: Fix regexps added to `tramp-default-method-alist' and `tramp-default-user-alist', respectively. * tramp-gw.el (tramp-gw-open-connection): Use `tramp-get-connection-name' and `tramp-get-connection-buffer'. * tramp-imap.el (tramp-imap-make-iht): Use just `tramp-file-name-port'. * tramp-sh.el (tramp-compute-multi-hops): Remove port determination. (tramp-maybe-open-connection): Use `tramp-get-connection-name'. 2010-11-21 Michael Albinus * tramp.el (tramp-handle-insert-file-contents): Do not set `backup-by-copying-when-mismatch'. 2010-11-20 Michael Albinus Version 2.2.0 released. * tramp.el (tramp-handle-insert-file-contents): Don't use `file-remote-p' (due to compatibility). * tramp-sh.el (tramp-do-copy-or-rename-file-directly) (tramp-do-copy-or-rename-file-out-of-band): Use `ignore-errors'. 2010-11-13 Michael Albinus * tramp-compat.el (tramp-compat-line-beginning-position) (tramp-compat-line-end-position): Remove them. * tramp.el (tramp-parse-rhosts-group, tramp-parse-shosts-group) (tramp-parse-sconfig-group, tramp-parse-passwd-group) (tramp-parse-netrc-group, tramp-parse-putty-group) * tramp-cmds.el (tramp-append-tramp-buffers) * tramp-sh.el (tramp-do-file-attributes-with-ls) (tramp-sh-handle-file-selinux-context) (tramp-sh-handle-file-name-all-completions) (tramp-sh-handle-insert-directory) (tramp-sh-handle-expand-file-name, tramp-find-executable) (tramp-wait-for-output, tramp-send-command-and-read) * tramp-smb.el (tramp-smb-read-file-entry) (tramp-smb-get-cifs-capabilities) * tramp-util.el (tramp-PC-expand-many-files): Use `point-at-eol'. * tramp-sh.el (tramp-sh-handle-insert-directory) Use `point-at-bol'. (tramp-remote-coding-commands): Add an alternative using "base64 -d -i". This is needed for older base64 versions from GNU coreutils. Reported by Klaus Reichl . 2010-11-09 Michael Albinus * tramp.el (tramp-handle-insert-file-contents): Do not set `permanent-local' property for `backup-by-copying-when-mismatch'. 2010-10-30 Michael Albinus * tramp.el (tramp-handle-insert-file-contents): For root, preserve owner and group when editing files. (Bug#7289) 2010-10-28 Michael Albinus * Makefile.in (autoloads): Use $(builddir) prefix. 2010-10-21 Michael Albinus * Makefile.in (builddir): New variable, used instead of srcdir. (INSTALL_FILES, xemacs): Add tramp-loaddefs.el. (autoloads): Do not use $(srcdir) prefix. Reported by David Rothenberger . * tramp-sh.el (tramp-get-inline-coding): Return `nil' in case of errors. 2010-10-20 Michael Albinus * tramp-sh.el (tramp-send-command): Simplify last patch, and restrict it to here documents. 2010-10-19 Michael Albinus * tramp-sh.el (tramp-do-file-attributes-with-stat) (tramp-do-directory-files-and-attributes-with-stat): Use "e0" in order to make stat results a float. Patch by Andreas Schwab . (tramp-send-command): Unset $PS1 in a subshell, in order not to get several prompts when there are commands separated by ";". * tramp-util.el (tramp-advice-executable-find): Do not check for `tramp-fish-file-name-handler'. Use `tramp-sh-handle-executable-find'. (tramp-advice-process-file): Do not check for `tramp-fish-file-name-handler'. (tramp-advice-call-process-region): Do not check for `tramp-fish-file-name-handler'. Use `tramp-sh-handle-call-process-region. 2010-10-15 Michael Albinus * tramp-sh.el (tramp-open-connection-setup-interactive-shell): Suppress expansion of tabs to spaces. Reported by Dale Sedivec . 2010-10-06 Michael Albinus * tramp-sh.el (tramp-sh-file-name-handler-alist): Use `tramp-handle-find-backup-file-name'. 2010-10-05 Michael Albinus * tramp.el (tramp-handle-directory-files-and-attributes) (tramp-handle-file-exists-p, tramp-handle-file-newer-than-file-p): New defuns, taken from tramp-smb.el. (tramp-coding-system-change-eol-conversion) (tramp-set-process-query-on-exit-flag): Removed. * tramp-compat.el (top): Do not check for byte-compiler objects. (tramp-compat-coding-system-change-eol-conversion) (tramp-compat-set-process-query-on-exit-flag): New defuns, taken from tramp.el. * tramp-gvfs.el: * tramp-gw.el: Replace `tramp-set-process-query-on-exit-flag' by `tramp-compat-set-process-query-on-exit-flag'. * tramp-imap.el (tramp-imap-file-name-handler-alist): Use `tramp-handle-directory-files-and-attributes', `tramp-handle-file-exists-p' and `tramp-handle-file-newer-than-file-p'. (tramp-imap-handle-file-exists-p) (tramp-imap-handle-file-executable-p) (tramp-imap-handle-file-readable-p) (tramp-imap-handle-directory-files-and-attributes) (tramp-imap-handle-file-newer-than-file-p): Removed. * tramp-sh.el: Replace `tramp-set-process-query-on-exit-flag' by `tramp-compat-set-process-query-on-exit-flag' and `tramp-coding-system-change-eol-conversion' by `tramp-compat-coding-system-change-eol-conversion'. * tramp-smb.el (tramp-smb-file-name-handler-alist): Use `tramp-handle-directory-files-and-attributes', `tramp-handle-file-exists-p' and `tramp-handle-file-newer-than-file-p'. (tramp-smb-handle-directory-files-and-attributes) (tramp-smb-handle-file-exists-p) (tramp-smb-handle-file-newer-than-file-p): Removed. (tramp-smb-maybe-open-connection): Replace `tramp-set-process-query-on-exit-flag' by `tramp-compat-set-process-query-on-exit-flag'. 2010-10-04 Glenn Morris * tramp-compat.el: Don't mess about with the byte-compiler unless it is "necessary". 2010-10-04 Michael Albinus Continue reorganization of load dependencies. (Bug#7156) * tramp.el (tramp-handle-file-local-copy-hook) (tramp-delete-temp-file-function): Move down. (tramp-exists-file-name-handler): Move up. (tramp-register-file-name-handlers): Simplify autoload. (tramp-handle-write-region-hook, tramp-handle-directory-file-name) (tramp-handle-directory-files, tramp-handle-dired-uncache) (tramp-handle-file-modes, tramp-handle-file-name-as-directory) (tramp-handle-file-name-completion) (tramp-handle-file-name-directory) (tramp-handle-file-name-nondirectory, tramp-handle-file-regular-p) (tramp-handle-file-remote-p, tramp-handle-file-symlink-p) (tramp-handle-find-backup-file-name) (tramp-handle-insert-file-contents, tramp-handle-load) (tramp-handle-substitute-in-file-name) (tramp-handle-unhandled-file-name-directory) (tramp-mode-string-to-int, tramp-local-host-p) (tramp-make-tramp-temp-file): Moved from tramp-sh.el. * tramp-gvfs.el (top): * tramp-smb.el (top): Do not require 'tramp-sh. * tramp-sh.el (all): Move several objects to tramp.el, see there. Rename `tramp-handle-*' to `tramp-sh-handle-*'. * tramp-vc.el (tramp-vc-user-login-name, tramp-vc-file-owner): Use `file-attributes'. 2010-10-02 Michael Albinus * tramp.el (tramp-completion-reread-directory-timeout): Fix docstring. * tramp-cache.el (tramp-cache-inhibit-cache): Remove. (tramp-get-file-property): Replace `tramp-cache-inhibit-cache' by `remote-file-name-inhibit-cache'. Check also for an integer value. Add/increase counter when `tramp-verbose' >= 10. (tramp-set-file-property): Add/increase counter when `tramp-verbose' >= 10. * tramp-cmds.el (tramp-cleanup-all-connections) (tramp-cleanup-all-buffers): Set tramp-autoload cookie. (tramp-bug): Set tramp-autoload cookie. Report all interned tramp-* variables. Report also `remote-file-name-inhibit-cache'. (tramp-reporter-dump-variable): Fix docstring. Mask non-7bit characters only in strings. * tramp-compat.el (remote-file-name-inhibit-cache): Define due to backward compatibility. * tramp-sh.el (tramp-handle-verify-visited-file-modtime) (tramp-handle-file-name-all-completions) (tramp-handle-vc-registered): Use `remote-file-name-inhibit-cache'. (tramp-open-connection-setup-interactive-shell): Call `tramp-cleanup-connection' directly. 2010-09-17 Michael Albinus * tramp-compat.el (tramp-compat-with-temp-message): Make it a defmacro. 2010-09-16 Michael Albinus * Makefile.in (autoloads): Renamed from tramp-autoloads. (tramp-loaddefs.el): Revert check for XEmacs. * tramp-cmds.el (tramp-cleanup-connection): Set tramp-autoload cookie. 2010-09-15 Michael Albinus Ensure XEmacs compatibility. * Makefile.in (tramp-loaddefs.el): Adapt `autoload-trim-file-name' and feature name. (distclean): Remove trampver.el, it is handled by the upper Makefile. * tramp-compat.el (tramp-compat-with-temp-message) (tramp-compat-font-lock-add-keywords, tramp-compat-process-get) (tramp-compat-process-put): New defuns. * tramp.el (top): * tramp-gvfs.el (top): * tramp-cache.el (top): Use `tramp-compat-font-lock-add-keywords'. * tramp.el (tramp-progress-reporter-update): Use `tramp-compat-funcall'. * tramp.el (tramp-process-actions): * tramp-gvfs.el (tramp-handle-vc-registered): * tramp-sh.el (tramp-gvfs-handler-askquestion) (tramp-get-remote-stat, tramp-get-remote-readlink): Use `tramp-compat-with-temp-message'. * tramp-sh.el (top): Require 'cl. (tramp-handle-start-file-process): Use `tramp-compat-process-get'. (tramp-open-connection-setup-interactive-shell): Use `tramp-compat-process-put'. * tramp-util.el (top): Require 'tramp-sh. 2010-09-13 Michael Albinus Major code cleanup. Split tramp.el into tramp.el and tramp-sh.el. * Makefile.in (LISP_FILES): Remove tramp-fish.el. Add tramp-sh.el. * tramp.el (top): Don't show loading message. Require just 'tramp-compat, everything else is required there. Use `ignore-errors' where appropriate. (tramp-inline-compress-start-size, tramp-copy-size-limit) (tramp-terminal-type, tramp-end-of-output) (tramp-initial-end-of-output, tramp-completion-function-alist-rsh) (tramp-completion-function-alist-ssh) (tramp-completion-function-alist-telnet) (tramp-completion-function-alist-su) (tramp-completion-function-alist-putty, tramp-remote-path) (tramp-remote-process-environment, tramp-sh-extra-args) (tramp-actions-before-shell, tramp-uudecode) (tramp-perl-file-truename, tramp-perl-file-name-all-completions) (tramp-perl-file-attributes) (tramp-perl-directory-files-and-attributes) (tramp-perl-encode-with-module, tramp-perl-decode-with-module) (tramp-perl-encode, tramp-perl-decode) (tramp-vc-registered-read-file-names, tramp-file-mode-type-map) (tramp-file-name-handler-alist, tramp-make-tramp-temp-file) (tramp-handle-make-symbolic-link, tramp-handle-load) (tramp-handle-file-name-as-directory) (tramp-handle-file-name-directory) (tramp-handle-file-name-nondirectory, tramp-handle-file-truename) (tramp-handle-file-exists-p, tramp-handle-file-attributes) (tramp-do-file-attributes-with-ls) (tramp-do-file-attributes-with-perl) (tramp-do-file-attributes-with-stat) (tramp-handle-set-visited-file-modtime) (tramp-handle-verify-visited-file-modtime) (tramp-handle-set-file-modes, tramp-handle-set-file-times) (tramp-set-file-uid-gid, tramp-remote-selinux-p) (tramp-handle-file-selinux-context) (tramp-handle-set-file-selinux-context) (tramp-handle-file-executable-p, tramp-handle-file-readable-p) (tramp-handle-file-newer-than-file-p, tramp-handle-file-modes) (tramp-handle-file-directory-p, tramp-handle-file-regular-p) (tramp-handle-file-symlink-p, tramp-handle-file-writable-p) (tramp-handle-file-ownership-preserved-p) (tramp-handle-directory-file-name, tramp-handle-directory-files) (tramp-handle-directory-files-and-attributes) (tramp-do-directory-files-and-attributes-with-perl) (tramp-do-directory-files-and-attributes-with-stat) (tramp-handle-file-name-all-completions) (tramp-handle-file-name-completion, tramp-handle-add-name-to-file) (tramp-handle-copy-file, tramp-handle-copy-directory) (tramp-handle-rename-file, tramp-do-copy-or-rename-file) (tramp-do-copy-or-rename-file-via-buffer) (tramp-do-copy-or-rename-file-directly) (tramp-do-copy-or-rename-file-out-of-band) (tramp-handle-make-directory, tramp-handle-delete-directory) (tramp-handle-delete-file) (tramp-handle-dired-recursive-delete-directory) (tramp-handle-dired-compress-file, tramp-handle-dired-uncache) (tramp-handle-insert-directory) (tramp-handle-unhandled-file-name-directory) (tramp-handle-expand-file-name) (tramp-handle-substitute-in-file-name) (tramp-handle-executable-find, tramp-process-sentinel) (tramp-handle-start-file-process, tramp-handle-process-file) (tramp-handle-call-process-region, tramp-handle-shell-command) (tramp-handle-file-local-copy, tramp-handle-file-remote-p) (tramp-handle-insert-file-contents) (tramp-handle-insert-file-contents-literally) (tramp-handle-find-backup-file-name) (tramp-handle-make-auto-save-file-name, tramp-handle-write-region) (tramp-vc-registered-file-names, tramp-handle-vc-registered) (tramp-sh-file-name-handler, tramp-vc-file-name-handler) (tramp-maybe-send-script, tramp-set-auto-save, tramp-run-test) (tramp-run-test2, tramp-find-executable, tramp-set-remote-path) (tramp-find-file-exists-command, tramp-open-shell) (tramp-find-shell, tramp-barf-if-no-shell-prompt) (tramp-open-connection-setup-interactive-shell) (tramp-local-coding-commands, tramp-remote-coding-commands) (tramp-find-inline-encoding, tramp-call-local-coding-command) (tramp-inline-compress-commands, tramp-find-inline-compress) (tramp-compute-multi-hops, tramp-maybe-open-connection) (tramp-send-command , tramp-wait-for-output) (tramp-send-command-and-check, tramp-barf-unless-okay) (tramp-send-command-and-read, tramp-mode-string-to-int) (tramp-convert-file-attributes, tramp-check-cached-permissions) (tramp-file-mode-from-int, tramp-file-mode-permissions) (tramp-shell-case-fold, tramp-make-copy-program-file-name) (tramp-method-out-of-band-p, tramp-local-host-p) (tramp-get-remote-path, tramp-get-remote-tmpdir) (tramp-get-ls-command, tramp-get-ls-command-with-dired) (tramp-get-test-command, tramp-get-test-nt-command) (tramp-get-file-exists-command, tramp-get-remote-ln) (tramp-get-remote-perl, tramp-get-remote-stat) (tramp-get-remote-readlink, tramp-get-remote-trash) (tramp-get-remote-id, tramp-get-remote-uid, tramp-get-remote-gid) (tramp-get-local-uid, tramp-get-local-gid) (tramp-get-inline-compress, tramp-get-inline-coding, ): Move to tramp-sh.el. (tramp-methods, tramp-default-method-alist) (tramp-default-user-alist, tramp-foreign-file-name-handler-alist): Move initialization to tramp-sh.el. (tramp-temp-name-prefix): Make it a defconst. (tramp-dissect-file-name): Don't check anymore for multi-hop methods. (tramp-debug-outline-regexp): Add a docstring. (tramp-debug-outline-level): Renamed from `tramp-outline-level'. (tramp-get-debug-buffer): Use it. * tramp-cache.el (top): Set tramp-autoload cookie for initialization forms. (tramp-set-connection-property): Don't protect `tramp-message' call, it isn't necessary any longer. (tramp-dump-connection-properties): Use `ignore-errors'. * tramp-compat.el (top): Require 'advice, 'format-spec, 'password-cache and 'auth-source. * tramp-gvfs.el (top): * tramp-smb.el (top): Require 'tramp-sh. * tramp-gw.el (tramp-gw-open-network-stream): Use `ignore-errors'. * tramp-sh.el: New file, derived from tramp.el. (top): Initialize `tramp-methods', `tramp-default-method-alist', `tramp-default-user-alist', `tramp-foreign-file-name-handler-alist'. Remove "scp1_old", "scp2_old", "ssh1_old", "ssh2_old". Use `ignore-errors' where appropriate. (tramp-sh-file-name-handler-alist): Renamed from `tramp-file-name-handler-alist'. (tramp-send-command-and-check): Return t or nil. Remove all `zerop' checks, where called. (tramp-handle-set-file-modes) (tramp-do-copy-or-rename-file-directly) (tramp-handle-delete-directory, tramp-handle-delete-file) (tramp-maybe-send-script, ): Use `tramp-barf-unless-okay'. (tramp-sh-file-name-handler, tramp-send-command-and-check) (tramp-get-remote-ln): Set tramp-autoload cookie. * tramp-fish.el: Remove file. 2010-09-09 Michael Albinus * tramp-cache.el (tramp-parse-connection-properties): Set tramp-autoload cookie. 2010-09-08 Michael Albinus Rearrange load dependencies. (Bug#1529, Bug#5448, Bug#5705) * Makefile.in (tramp-bug-report-address): New variable. (EVAL): Remove variable. (EM): Adapt variable. (tramp-autoloads, tramp-loaddefs.el): New entries (all): Depend on tramp-autoloads. (%.elc): Change call of $(EM). (distclean): Remove also trampver.el and tramp-loaddefs.el. * tramp.el (top): Remove all other tramp-* loads except tramp-compat.el. Remove all changes to tramp-unload-hook for other tramp-* packages. Rearrange defun order. Change calls of `tramp-compat-call-process', `tramp-compat-decimal-to-octal', `tramp-compat-octal-to-decimal' to new function names. (tramp-terminal-type, tramp-initial-end-of-output) (tramp-methods, tramp-foreign-file-name-handler-alist) (tramp-tramp-file-p, tramp-completion-mode-p) (tramp-send-command-and-check, tramp-get-remote-path) (tramp-get-remote-tmpdir, tramp-get-remote-ln) (tramp-shell-quote-argument): Set tramp-autoload cookie. (with-file-property, with-connection-property): Move to tramp-cache.el. (tramp-local-call-process, tramp-decimal-to-octal) (tramp-octal-to-decimal): Move to tramp-compat.el. (tramp-handle-shell-command): Do not require 'shell. (tramp-compute-multi-hops): No special handling for tramp-gw-* symbols. (tramp-unload-tramp): Do not call `tramp-unload-file-name-handlers'. * tramp-cache.el (top): Require 'tramp. Add to `tramp-unload-hook'. (tramp-cache-data, tramp-get-file-property) (tramp-set-file-property, tramp-flush-file-property) (tramp-flush-directory-property, tramp-get-connection-property) (tramp-set-connection-property, tramp-flush-connection-property) (tramp-cache-print, tramp-list-connections): Set tramp-autoload cookie. (with-file-property, with-connection-property): New defuns, moved from tramp.el. (tramp-flush-file-function): Use `with-parsed-tramp-file-name' macro. * tramp-cmds.el (top): Add to `tramp-unload-hook'. (tramp-version): Set tramp-autoload cookie. * tramp-compat.el (top): Require 'tramp-loaddefs. Remove all changes to tramp-unload-hook for other tramp-* packages. Add to `tramp-unload-hook'. (tramp-compat-decimal-to-octal, tramp-compat-octal-to-decimal) (tramp-compat-call-process): New defuns, moved from tramp.el. * tramp-efs.el (top) Add objects to `tramp-methods' and `tramp-foreign-file-name-handler-alist'. Add to `tramp-unload-hook'. (tramp-efs-method): Make it a defconst. (tramp-efs-file-name-p): Make it a defsubst. (tramp-efs-method, tramp-efs-file-name-handler) (tramp-efs-file-name-p): Set tramp-autoload cookie. * tramp-fish.el (top) Require just 'tramp. Add objects to `tramp-methods' and `tramp-foreign-file-name-handler-alist'. Add to `tramp-unload-hook'. Change call of `tramp-compat-decimal-to-octal' to new function name. (tramp-fish-method): Make it a defconst. (tramp-fish-file-name-p): Make it a defsubst. (tramp-fish-method, tramp-fish-file-name-handler) (tramp-fish-file-name-p): Set tramp-autoload cookie. * tramp-ftp.el (top) Add objects to `tramp-methods' and `tramp-foreign-file-name-handler-alist'. Add to `tramp-unload-hook'. (tramp-ftp-method): Make it a defconst. (tramp-ftp-file-name-p): Make it a defsubst. (tramp-ftp-method, tramp-ftp-file-name-handler) (tramp-ftp-file-name-p): Set tramp-autoload cookie. * tramp-gvfs.el (top) Add objects to `tramp-methods' and `tramp-foreign-file-name-handler-alist'. Add to `tramp-unload-hook'. Change checks, whether package can be loaded. (tramp-gvfs-file-name-p): Make it a defsubst. (tramp-gvfs-methods, tramp-gvfs-file-name-handler) (tramp-gvfs-file-name-p): Set tramp-autoload cookie. (tramp-gvfs-handle-file-directory-p): New defun. (tramp-gvfs-file-name-handler-alist): Use it. * tramp-gw.el (top) Add objects to `tramp-methods' and `tramp-foreign-file-name-handler-alist'. Add to `tramp-unload-hook'. (tramp-gw-tunnel-method, tramp-gw-default-tunnel-port) (tramp-gw-socks-method, tramp-gw-default-socks-port): Make it a defconst. (tramp-gw-tunnel-method, tramp-gw-socks-method) (tramp-gw-open-connection): Set tramp-autoload cookie. * tramp-imap.el (top) Require just 'tramp. Add objects to `tramp-methods' and `tramp-foreign-file-name-handler-alist'. Add to `tramp-unload-hook'. Change checks, whether package can be loaded. (tramp-imap-file-name-p): Make it a defsubst. (tramp-imap-method, tramp-imaps-method) (tramp-imap-file-name-handler) (tramp-imap-file-name-p): Set tramp-autoload cookie. * tramp-smb.el (top) Require just 'tramp. Add objects to `tramp-methods' and `tramp-foreign-file-name-handler-alist'. Add to `tramp-unload-hook'. Change checks, whether package can be loaded. Change call of `tramp-compat-decimal-to-octal' to new function name. (tramp-smb-tunnel-method): Make it a defconst. (tramp-smb-file-name-p): Make it a defsubst. (tramp-smb-method, tramp-smb-file-name-handler) (tramp-smb-file-name-p): Set tramp-autoload cookie. * tramp-util.el (top) Require just 'tramp. Add to `tramp-unload-hook'. * tramp-uu.el (top) Add to `tramp-unload-hook'. (tramp-uuencode-region): Set tramp-autoload cookie. * tramp-vc.el (top) Require just 'tramp. Add to `tramp-unload-hook'. * trampver.el.in (top) Add to `tramp-unload-hook'. (tramp-version, tramp-bug-report-address): Set tramp-autoload cookie. * .cvsignore: Add tramp-loaddefs.el. 2010-08-23 Michael Albinus Version 2.1.19 released. 2010-08-17 Michael Albinus * tramp.el (tramp-handle-make-symbolic-link): Flush file properties. (tramp-handle-process-file): Call the program in a subshell, in order to preserve working directory. (tramp-action-password): Hide password prompt before next run. (tramp-process-actions): Widen connection buffer for the trace. 2010-08-10 Michael Albinus * tramp.el (tramp-vc-registered-read-file-names): Read input as here-document, otherwise the command could exceed maximum length of command line. (tramp-handle-vc-registered): Call script accordingly. Reported by Toru TSUNEYOSHI . 2010-08-06 Michael Albinus * tramp.el (tramp-handle-start-file-process ): Set connection property "vec". (tramp-process-sentinel): Use it for flushing the cache. We cannot do it via the process buffer, the buffer could be deleted already when running the sentinel. 2010-08-05 Michael Albinus * tramp.el (tramp-handle-dired-uncache): Flush directory cache, not only file cache. (tramp-process-sentinel): New defun. (tramp-handle-start-file-process): Use it, in order to invalidate file caches. 2010-07-29 Michael Albinus * tramp.el (tramp-handle-start-file-process): Check only for `remote-tty' process property. (tramp-open-shell): Don't check for tty. (tramp-open-connection-setup-interactive-shell): Set `remote-tty' process property. 2010-07-28 Michael Albinus * tramp.el (tramp-methods): Move hostname to the end in all ssh `tramp-login-args'. (tramp-verbose): Describe verbose level 9. (tramp-open-shell): Check for tty if `tramp-verbose' >= 9. (tramp-open-connection-setup-interactive-shell): Trace stty settings if `tramp-verbose' >= 9. (tramp-handle-start-file-process): Implement tty setting. (Bug#4604, Bug#6360) * tramp-cmds.el (tramp-bug): Recommend setting of `tramp-verbose' to 9. 2010-07-23 Michael Albinus * tramp.el (tramp-methods): Move hostname to the end in all plink `tramp-login-args'. (tramp-file-name-regexp-unified) (tramp-completion-file-name-regexp-unified): On W32 systems, do not regard the volume letter as remote filename. (Bug#5447) (tramp-open-shell): New defun. (tramp-find-shell, tramp-open-connection-setup-interactive-shell): Use it. 2010-07-21 Michael Albinus * tramp.el (tramp-get-ls-command) (tramp-get-ls-command-with-dired): Run tests on "/dev/null" instead of "/". 2010-07-20 Michael Albinus * tramp.el (tramp-file-name-handler): Trace 'quit. (tramp-open-connection-setup-interactive-shell): Apply workaround for IRIX64 bug. Move argument of last `tramp-send-command' where it belongs to. 2010-07-20 Michael Albinus * tramp.el (tramp-perl-file-attributes) (tramp-perl-directory-files-and-attributes): Don't pass "$3". (tramp-maybe-open-connection): Use `async-args' and `gw-args' in front of `login-args'. 2010-07-17 Michael Albinus * tramp.el (tramp-get-ls-command-with-dired): Make test for "--dired" stronger. 2010-07-16 Michael Albinus * tramp.el (tramp-handle-shell-command): Don't use hard-wired "/bin/sh" but `tramp-remote-sh' from `tramp-methods'. (tramp-find-shell): Simplify setting connection property. (tramp-get-ls-command): Make test for "--color=never" stronger. 2010-07-11 Magnus Henoch * tramp-gvfs.el (tramp-gvfs-handle-copy-file): Do not pass empty argument to gvfs-copy. 2010-06-12 Michael Albinus * tramp.el (tramp-remote-process-environment): Protect version string by apostroph. (tramp-shell-prompt-pattern): Do not use a shy group in case of XEmacs. (tramp-file-name-for-operation): Add `call-process-region'. (tramp-set-process-query-on-exit-flag): Fix wrong parentheses. * tramp-compat.el (top): Do not autoload `tramp-handle-file-remote-p'. Load tramp-util.el and tramp-vc.el only when `start-file-process' is not bound. (tramp-advice-file-expand-wildcards): Do not use `tramp-handle-file-remote-p'. (tramp-compat-make-temp-file): Handle the case, that `make-temp-file' has no third argument EXTENSION. * tramp-util.el (top): Apply advices only when there are no file name handlers for `start-file-process' and `process-file'. 2010-06-04 Michael Albinus * tramp-gvfs.el (tramp-gvfs-handle-expand-file-name): Expand "~/". (tramp-gvfs-handler-mounted-unmounted) (tramp-gvfs-connection-mounted-p): Handle default-location. * tramp-smb.el (tramp-smb-handle-delete-directory): Don't try to move files to trash. 2010-06-02 Michael Albinus * tramp-gvfs.el (top): Require url-util. (tramp-gvfs-mount-point): Removed. (tramp-gvfs-stringify-dbus-message, tramp-gvfs-send-command): New defuns. (with-tramp-dbus-call-method): Format trace message. (tramp-gvfs-handle-copy-file, tramp-gvfs-handle-rename-file): Implement backup call when operation on local files fails. Use progress reporter. Flush properties of changed files. (tramp-gvfs-handle-make-directory): Make more traces. (tramp-gvfs-url-file-name): Hexify file name in url. (tramp-gvfs-fuse-file-name): Take also prefix (like dav shares) into account for the resulting file name. (tramp-gvfs-handler-askquestion): Return dummy mountpoint, when the answer is "no". See `tramp-gvfs-maybe-open-connection'. (tramp-gvfs-handler-mounted-unmounted) (tramp-gvfs-connection-mounted-p): Test also for new mountspec attribute "default_location". Set "prefix" property. (tramp-gvfs-mount-spec): Return both prefix and mountspec. (tramp-gvfs-maybe-open-connection): Test, whether mountpoint exists. Raise an error, if not (due to a corresponding answer "no" in interactive questions, for example). 2010-05-28 Michael Albinus * tramp.el (tramp-debug-message): Add `tramp-compat-funcall' to ignored backtrace functions. (with-progress-reporter): Expand docstring. (tramp-handle-delete-file): Implement TRASH argument. (tramp-get-remote-trash): New defun. 2010-05-28 Michael Albinus * tramp-compat.el (tramp-compat-delete-file): Use `symbol-value' for backward compatibility. * tramp.el (tramp-handle-make-symbolic-link, tramp-handle-load) (tramp-do-copy-or-rename-file-via-buffer) (tramp-do-copy-or-rename-file-directly) (tramp-do-copy-or-rename-file-out-of-band) (tramp-handle-process-file, tramp-handle-call-process-region) (tramp-handle-shell-command, tramp-handle-file-local-copy) (tramp-handle-insert-file-contents, tramp-handle-write-region) (tramp-delete-temp-file-function): Use `delete-file' instead of `tramp-compat-delete-file'. * tramp-fish.el (tramp-fish-handle-delete-directory) (tramp-fish-handle-make-symbolic-link) (tramp-fish-handle-process-file): Use `delete-file' instead of `tramp-compat-delete-file'. * tramp-ftp.el (tramp-ftp-file-name-handler): Use `delete-file' instead of `tramp-compat-delete-file'. * tramp-gvfs.el (tramp-gvfs-handle-delete-file): Rename arg. (tramp-gvfs-handle-write-region): Use `delete-file' instead of `tramp-compat-delete-file'. * tramp-imap.el (tramp-imap-do-copy-or-rename-file): Use `delete-file' instead of `tramp-compat-delete-file'. * tramp-smb.el (tramp-smb-handle-copy-file) (tramp-smb-handle-file-local-copy, tramp-smb-handle-rename-file) (tramp-smb-handle-write-region): Use `delete-file' instead of `tramp-compat-delete-file'. (tramp-smb-handle-delete-directory): Use 'trash as arg. * tramp-vc.el (tramp-vc-user-login-name): Use `delete-file' instead of `tramp-compat-delete-file'. 2010-05-27 Chong Yidong * tramp-compat.el (tramp-compat-delete-file): Rewrite to handle new TRASH arg of `delete-file'. * tramp.el (tramp-handle-delete-file): Change FORCE arg to TRASH. (tramp-handle-make-symbolic-link, tramp-handle-load) (tramp-do-copy-or-rename-file-via-buffer) (tramp-do-copy-or-rename-file-directly) (tramp-do-copy-or-rename-file-out-of-band) (tramp-handle-process-file, tramp-handle-call-process-region) (tramp-handle-shell-command, tramp-handle-file-local-copy) (tramp-handle-insert-file-contents, tramp-handle-write-region) (tramp-delete-temp-file-function): Use null TRASH arg in tramp-compat-delete-file call. * tramp-fish.el (tramp-fish-handle-delete-directory) (tramp-fish-handle-delete-file) (tramp-fish-handle-make-symbolic-link) (tramp-fish-handle-process-file): Use null TRASH arg in `tramp-compat-delete-file' call. * tramp-ftp.el (tramp-ftp-file-name-handler): Use null TRASH arg in `tramp-compat-delete-file' call. * tramp-gvfs.el (tramp-gvfs-handle-delete-file): Rename arg. (tramp-gvfs-handle-write-region): Use null TRASH arg in `tramp-compat-delete-file' call. * tramp-imap.el (tramp-imap-handle-delete-file): Rename arg. (tramp-imap-do-copy-or-rename-file): Use null TRASH arg in `tramp-compat-delete-file' call. * tramp-smb.el (tramp-smb-handle-copy-file) (tramp-smb-handle-file-local-copy, tramp-smb-handle-rename-file) (tramp-smb-handle-write-region): Use null TRASH arg in tramp-compat-delete-file call. (tramp-smb-handle-delete-directory): Use tramp-compat-delete-file. (tramp-smb-handle-delete-file): Rename arg. 2010-05-25 Christian Lynbech (tiny change) * tramp.el (tramp-handle-insert-directory): Don't use `forward-word', it's default syntax could be changed. 2010-05-25 Michael Albinus * tramp.el (tramp-progress-reporter-update): New defun. (with-progress-reporter): Use it. (tramp-process-actions): * tramp-gvfs.el (tramp-gvfs-handler-askquestion): Preserve current message, in order to let progress reporter continue afterwards. (Bug#6257) 2010-05-21 Michael Albinus * tramp.el (tramp-do-copy-or-rename-file) (tramp-handle-file-local-copy, tramp-maybe-open-connection): Tune `with-progress-reporter' messages. (tramp-handle-vc-registered): * tramp-fish.el (tramp-fish-handle-file-local-copy) (tramp-fish-handle-insert-file-contents) (tramp-fish-maybe-open-connection): * tramp-gvfs.el (tramp-gvfs-maybe-open-connection): * tramp-imap.el (tramp-imap-do-copy-or-rename-file) (tramp-imap-handle-insert-file-contents) (tramp-imap-handle-file-local-copy): Use `with-progress-reporter'. 2010-05-19 Michael Albinus * tramp.el (tramp-methods): Add `tramp-async-args' attribute where appropriate. (tramp-maybe-open-connection): Use it. 2010-05-13 Michael Albinus * tramp.el (with-progress-reporter): Create reporter object only when the message would be displayed. Handle nested calls. (tramp-handle-load, tramp-handle-file-local-copy) (tramp-handle-insert-file-contents, tramp-handle-write-region) (tramp-maybe-send-script, tramp-find-shell): Use `with-progress-reporter'. (tramp-handle-dired-compress-file, tramp-maybe-open-connection): Fix message text. * tramp-smb.el (tramp-smb-handle-copy-file) (tramp-smb-handle-file-local-copy, tramp-smb-handle-rename-file) (tramp-smb-handle-write-region, tramp-smb-maybe-open-connection): Use `with-progress-reporter'. 2010-05-10 Michael Albinus * tramp.el (tramp-do-file-attributes-with-stat): Add space in format string, in order to work around a bug in pdksh. Reported by Gilles Pion . (tramp-handle-verify-visited-file-modtime): Do not send a command when the connection is not established. (tramp-handle-set-file-times): Simplify the check for utc. 2010-05-09 Michael Albinus * tramp-compat.el (byte-compile-not-obsolete-vars): Define if not bound. (tramp-compat-copy-file): Add PRESERVE-SELINUX-CONTEXT. (tramp-compat-funcall): New defmacro. (tramp-compat-line-beginning-position) (tramp-compat-line-end-position) (tramp-compat-temporary-file-directory) (tramp-compat-make-temp-file, tramp-compat-file-attributes) (tramp-compat-copy-file, tramp-compat-copy-directory) (tramp-compat-delete-file, tramp-compat-delete-directory) (tramp-compat-number-sequence, tramp-compat-process-running-p) * tramp.el (top, with-progress-reporter) (tramp-rfn-eshadow-setup-minibuffer) (tramp-rfn-eshadow-update-overlay, tramp-handle-set-file-times) (tramp-handle-dired-compress-file, tramp-handle-shell-command) (tramp-completion-mode-p, tramp-check-for-regexp) (tramp-open-connection-setup-interactive-shell) (tramp-compute-multi-hops, tramp-read-passwd, tramp-clear-passwd) (tramp-time-diff, tramp-coding-system-change-eol-conversion) (tramp-set-process-query-on-exit-flag, tramp-unload-tramp) * tramp-cmds.el (tramp-cleanup-all-connections) (tramp-reporter-dump-variable, tramp-load-report-modules) (tramp-append-tramp-buffers) * tramp-gvfs.el (tramp-gvfs-handle-file-selinux-context) * tramp-util.el (tramp-gud-file-name): Use it. * tramp-imap.el (top): Autoload `epg-make-context'. 2010-05-06 Michael Albinus * tramp.el (top, with-progress-reporter): Use `symbol-function' inside `funcall'. * tramp-compat.el (tramp-compat-file-attributes) (tramp-compat-delete-file, tramp-compat-delete-directory): Handle only `wrong-number-of-arguments' error. * tramp-gvfs.el (tramp-gvfs-handle-copy-file): Fix typo. (tramp-gvfs-handle-file-selinux-context): Use `symbol-function' inside `funcall'. 2010-05-05 Michael Albinus Add FORCE argument to `delete-file'. * tramp-compat.el (tramp-compat-delete-file): New defun. * tramp.el (tramp-handle-delete-file): Add FORCE arg. (tramp-handle-make-symbolic-link, tramp-handle-load) (tramp-do-copy-or-rename-file-via-buffer) (tramp-do-copy-or-rename-file-directly) (tramp-do-copy-or-rename-file-out-of-band) (tramp-handle-process-file, tramp-handle-call-process-region) (tramp-handle-shell-command, tramp-handle-file-local-copy) (tramp-handle-insert-file-contents, tramp-handle-write-region) (tramp-delete-temp-file-function): Use `tramp-compat-delete-file'. * tramp-fish.el (tramp-fish-handle-delete-file): Add FORCE arg. (tramp-fish-handle-make-symbolic-link) (tramp-fish-handle-process-file): Use `tramp-compat-delete-file'. * tramp-ftp.el (tramp-ftp-file-name-handler): Use `tramp-compat-delete-file'. * tramp-gvfs.el (tramp-gvfs-handle-delete-file): Add FORCE arg. (tramp-gvfs-handle-write-region): Use `tramp-compat-delete-file'. * tramp-imap.el (tramp-imap-handle-delete-file): Add FORCE arg. (tramp-imap-do-copy-or-rename-file): Use `tramp-compat-delete-file'. * tramp-smb.el (tramp-smb-handle-delete-file): Add FORCE arg. (tramp-smb-handle-copy-file, tramp-smb-handle-file-local-copy) (tramp-smb-handle-rename-file, tramp-smb-handle-write-region): Use `tramp-compat-delete-file'. * tramp-vc.el (tramp-vc-user-login-name): Use `tramp-compat-delete-file'. 2010-05-04 Michael Albinus * tramp.el (tramp-methods): Remove "-q" from `tramp-login-args' in order to see error messages for failed logins. 2010-05-01 Toru TSUNEYOSHI Michael Albinus Implement compression for inline methods. * tramp.el (tramp-inline-compress-start-size): New defcustom. (tramp-copy-size-limit): Allow also nil. (tramp-inline-compress-commands): New defconst. (tramp-find-inline-compress, tramp-get-inline-compress) (tramp-get-inline-coding): New defuns. (tramp-get-remote-coding, tramp-get-local-coding): Removed, replaced by `tramp-get-inline-coding'. (tramp-handle-file-local-copy, tramp-handle-write-region) (tramp-method-out-of-band-p): Use `tramp-get-inline-coding'. 2010-04-28 Michael Albinus * tramp.el (tramp-remote-selinux-p): New defun. (tramp-handle-file-selinux-context) (tramp-handle-set-file-selinux-context): Use it. 2010-04-23 Michael Albinus Implement SELINUX backends. * tramp.el (tramp-file-name-handler-alist): Add `file-selinux-context' and `set-file-selinux-context'. (tramp-handle-file-selinux-context) (tramp-handle-set-file-selinux-context): New defuns. (tramp-handle-copy-file, tramp-do-copy-or-rename-file): Handle PRESERVE-SELINUX-CONTEXT. * tramp-gvfs.el (tramp-gvfs-file-name-handler-alist): Add `file-selinux-context' and `set-file-selinux-context'. (tramp-gvfs-handle-file-selinux-context) (tramp-gvfs-handle-set-file-selinux-context): New defuns. (tramp-gvfs-handle-copy-file): Handle PRESERVE-SELINUX-CONTEXT. * tramp-fish.el (tramp-fish-handle-copy-file): * tramp-imap.el (tramp-imap-handle-copy-file): * tramp-smb.el (tramp-smb-handle-copy-file): Add PRESERVE-SELINUX-CONTEXT. 2010-04-22 Noah Lavine (tiny change) Detect ssh 'ControlMaster' argument automatically in some cases. * tramp.el (tramp-detect-ssh-controlmaster): New defun. (tramp-default-method): Use it. 2010-04-22 Michael Albinus * tramp.el (tramp-error-with-buffer): Don't show the connection buffer when we are in completion mode. (with-connection-property, tramp-completion-mode-p) (tramp-action-process-alive, tramp-action-out-of-band) (tramp-check-for-regexp, tramp-file-name-p, tramp-equal-remote) (tramp-exists-file-name-handler): Fix docstring. (with-progress-reporter): New defmacro. (tramp-do-copy-or-rename-file, tramp-handle-dired-compress-file) (tramp-maybe-open-connection): Use it. (tramp-handle-copy-file): Add new optional parameter `preserve-selinux-context'. (tramp-file-name-for-operation): Add `set-file-selinux-context'. (tramp-connectable-p): New defun. (tramp-handle-expand-file-name) (tramp-completion-handle-file-name-all-completions) (tramp-completion-handle-file-name-completion): Use it. (tramp-file-name-handler): Catch the error for some operations when we are in completion mode. This gives the user the chance to correct the file name in the minibuffer. (tramp-completion-mode-p): Use `non-essential'. 2010-04-21 Karel Klíč * tramp.el (tramp-file-name-for-operation): Add file-selinux-context. 2010-04-10 Michael Albinus * tramp.el (tramp-do-copy-or-rename-file): Add progress reporter. 2010-03-19 Michael Albinus Discard GNU Emacs 21 compatibility. * tramp.el (tramp-handle-directory-files-and-attributes) (tramp-get-remote-path): Use `copy-tree'. (tramp-set-auto-save-file-modes): Adapt version check. * tramp-compat.el (tramp-advice-file-expand-wildcards): No need to protect `featurep' call anymore. (tramp-compat-make-temp-file): Simplify fallback implementation. (tramp-compat-copy-tree): Remove function. * tramp-fish.el (tramp-fish-handle-directory-files-and-attributes): Use `tramp-compat-file-attributes'. * tramp-util.el (tramp-advice-dired-insert-directory): Remove advice. 2010-03-18 Michael Albinus * tramp.el (tramp-do-copy-or-rename-file-out-of-band) (tramp-compute-multi-hops, tramp-maybe-open-connection): Use `format-spec-make'. (tramp-debug-outline-regexp): New defconst. (tramp-get-debug-buffer): Use it. 2010-03-15 Michael Albinus * tramp.el (tramp-do-copy-or-rename-file-out-of-band): Use `tramp-compat-delete-directory'. * tramp-compat.el (tramp-compat-delete-directory): Provide implementation for older Emacsen. 2010-03-14 Chong Yidong * tramp.el (tramp): Put in comm group. * tramp-imap.el (tramp-imap): Put in tramp group. 2010-03-14 Michael Albinus Version 2.1.18 released. * tramp.el (tramp-do-copy-or-rename-file-out-of-band): Make call of `delete-directory' backwards compatible. 2010-03-13 Michael Albinus * tramp.el (tramp-find-executable): Use `tramp-get-connection-buffer'. Make the regexp for checking output of "wc -l" more robust. (tramp-find-shell): Use another shell but /bin/sh on OpenSolaris. (tramp-open-connection-setup-interactive-shell): Remove workaround for OpenSolaris bug, it is not needed anymore. 2010-03-02 Michael Albinus * tramp.el (tramp-do-copy-or-rename-file-out-of-band): Fix an error when FILENAME and NEWNAME are existing remote directories. * tramp-compat.el (tramp-compat-make-temp-file): Add optional parameter DIR-FLAG. 2010-02-28 Michael Albinus * tramp.el (tramp-handle-write-region): START can be a string. Take care in the checks. Reported by Dan Davison . 2010-02-22 Michael Albinus * tramp.el (tramp-do-copy-or-rename-file-out-of-band): Protect setting the modes by `ignore-errors'. It might fail, for example if the file is not owned by the user but the group. (tramp-handle-write-region): Ensure that `tmpfile' is always readable. 2010-02-18 Michael Albinus * tramp.el (tramp-handle-directory-files): When FULL, do not expand "." and "..". Reported by Thierry Volpiatto . 2010-02-17 Michael Albinus * tramp.el (tramp-handle-insert-file-contents): Set always the permissions of the temporary file to "0600". In case the remote file has no read permissions for the owner, there might be problems otherwise. Reported by Ole Laursen . 2010-02-16 Michael Albinus * tramp.el (tramp-do-copy-or-rename-file-out-of-band): Fix errors in copying directories. (tramp-handle-add-name-to-file, tramp-handle-copy-directory) (tramp-do-copy-or-rename-file, tramp-handle-delete-directory) (tramp-handle-delete-file) (tramp-handle-dired-recursive-delete-directory) (tramp-handle-write-region): Flush also the cache for the upper directory. 2010-02-15 Michael Albinus * tramp.el (tramp-process-actions, tramp-read-passwd): * tramp-gvfs.el (tramp-gvfs-maybe-open-connection): Use VEC instead of PROC for caching "first-password-request". Otherwise, new processes would not profit from passwords already entered. * tramp-cache.el (tramp-dump-connection-properties): Don't save "first-password-request" property. 2010-02-05 Michael Albinus * tramp-imap.el (tramp-imap-handle-insert-directory): * tramp-smb.el (tramp-smb-handle-insert-directory): Handle also directories. (Bug#5478) 2010-02-04 Michael Albinus * tramp.el (tramp-handle-dired-uncache): When DIR is not a directory, handle its directory component. (tramp-handle-file-remote-p): Let-bind `tramp-verbose' to 3; this function is called permanently and creates noise, otherwise. * tramp-imap.el (tramp-imap-handle-insert-directory): * tramp-smb.el (tramp-smb-handle-insert-directory): Handle the case, FILENAME is not in `default-directory'. (Bug#5478) 2010-01-29 Michael Albinus * tramp.el (tramp-handle-insert-directory): Handle also symlinks, when FILENAME is not in `default-directory'. 2010-01-28 Michael Albinus * tramp.el (tramp-handle-insert-directory): Handle the case, FILENAME is not in `default-directory'. (Bug#5478) (tramp-register-file-name-handlers): Add safe-magic property. 2010-01-27 Michael Albinus * tramp.el (tramp-remote-process-environment): Use `format' instead of `concat'. (tramp-check-for-regexp): Use (forward-line 1). (tramp-open-connection-setup-interactive-shell): Handle "=" in variable values properly. (tramp-find-inline-encoding): Raise an error when no encoding is found. (tramp-wait-for-output): Remove spurious " ^H" sequences, sent by busybox. (tramp-get-ls-command): Suppress coloring, if possible. 2010-01-23 Michael Albinus * tramp.el (tramp-completion-function-alist) (tramp-file-name-regexp, tramp-chunksize) (tramp-local-coding-commands, tramp-remote-coding-commands): Fix docstring. (tramp-do-copy-or-rename-file-directly): Do not use `tramp-handle-file-remote-p'. (tramp-find-foreign-file-name-handler) (tramp-advice-make-auto-save-file-name) (tramp-set-auto-save-file-modes): Remove superfluous check for `stringp'. This is done inside `tramp-tramp-file-p'. (tramp-find-foreign-file-name-handler) (tramp-advice-make-auto-save-file-name) (tramp-set-auto-save-file-modes): Remove superfluous check for `stringp'. This is done inside `tramp-tramp-file-p'. * tramp-fish.el (tramp-fish-handle-directory-files-and-attributes): Do not use `tramp-fish-handle-file-attributes. * tramp-smb.el (tramp-smb-conf): New defcustom. (tramp-smb-maybe-open-connection): Use it. 2010-01-22 Michael Albinus * tramp-imap.el (top): Autoload needed packages. (Bug#5448) 2010-01-19 Michael Albinus * tramp.el (tramp-wrong-passwd-regexp): Add "Timeout, server not responding." string. 2010-01-18 Juanma Barranquero * tramp.el (tramp-remote-coding-commands): Fix typo in docstring. 2010-01-12 Michael Albinus * tramp.el (tramp-perl-encode, tramp-perl-decode): Update copyrights for 2010. (tramp-handle-insert-directory): Simplify handling of SWITCHES. (tramp-wait-for-output): Check, whether PROC buffer is available. * tramp-compat.el (tramp-advice-file-expand-wildcards): Wrap call of `featurep' for 2nd argument. 2009-12-26 Michael Albinus * tramp.el (tramp-handle-insert-directory): Quote "'" in the switches. (tramp-open-connection-setup-interactive-shell): Dump stty settings. Enable "neveropen" arg for all `tramp-send-command' calls. 2009-12-23 Michael Albinus * tramp.el (tramp-handle-file-name-all-completions): Backward/ XEmacs compatibility: Use `completion-ignore-case' if `read-file-name-completion-ignore-case' does not exist. (tramp-handle-dired-uncache): Add optional parameter DIR-P for XEmacs compatibility. Reported by Pete Forman . (tramp-handle-insert-directory): Check also for //SUBDIRED// line. 2009-12-17 Michael Albinus * tramp.el (tramp-handle-file-remote-p): Expand file name only if there is already an established connection. (tramp-advice-file-expand-wildcards): Remove it. * tramp-compat.el (top): Autoload `tramp-handle-file-remote-p'. (tramp-advice-file-expand-wildcards): Moved from tramp.el. Activate advice for older GNU Emacs versions. (Bug#5237) 2009-12-15 Michael Albinus * tramp.el (tramp-echo-mark-marker-length): New defconst. (tramp-echo-mark, tramp-echoed-echo-mark-regexp): Use it. (tramp-check-for-regexp): Check also when an echoing shell stops to echo sent commands. 2009-12-09 Michael Albinus * tramp.el (tramp-handle-insert-directory): Suppress error messages. 2009-12-07 Michael Albinus Handle prompt rules of ksh in OpenBSD 4.5. Reported by Raphaël Berbain . * tramp.el (tramp-end-of-output): Move up. Use `#' and `$' characters. (tramp-initial-end-of-output): New defconst. (tramp-methods, tramp-find-shell) (tramp-open-connection-setup-interactive-shell) (tramp-maybe-open-connection): Use it. (tramp-shell-prompt-pattern, tramp-wait-for-output): Handle existence of `#' and `$'. * tramp-fish.el (tramp-fish-maybe-open-connection): Use `tramp-initial-end-of-output'. 2009-12-03 Michael Albinus * tramp.el (tramp-handle-file-remote-p): Expand FILENAME for the benefit of returning an expanded localname. (tramp-tramp-file-p): Handle the case NAME is not a string. 2009-11-29 Michael Albinus * tramp.el (tramp-maybe-open-connection): Open the remote shell with "exec" when possible. This prevents trailing prompts in `start-file-process'. 2009-11-24 Michael Albinus * tramp.el (tramp-eshell-directory-change): New defun. Add it to `eshell-directory-change-hook'. 2009-11-23 Michael Albinus * tramp.el (tramp-shell-prompt-pattern): Use \r for carriage return. (tramp-handle-make-symbolic-link) (tramp-handle-dired-compress-file, tramp-handle-expand-file-name): Quote file names. (tramp-send-command-and-check): New argument DONT-SUPPRESS-ERR. (tramp-handle-process-file): Use it. 2009-11-19 Michael Albinus * tramp.el (tramp-do-copy-or-rename-file-out-of-band): Set variables for computing the prompt for reading password. 2009-11-17 Michael Albinus * tramp.el (tramp-advice-file-expand-wildcards): Simplify. Don't set `ad-return-value' if `ad-do-it' doesn't. * tramp-gvfs.el (tramp-gvfs-handle-write-region): Set file modification time. 2009-11-16 Michael Albinus * tramp-gvfs.el (tramp-gvfs-dbus-event-error): Raise only an error when `tramp-gvfs-dbus-event-vector' is set. (tramp-gvfs-maybe-open-connection): Loop over `read-event'. 2009-11-11 Michael Albinus * tramp.el (tramp-advice-minibuffer-electric-separator) (tramp-advice-minibuffer-electric-tilde): Unload advices via `tramp-unload'. (tramp-advice-make-auto-save-file-name) (tramp-advice-file-expand-wildcards): Apply also `ad-activate' after removing the advice. 2009-11-08 Michael Albinus * tramp.el (tramp-advice-make-auto-save-file-name) (tramp-advice-file-expand-wildcards): Unload via `ad-remove-advice'. 2009-11-08 Kevin Ryde * tramp.el (tramp-advice-file-expand-wildcards): Don't rely on `ad-do-it'. 2009-11-08 Andr (tiny change) * tramp.el (tramp-handle-write-region): Copy but rename temp file, in order to keep context in SELinux. 2009-11-07 Michael Albinus Version 2.1.17 released. * tramp.el (tramp-handle-copy-directory): Don't use `file-remote-p' (due to compatibility). * tramp-compat.el (tramp-compat-copy-directory) (tramp-compat-delete-directory): New defuns. * tramp-fish.el (tramp-fish-handle-delete-directory): * tramp-gvfs.el (tramp-gvfs-handle-delete-directory): Use `tramp-compat-delete-directory'. * tramp-smb.el (tramp-smb-handle-copy-directory) (tramp-smb-handle-delete-directory ): Use `tramp-compat-copy-directory' and `tramp-compat-delete-directory'. 2009-10-27 Michael Albinus * tramp-imap.el (top): Add `X-Size' to `imap-hash-headers'. (tramp-imap-do-copy-or-rename-file): Don't use the inode, when calling `tramp-imap-put-file'. Add file size to the call. (tramp-imap-get-file-entries): Compute also user name, file size, and date. (tramp-imap-handle-insert-directory): Insert uid and gid. (tramp-imap-handle-file-attributes): Transform uid and gid according to `id-format'. (tramp-imap-put-file): New optional parameter SIZE. Encode file size in header X-Size. 2009-10-26 Michael Albinus * tramp.el (tramp-handle-write-region): In case of APPEND, reuse the tmpfile name. * tramp-imap.el (tramp-imap-file-name-handler-alist): Ignore `dired-call-process'. (tramp-imap-make-iht): Use `user' and `ssl' with `imap-hash-make'. 2009-10-23 Michael Albinus * tramp.el (top): Remove `tramp-rfn-eshadow-update-overlay' from `rfn-eshadow-update-overlay-hook' when unloading. (tramp-methods): Add `tramp-copy-keep-tmpfile' for "rsync" and "rsyncc". Adjust doc string. (tramp-temp-buffer-file-name) New buffer-local defvar. (tramp-handle-insert-file-contents, tramp-handle-write-region): Keep temporary file when indicated by method ("rsync" and "rsyncc"). (tramp-handle-write-region): Handle APPEND. (tramp-delete-temp-file-function): New defun. Added to `kill-buffer-hook'. 2009-10-21 Michael Albinus * tramp-smb.el (tramp-smb-get-stat-capability): New defun. (tramp-smb-handle-file-attributes): Use it. (tramp-smb-do-file-attributes-with-stat): Don't raise an error. (tramp-smb-handle-insert-directory): Use `mapc' rather than `mapcar'. Use `tramp-smb-get-stat-capability'. Add `dired-filename' text properties. (tramp-smb-get-cifs-capabilities): Apply `save-match-data'. (tramp-smb-maybe-open-connection): Simplify check for smbclient version. 2009-10-16 Michael Albinus * tramp-smb.el (tramp-smb-version): New defvar. (tramp-smb-maybe-open-connection): Use it, in order to avoid repeated checks. 2009-10-15 Michael Albinus * tramp.el (tramp-replace-environment-variables): Do not fail if the environment variable does not exist. * tramp-smb.el (tramp-smb-errors): Add error messages. (tramp-smb-get-share, tramp-smb-get-localname): Use only VEC as parameter. (tramp-smb-handle-add-name-to-file) (tramp-smb-handle-copy-directory, tramp-smb-handle-copy-file) (tramp-smb-handle-delete-directory, tramp-smb-handle-delete-file) (tramp-smb-handle-file-attributes) (tramp-smb-do-file-attributes-with-stat) (tramp-smb-handle-file-local-copy) (tramp-smb-handle-insert-directory) (tramp-smb-handle-make-directory) (tramp-smb-handle-make-directory-internal) (tramp-smb-handle-make-symbolic-link) (tramp-smb-handle-rename-file, tramp-smb-handle-set-file-modes) (tramp-smb-handle-write-region, tramp-smb-get-file-entries) (tramp-smb-maybe-open-connection): Apply the changed parameters. (tramp-smb-read-file-entry): Read Disk names in compressed format. Handle long file names. (tramp-smb-get-cifs-capabilities): Check, whether the connection process is running. (tramp-smb-maybe-open-connection): Trace "smbclient -V" command. Read share names with "-g" option. 2009-10-12 Glenn Morris * tramp-smb.el (tramp-smb-do-file-attributes-with-stat): Let-bind `size'. 2009-10-11 Michael Albinus * tramp.el (tramp-local-host-p): Function shall return nil for connection methods like smb. * tramp-cache.el (tramp-flush-connection-property): The hash can be empty. * tramp-smb.el (tramp-smb-errors): Add error messages. (tramp-smb-file-name-handler-alist): Add handlers for `add-name-to-file', `make-symbolic-link'. (tramp-smb-handle-add-name-to-file) (tramp-smb-do-file-attributes-with-stat) (tramp-smb-handle-make-symbolic-link) (tramp-smb-get-cifs-capabilities): New defuns. (tramp-smb-handle-copy-directory, tramp-smb-handle-copy-file) (tramp-smb-handle-delete-directory, tramp-smb-handle-delete-file) (tramp-smb-handle-file-local-copy) (tramp-smb-handle-make-directory-internal) (tramp-smb-handle-rename-file, tramp-smb-handle-write-region): The file name syntax depends on cifs capabilities. (tramp-smb-handle-file-attributes); Call `tramp-smb-do-file-attributes-with-stat' if possible. (tramp-smb-handle-insert-directory): Use posix attributes if possible. (tramp-smb-handle-set-file-modes): It is applicable for posix only. 2009-10-08 Michael Albinus * tramp.el (tramp-file-name-real-user, tramp-file-name-domain) (tramp-file-name-real-host, tramp-file-name-port): Apply `save-match-data'. * tramp-smb.el (tramp-smb-handle-copy-directory): Handle the case both directories are remote. (tramp-smb-handle-expand-file-name): Implement "~" expansion. (tramp-smb-maybe-open-connection): Flush the cache only if necessary. 2009-10-07 Michael Albinus * tramp-cache.el (tramp-flush-connection-property): Add trace message. * tramp-smb.el (tramp-smb-errors): Add error messages. (tramp-smb-file-name-handler-alist): Add handler for `copy-directory', `expand-file-name', `set-file-modes'. (tramp-smb-handle-copy-directory) (tramp-smb-handle-expand-file-name) (tramp-smb-handle-set-file-modes): New defuns. (tramp-smb-handle-copy-file): Handle KEEP-DATE. (tramp-smb-handle-file-attributes): Simplify check for retrieving entry. (tramp-smb-handle-insert-directory): Don't flush the cache. (tramp-smb-maybe-open-connection): Check for samba client and server versions. 2009-10-06 Sam Steingold * tramp-compat.el (tramp-compat-process-running-p): Check that the comm attribute is present before calling regexp-quote. 2009-10-06 Glenn Morris * tramp.el (tramp-handle-start-file-process): Move tramp-error call inside with-parsed... macro so that `v' is defined. 2009-10-05 Michael Albinus * tramp.el (tramp-verbose): Fix docstring. (tramp-default-method): Check also for `auth-source-user-or-password'. (tramp-file-name-handler-alist, tramp-file-name-for-operation): Add handler for `copy-directory'. Remove handler for `dired-copy-file-recursive'. (tramp-handle-copy-directory): New defun. (tramp-do-copy-or-rename-file-out-of-band): Handle directory case. (tramp-handle-dired-copy-file-recursive): Remove function. (tramp-handle-start-file-process): Raise an error when PROGRAM is nil. Optimize sent command. 2009-10-03 Michael Albinus * tramp-ftp.el (tramp-ftp-file-name-handler): Disable `file-name-handler-alist' when loading 'ange-ftp. Otherwise, there could be recursive loading when `default-directory' is a remote file name. (Bug#4614) 2009-10-02 Michael Albinus * tramp-smb.el (tramp-smb-handle-make-directory-internal): Flush file properties of created directory. 2009-10-01 Michael Albinus * tramp.el (tramp-file-name-handler-alist) (tramp-file-name-for-operation): Remove `dired-delete-file-recursive'. (tramp-handle-make-directory): Flush upper directory's file properties. (tramp-handle-delete-directory): Handle optional parameter RECURSIVE. (tramp-handle-dired-delete-file-recursive): Delete. * tramp-fish.el (tramp-fish-handle-delete-directory): Handle optional parameter RECURSIVE. * tramp-gvfs.el (tramp-gvfs-handle-delete-directory): Handle optional parameter RECURSIVE. * tramp-smb.el (tramp-smb-errors): Add error message for connection timeout. (tramp-smb-handle-delete-directory): Handle optional parameter RECURSIVE. 2009-09-29 Michael Albinus * tramp.el (tramp-file-name-handler-alist) (tramp-file-name-for-operation): Add entry for `dired-delete-file-recursive'. (tramp-handle-dired-delete-file-recursive): New defalias. (tramp-handle-dired-recursive-delete-directory): Flush directory properties after the remove command only. 2009-09-29 Glenn Morris * tramp-smb.el (tramp-smb-handle-directory-files-and-attributes): Use tramp-compat-file-attributes rather than nonexistent tramp-compat-handle-file-attributes. 2009-09-28 Michael Albinus * tramp-imap.el (tramp-imap-file-name-handler-alist): Add handlers for `directory-files-and-attributes' and `file-local-copy'. (tramp-imap-handle-directory-files-and-attributes) (tramp-imap-handle-file-local-copy): New defuns. * tramp-smb.el (tramp-smb-handle-directory-files-and-attributes): Use `tramp-compat-handle-file-attributes'. 2009-09-27 Michael Albinus * tramp-imap.el (top): Require 'assoc. (tramp-imap-file-name-handler-alist): Add handlers for `copy-file', `insert-directory' and `rename-file'. Fix change for `file-local-copy'. (tramp-imap-handle-copy-file, tramp-imap-handle-rename-file) (tramp-imap-do-copy-or-rename-file) (tramp-imap-handle-insert-directory): New defuns. (tramp-imap-get-file-entries): Compute device info with `tramp-get-device'. (tramp-imap-handle-file-directory-p) (tramp-imap-handle-file-writable-p): Improve implementation. (tramp-imap-put-file, tramp-imap-get-file): New optional parameter ENCODE or DECODE, respectively. Adapt calls accordingly. 2009-09-27 Teodor Zlatanov * tramp-imap.el (tramp-imap-file-name-handler-alist): Remove file-local-copy handler. 2009-09-24 Michael Albinus * Makefile.in: Add tramp-imap.el. * tramp.el (top): Require tramp-imap. (tramp-methods): Add recursive option to `tramp-copy-args'. Add `tramp-copy-recursive'. Valid for "rcp", "scp", "scp1", "scp2", "scp1_old", "scp2_old", "rsync", "rsyncc". (tramp-file-name-handler-alist, tramp-file-name-for-operation): Add entry for `dired-copy-file-recursive'. (tramp-handle-dired-copy-file-recursive): New defun. 2009-09-24 Teodor Zlatanov * tramp-imap.el: New package. 2009-09-16 Glenn Morris * tramp-compat.el (byte-compile-not-obsolete-vars): Set if bound. 2009-09-08 Michael Albinus * tramp.el (tramp-handle-file-truename, tramp-get-remote-perl): Check also for "perl-file-spec" and "perl-cwd-realpath" properties. 2009-09-04 Michael Albinus * tramp.el (tramp-handle-insert-directory): Handle "--dired" also when adding a new directory. * tramp-compat.el (tramp-compat-line-beginning-position): New defun. 2009-09-02 Michael Albinus * tramp.el (tramp-handle-file-name-all-completions): Use `tramp-compat-number-sequence' instead of `number-sequence' and symbol value of `read-file-name-completion-ignore-case'. Both symbols do not exist in Emacs 21. (tramp-handle-insert-directory): Use "?\ " for compatibility reasons. (tramp-handle-vc-registered): Check, whether the first run did return files to be tested. * tramp-compat.el (tramp-compat-number-sequence): New defun. 2009-09-01 Michael Albinus * tramp.el (tramp-handle-file-attributes-with-ls) (tramp-do-file-attributes-with-perl) (tramp-do-file-attributes-with-stat): Rename from `tramp-handle-file-attributes-with-*'. (tramp-handle-file-attributes): Use them. (tramp-do-directory-files-and-attributes-with-perl) (tramp-do-directory-files-and-attributes-with-stat): Rename from `tramp-handle-directory-files-and-attributes-with-*'. (tramp-handle-directory-files-and-attributes): Use them. (tramp-method-out-of-band-p): Additional parameter SIZE. (tramp-do-copy-or-rename-file, tramp-handle-file-local-copy) (tramp-handle-write-region): Use it. (tramp-advice-make-auto-save-file-name): Do not call directly `tramp-handle-make-auto-save-file-name', because this would bypass the locking mechanism. * tramp-compat.el (top): Autoload used functions from tramp.el. (file-remote-p, process-file, start-file-process, set-file-times) (tramp-compat-file-attributes): Compatibility functions shall not call directly `tramp-handle-*', because this would bypass the locking mechanism. 2009-08-28 Michael Albinus * tramp.el (all): Replace "'(lambda" by "(lambda". (tramp-handle-file-local-copy): Unset `file-name-handler-alist' when writing the temp file. Otherwise, epa-file gets confused. (tramp-register-file-name-handlers): Make it a defun. Move also `epa-file-handler' to the front of `file-name-handler-alist'. 2009-08-28 Stefan Monnier * tramp.el (tramp-shell-prompt-pattern): Allow a prompt to start right after a ^M. (tramp-root-regexp, tramp-completion-file-name-regexp-unified) (tramp-completion-file-name-regexp-separate) (tramp-completion-file-name-regexp-url): Use \\` and \\'. (tramp-handle-file-attributes, tramp-set-file-uid-gid): Don't modify last-coding-system-used by accident. (tramp-completion-file-name-handler): Apply the checks here, instead during registration. (tramp-register-file-name-handlers) Renamed from `tramp-register-file-name-handler'. Register both `tramp-file-name-handler' and `tramp-completion-file-name-handler'. (tramp-register-completion-file-name-handler): Removed. (Bug#4260) 2009-08-27 Michael Albinus * tramp.el (tramp-do-copy-or-rename-file-directly): Extend check for direct remote copying. * tramp-gvfs.el (top): Replace ping by checking for running service for bluez and zeroconf. (Bug#4239) 2009-08-19 Julian Scheid * tramp.el (tramp-handle-process-file): Merge three remote ops into one. Do not flush all caches when `process-file-side-effects' is set. (tramp-vc-registered): Unset `process-file-side-effects'. 2009-08-18 Julian Scheid * tramp.el (tramp-check-cached-permissions) New defun. (tramp-handle-file-readable-p): Use it. (tramp-handle-file-writable-p): Likewise. (tramp-handle-file-executable-p): Likewise. 2009-08-18 Michael Albinus * tramp.el (tramp-handle-file-name-all-completions): Use `mapc' instead of `mapcar'. (tramp-do-copy-or-rename-file-out-of-band): Declare `copy-env'. 2009-08-18 Julian Scheid * tramp.el (tramp-perl-file-name-all-completions): New defconst. (tramp-handle-file-name-all-completions): Try using Perl to get partial completions. When perl not available, combine `cd' and `ls' into single remote operation and use shell expansion to get partial remote directory contents. Set `file-exists-p' cache for directory and any files returned by ls. Change cache handling to support partial directory contents. Use error message emitted by remote `cd' or Perl code for local tramp-error. 2009-08-17 Michael Albinus * tramp.el (tramp-methods): New method "rsyncc". (top): Add completion function for "rsyncc". (tramp-do-copy-or-rename-file-out-of-band): Handle new `tramp-methods' entry `copy-env' of "rsyncc". (tramp-register-completion-file-name-handler): Check also for (member 'partial-completion completion-styles). 2009-08-16 Michael Albinus * tramp-cache.el (top): Autoload `tramp-time-less-p'. 2009-08-16 Julian Scheid * tramp.el (tramp-perl-file-attributes): Print "nil" when lstat fails. (tramp-handle-file-attributes): Removed `file-exists-p' call. (tramp-handle-file-attributes-with-ls): Check for file existence at remote end. (tramp-handle-file-attributes-with-stat): Likewise. (tramp-handle-file-readable-p): Don't use file attribute cache when file is a symlink. (tramp-handle-file-writable-p): Likewise. (tramp-handle-vc-registered): Use `tramp-get-file-exists-command' instead of `tramp-find-file-exists-command'. (tramp-convert-file-attributes): Return nil when attr is nil. 2009-08-15 Michael Albinus * tramp.el (tramp-handle-vc-registered): Embed the code in `with-parsed-tramp-file-name'. Don't use `caddr', we havent't required 'cl. 2009-08-15 Julian Scheid * tramp.el (tramp-handle-file-exists-p): Check file-attributes cache, assume file exists if cache value present. (tramp-handle-file-readable-p): Examine file-attributes cache to see if request can be satisfied without remote operation. (tramp-handle-file-writable-p): Likewise. (tramp-do-copy-or-rename-file-directly): Avoid separate tramp-send-command-and-check call. (tramp-handle-write-region): Avoid tramp-set-file-uid-gid if file-attributes shows uid/gid to be set already. 2009-08-14 Michael Albinus * tramp.el (tramp-message-show-message): New defvar. (tramp-message, tramp-error): Use it. 2009-08-14 Julian Scheid * tramp.el (tramp-handle-file-truename): Use readlink --canonicalize-missing instead of --canonicalize. (tramp-get-remote-readlink) Check for --canonicalize-missing instead of --canonicalize. (tramp-perl-file-truename) Updated to support non-existing paths. 2009-08-09 Michael Albinus * tramp.el (tramp-get-ls-command-with-dired): New defun. (tramp-handle-insert-directory): Handle "--dired". (Bug#4075) (tramp-get-ls-command, tramp-get-test-command) (tramp-get-file-exists-command, tramp-get-remote-ln) (tramp-get-remote-perl, tramp-get-remote-stat) (tramp-get-remote-readlink, tramp-get-remote-id): Remove superfluous `with-current-buffer'. 2009-08-07 Michael Albinus * tramp.el (tramp-perl-file-truename): New defconst. Perl code contributed by yary (tiny change). (tramp-handle-file-truename): Use it. 2009-08-06 Julian Scheid * tramp.el (tramp-get-remote-readlink): New defun. (tramp-handle-file-truename): Use it. 2009-08-06 Michael Albinus * tramp.el (tramp-vc-registered-read-file-names): New defconst. (tramp-handle-vc-registered): Use it. (tramp-vc-file-name-handler): Remember `localname' but `filename'. 2009-08-05 Michael Albinus * tramp.el (tramp-vc-registered-file-names): New defvar. (tramp-vc-file-name-handler): New defun. (tramp-run-real-handler): Add `tramp-vc-file-name-handler'. (tramp-handle-vc-registered): Implement optimization strategy. Suggested by Julian Scheid . * tramp-cache.el (tramp-cache-inhibit-cache): Extend doc string. It allows also timestamps. (tramp-get-file-property): Check for timestamps in `tramp-cache-inhibit-cache'. (tramp-set-file-property): Write timestamp. 2009-08-04 Michael Albinus * tramp.el (top): Make check for tramp-gvfs loading more robust. (Bug#3977) * tramp-gvfs.el (top): Remove superfluous message when loading fails. 2009-08-03 Michael Albinus * tramp.el (tramp-rfn-eshadow-update-overlay-regexp) New defconst. (tramp-rfn-eshadow-update-overlay): Use it. (Bug#4004) (tramp-handle-insert-file-contents): `unwind-protect' must be inside `with-parsed-tramp-file-name'. 2009-08-02 Julian Scheid (tiny change) * tramp.el (tramp-debug-message): Print also microseconds. 2009-08-02 Michael Albinus * tramp.el (tramp-handle-insert-file-contents): Optimize when BEG or END is non-nil. (tramp-handle-vc-registered): Use `tramp-cache-inhibit-cache'. (tramp-get-debug-buffer): Change `outline-regexp' according to new format. * tramp-cache.el (tramp-cache-inhibit-cache ): New defvar. (tramp-get-file-property): Use it. 2009-07-28 Michael Albinus * tramp.el (tramp-do-copy-or-rename-file): Add messages. Simplify check for out-of-band methods. (tramp-do-copy-or-rename-file-out-of-band): Allow both files to be remote. Remove messages which are in `tramp-do-copy-or-rename-file'. 2009-07-16 Michael Albinus * tramp.el (tramp-wait-for-output): Handle the case when commands do not return a newline but a null byte before the shell prompt. (Bug#3858) 2009-07-08 Michael Albinus * tramp.el (tramp-set-file-uid-gid): Handle the case the remote user is root, on the local host. (tramp-local-host-p): Either the local user or the remote user must be root. (Bug#3771) 2009-07-06 Michael Albinus * tramp.el (tramp-handle-write-region): Flush file properties in case of short track. 2009-07-03 Michael Albinus * tramp-gvfs.el (tramp-gvfs-methods, tramp-gvfs-zeroconf-domain) (tramp-bluez-discover-devices-timeout): Add version flag. (tramp-gvfs-handler-mounted-unmounted) (tramp-gvfs-connection-mounted-p): Polish handling of incompatibilities between GVFS 0.2 and 1.0. 2009-07-02 Juri Linkov * tramp-gvfs.el (tramp-gvfs-connection-mounted-p): Use `elt' instead of `mount-info'. 2009-07-02 Michael Albinus * tramp-gvfs.el (tramp-gvfs-handler-mounted-unmounted) (tramp-gvfs-connection-mounted-p): Handle changed mount-info interface. 2009-07-01 Michael Albinus * tramp-gvfs.el (tramp-gvfs-file-name-handler-alist): Add handler for `process-file', `shell-command' and `start-file-process'. (tramp-gvfs-handle-shell-command) (tramp-gvfs-handle-start-file-process) (tramp-gvfs-handle-process-file): New defuns. (tramp-synce-list-devices): Simplify check for existence of property. 2009-06-30 Michael Albinus * tramp.el (tramp-do-copy-or-rename-file-directly): Handle also the 'rename case when setting file modes. (Bug#3712) (tramp-default-file-modes) Remove execute permissions. * tramp-gvfs.el (tramp-gvfs-methods): Add "synce" method. (top): Add a default for "synce" in `tramp-default-user-alist'. Add completion function for "synce" method. (tramp-hal-service, tramp-hal-path-manager) (tramp-hal-interface-manager, tramp-hal-interface-device): New defconst. (tramp-gvfs-connection-mounted-p): Handle empty user name for synce. (tramp-synce-list-devices, tramp-synce-parse-device-names): New defuns. 2009-06-29 Michael Albinus * tramp.el (tramp-do-copy-or-rename-file-directly): Set file modes mandatory. (Bug#3712) 2009-06-24 Michael Albinus * tramp-gvfs.el (top): Declare used Lisp symbols from `dbusbind'. Require 'cl and 'custom when byte-compiling. (tramp-gvfs-handle-make-directory): Use `dir' but `filename'. Reported by Glenn Morris . 2009-06-22 Michael Albinus Version 2.1.16 released. 2009-06-21 Michael Albinus * tramp.el (tramp-debug-message): Insert header line in debug buffer. 2009-06-17 Michael Albinus * tramp.el (tramp-handle-insert-file-contents): Improve error handling. * tramp-smb.el (tramp-smb-handle-file-local-copy): Cleanup in case of error. 2009-06-15 Michael Albinus * tramp-gvfs.el (tramp-gvfs-handler-askpassword): Handle USER correctly. 2009-06-13 Michael Albinus * tramp.el (tramp-handle-directory-files-and-attributes-with-stat): Care about filenames with spaces, or starting with "-". Reported by Alexey Lebedeff . 2009-06-07 Michael Albinus * tramp.el (tramp-do-copy-or-rename-file-directly): Make direct copy more robust, especially when "chown" is not applicable. * tramp-cmds.el (tramp-bug): Recommend `tramp-cleanup-all-connections' in the bug mail. 2009-06-06 Michael Albinus * tramp.el (top): Improve check for tramp-gvfs loading. (all): Replace all calls of `split-string' and `tramp-split-string' by `tramp-compat-split-string'. (tramp-default-method): Use `tramp-compat-process-running-p'. (tramp-file-name-handler-alist): Add handler for `dired-uncache'. (tramp-handle-dired-uncache): New defun. (tramp-handle-insert-directory): Don't flush the directory from cache, this is handled by `dired-uncache' now. (tramp-action-password): Improve trace message. (tramp-open-connection-setup-interactive-shell): Apply workaround for OpenSolaris bug. (tramp-split-string): Remove function. It is handled in tramp-compat now. * tramp-compat.el (tramp-compat-split-string) (tramp-compat-process-running-p): New defuns. * tramp-fish.el (tramp-fish-file-name-handler-alist): * tramp-gvfs.el (tramp-gvfs-file-name-handler-alist): * tramp-smb.el (tramp-smb-file-name-handler-alist): Add handler for `dired-uncache'. 2009-04-24 Michael Albinus * tramp.el (tramp-handle-directory-files-and-attributes-with-stat) (tramp-handle-file-name-all-completions): Revert patch from 2009-04-21. It is "-b", which does not work on OpenBSD. 2009-04-23 Michael Albinus * tramp.el (tramp-domain-regexp): Allow also "-", "_" and ".". Suggested by Simo Melenius . 2009-04-21 Michael Albinus * tramp.el (tramp-default-proxies-alist): Allow also Lisp forms. (tramp-compute-multi-hops): Eval cons cells of `tramp-default-proxies-alist'. (tramp-handle-directory-files-and-attributes-with-stat) (tramp-handle-file-name-all-completions): Don't use "-a" as ls arg. It does not work on OpenBSD. Reported by Taylor Venable . 2009-04-19 Michael Albinus * tramp.el (top): Completion function for "rsync" is `tramp-completion-function-alist-ssh'. 2009-04-14 Michael Albinus * tramp.el (tramp-handle-dired-recursive-delete-directory): Fix an error in flushing cache data. (tramp-handle-process-file): Flush all file cache values for the connection, because the remote process could have changed them. Suggested by Stefan Monnier . Handle QUIT. * tramp-cmds.el (tramp-cleanup-connection): Flush cache data of directory "". 2009-04-12 Michael Albinus * tramp.el (tramp-do-copy-or-rename-file-directly): Overwrite always the tmpfile. (Bug#2962). 2009-04-09 Michael Albinus * tramp.el (tramp-file-name-handler-alist): Add `vc-registered'. (tramp-handle-vc-registered ): New defun. (Bug#1741). * tramp-cache.el (tramp-flush-directory-property): Use the localname of KEY for check. 2009-04-05 Michael Albinus * tramp.el (tramp-default-file-modes) New defun. Replace all calls of `file-modes' by this. (tramp-handle-find-backup-file-name): Use `symbol-value' instead of `boundp'. * tramp-fish.el (tramp-fish-do-copy-or-rename-file-directly): Use `tramp-default-file-modes'. 2009-03-23 Michael Albinus * tramp.el (tramp-find-shell) (tramp-open-connection-setup-interactive-shell): Don't use quotes for `tramp-end-of-output'. (tramp-open-connection-setup-interactive-shell): Trace coding system. 2009-03-22 Michael Albinus * tramp.el (top): Catch `tramp-loading' when a loading of a package fails. (tramp-end-of-output): Remove newlines, and add "$" at the end. (tramp-find-shell, tramp-open-connection-setup-interactive-shell): Quote `tramp-end-of-output'. (tramp-wait-for-output): Remove handling of newlines. * tramp-gvfs.el (top): Add methods to `tramp-methods' after loading only. Throw `tramp-loading' when GVFS daemon does not run. 2009-03-17 Michael Albinus * tramp.el (tramp-remote-path): Add choice "Private Directories". (tramp-check-for-regexp): Both echoes must be present, before removing. (tramp-get-remote-path): Handle also `tramp-own-remote-path'. 2009-03-15 Michael Albinus * tramp.el (tramp-wrong-passwd-regexp): Remove "Tramp connection closed" option. (tramp-maybe-open-connection): Use the same command pattern for first hop and further hops. 2009-02-26 Michael Albinus * tramp.el (tramp-remote-coding-commands): Add "base64". (Bug#2463) 2009-02-22 Michael Albinus * tramp.el (top): Require tramp-gvfs. (tramp-handle-process-file): Handle QUIT. * tramp-gvfs.el (tramp-gvfs-handle-write-region): Fix scoping error. 2009-02-17 Michael Albinus * tramp-gvfs.el (tramp-gvfs-zeroconf-domain): New defcustom. (top): Use it for zeroconf initialization. (tramp-gvfs-handle-make-directory): Use GVFS utilities in error case. (tramp-gvfs-handle-set-file-modes): Surround with `with-tramp-gvfs-error-message filename'. (tramp-gvfs-handle-write-region): Add trace messages. 2009-02-15 Michael Albinus * tramp-gvfs.el (top): Require also 'url-parse and 'zeroconf. Add completion function for "dav" and "davs" methods. (tramp-gvfs-url-file-name) (tramp-zeroconf-parse-workstation-device-names) (tramp-zeroconf-parse-webdav-device-names): New defuns. (with-tramp-gvfs-error-message): New defmacro. (tramp-gvfs-handle-make-directory): Use it. (tramp-gvfs-handle-insert-file-contents): Protect setting `buffer-file-name' with `unwind-protect'. (tramp-gvfs-handle-write-region): Use GVFS utilities in error case. (tramp-gvfs-handler-mounted-unmounted): Ignore errors. 2009-02-11 Michael Albinus * tramp-gvfs.el (top): Don't raise an error when "org.bluez" is not answering. Add completion function only when "org.bluez" is reachable. (tramp-gvfs-maybe-open-connection): Set "started" property. 2009-02-06 Michael Albinus * Makefile.in: Add tramp-gvfs.el. * tramp-gvfs.el: New package. 2009-02-01 Michael Albinus Version 2.1.15 released. * tramp.el (tramp-read-passwd): Cached passwords shall still be used. * tramp-cache.el (top): Autoload `tramp-run-real-handler'. 2009-01-29 Michael Albinus * tramp.el (tramp-process-actions, tramp-read-passwd): Allow correction of passwords. 2009-01-19 Michael Albinus * tramp.el (tramp-ipv6-regexp): The regexp shall cover also IPv4 mapped IPv6 addresses. 2009-01-06 Michael Albinus * tramp.el (tramp-do-copy-or-rename-file-directly) (tramp-handle-file-local-copy, tramp-handle-write-region) * tramp-smb.el (tramp-smb-handle-copy-file) (tramp-smb-handle-rename-file): Delete temporary file in case of quit. 2009-01-05 Michael Albinus * tramp.el (tramp-handle-load) (tramp-do-copy-or-rename-file-directly) (tramp-handle-file-local-copy, tramp-handle-insert-file-contents) (tramp-handle-write-region) * tramp-smb.el (tramp-smb-handle-copy-file) (tramp-smb-handle-rename-file, tramp-smb-handle-write-region): Delete temporary file in case of error. 2009-01-05 Glenn Morris * tramp.el (tramp-perl-encode, tramp-perl-decode): Update copyrights for 2009. 2009-01-03 Michael Albinus * tramp.el (tramp-local-host-regexp, tramp-prefix-domain-format) (tramp-prefix-domain-regexp, tramp-domain-regexp) (tramp-user-with-domain-regexp, tramp-prefix-ipv6-format) (tramp-prefix-ipv6-regexp, tramp-ipv6-regexp) (tramp-postfix-ipv6-format, tramp-postfix-ipv6-regexp): New defconst. (tramp-file-name-structure, tramp-file-name-regexp-unified) (tramp-completion-dissect-file-name, tramp-parse-hosts-group) (tramp-dissect-file-name, tramp-make-tramp-file-name) (tramp-completion-make-tramp-file-name): Handle IPv6 addresses. (tramp-handle-insert-file-contents): Fix setting of `buffer-read-only'. (tramp-compute-multi-hops, tramp-local-host-p): Use `tramp-local-host-regexp'. (tramp-file-name-real-user, tramp-file-name-domain): Use `tramp-user-with-domain-regexp'. * tramp-smb.el (top): Use `tramp-prefix-domain-regexp'. (tramp-smb-maybe-open-connection): Use `tramp-file-name-*' methods. 2008-12-22 Michael Albinus * tramp.el (tramp-rfn-eshadow-update-overlay): Move overlay to end, before updating. (tramp-convert-file-attributes): Add "l" indicator to file modes. (tramp-file-name-real-user, tramp-file-name-domain): New defuns. 2008-12-10 Juanma Barranquero * tramp.el (top): Don't fail if there is no current message. 2008-12-04 Michael Albinus * tramp.el (top): Write a message when loading Tramp. * tramp-cache.el (tramp-dump-connection-properties): Polish the check, whether to dump the data. 2008-12-01 Michael Albinus * tramp-cache.el (tramp-cache-data-changed): New defvar. (tramp-set-connection-property, tramp-flush-connection-property) (tramp-dump-connection-properties): Use it. 2008-11-26 Michael Albinus * tramp.el (tramp-handle-write-region): Improve the check for calling direct copy. (tramp-find-inline-encoding): Don't raise an error but a warning, when no inline encoding is found. (tramp-get-remote-coding): Check for a symbol. The negative check for a string fails when there is an empty string. 2008-11-16 Michael Albinus * tramp.el (tramp-handle-file-name-as-directory): New defun. (tramp-file-name-handler-alist): Handle `file-name-as-directory'. * tramp-fish.el (tramp-fish-file-name-handler-alist) * tramp-smb.el (tramp-smb-file-name-handler-alist): Handle `file-name-as-directory'. 2008-11-14 Juanma Barranquero * tramp.el (tramp-set-completion-function): Fix typo in docstring. 2008-10-14 Michael Albinus * tramp.el (tramp-process-one-action): Embed regexp in parentheses, before adding end-of-buffer construct. Suggested by Markus Triska . 2008-09-04 Juanma Barranquero * tramp-cache.el (tramp-flush-file-function): Fix typo in docstring. (tramp-parse-connection-properties): Reflow docstring. 2008-08-22 Michael Albinus * tramp.el (tramp-remote-process-environment): Add "EMACS=t" and "INSIDE_EMACS=...". Reported by Tassilo Horn . 2008-08-13 Andreas Schwab * tramp.el (tramp-handle-shell-command): Handle output going to current buffer like shell-command. Don't disable undo. 2008-07-27 Michael Albinus Version 2.1.14 released. * tramp.el (tramp-perl-directory-files-and-attributes) (tramp-get-device): Make device number a cons cell. (tramp-convert-file-attributes): Make inode a cons cell. 2008-07-26 Michael Albinus * tramp.el (tramp-handle-start-file-process): Set query-on-exit flag. Kill temporary buffer. (tramp-process-sentinel): Remove defun. (tramp-do-copy-or-rename-file-out-of-band) (tramp-maybe-open-connection): Don't call it. * tramp-fish.el (tramp-fish-maybe-open-connection): Don't call `tramp-process-sentinel'. * tramp-smb.el (tramp-smb-maybe-open-connection): Don't call `tramp-process-sentinel'. 2008-07-24 Michael Albinus * tramp.el (tramp-handle-start-file-process): Make NAME a unique process name. Reported by Markus Triska . 2008-07-23 Michael Albinus * tramp.el (tramp-methods): Add "-q" for "scp", "scp1", "scp2", "ssh", "ssh1", "ssh2", "scpc", "scpx", "sshx". (tramp-temp-buffer-name): New defconst. (tramp-handle-start-file-process): Use it. Apply "exec", for the command. No trailing prompt. (tramp-process-sentinel): Remove temporary buffer, if existing. Don't handle trailing prompt. (tramp-open-connection-setup-interactive-shell): Use `tramp-temp-buffer-name'. 2008-06-29 Michael Albinus * tramp-ftp.el (tramp-ftp-file-name-handler): Revert patch from 2008-06-28. It does not work on W32. 2008-06-28 Michael Albinus * tramp.el (tramp-handle-file-modes): Handle symlinks. (tramp-convert-file-attributes): Convert symlinks only when returned from `tramp-handle-file-attributes-with-stat'. * tramp-ftp.el (top): Delete 'ange-ftp property from `substitute-in-file-name' when unloading. (tramp-ftp-file-name-handler): Set `tramp-mode' to nil. 2008-06-21 Glenn Morris * tramp-smb.el: Require 'cl when compiling. 2008-06-15 Michael Albinus * tramp.el (tramp-handle-start-file-process): Clear modification time of the connection buffer. (tramp-sh-file-name-handler): Reset `tramp-locked' in case of error. (tramp-open-connection-setup-interactive-shell): Flush cache, and restart `tramp-maybe-open-connection' when the remote system has been changed. Throw 'uname-changed event. (tramp-maybe-open-connection): Catch it. * tramp-cmds.el (tramp-cleanup-all-connections): Reset `tramp-locked'. 2008-05-25 Michael Albinus * tramp.el (top): Quote feature names. Remove `tramp-rfn-eshadow-setup-minibuffer' from `rfn-eshadow-setup-minibuffer-hook' when unloading. (tramp-read-passwd): There is only one call to `auth-source-user-or-password' needed. Pacify byte compiler. 2008-05-17 Glenn Morris * tramp.el (top-level): Load auth-source when compiling. 2008-05-16 Michael Albinus * tramp.el (tramp-handle-write-region): Fix check for short track. Reported by Glenn Morris . 2008-05-15 Michael Albinus * tramp.el (tramp-file-name-for-operation): Add `make-temp-name'. 2008-05-14 Teodor Zlatanov * tramp.el: Load auth-source library. (tramp-read-passwd): Use it for password, not login. 2008-05-14 Michael Albinus * tramp.el (tramp-echo-mark): Update docstring. (tramp-echo-mark-marker): New defconst. (tramp-check-for-regexp): Use it. 2008-04-28 Michael Albinus * tramp.el (tramp-mode): New defcustom. (tramp-file-name-handler, tramp-completion-file-name-handler): Use it. (tramp-replace-environment-variables): Handle "$$". 2008-04-27 Michael Albinus * tramp.el (tramp-handle-make-symbolic-link) (tramp-handle-file-name-directory) (tramp-handle-file-name-nondirectory, tramp-handle-file-truename) (tramp-do-copy-or-rename-file-directly) (tramp-handle-insert-directory, tramp-handle-expand-file-name) (tramp-handle-substitute-in-file-name) (tramp-handle-insert-file-contents, tramp-handle-write-region) * tramp-cache.el (tramp-get-file-property) (tramp-set-file-property, tramp-flush-file-property) (tramp-flush-directory-property) * tramp-compat.el (tramp-compat-make-temp-file) * tramp-fish.el (tramp-fish-handle-expand-file-name): Disable `file-name-handler-alist' when handling localname. It could have a remote file syntax, like a VMS file name. 2008-04-27 Michael Albinus * tramp.el (tramp-replace-environment-variables): New defun. (tramp-handle-substitute-in-file-name, tramp-file-name-handler): Use it. 2008-04-24 Michael Albinus * tramp.el (tramp-get-remote-stat): Test whether stat supports %s. Reported by Loris Bennett . 2008-04-09 Michael Albinus * tramp.el (tramp-find-file-name-coding-system-alist): New defun. (tramp-handle-insert-file-contents, tramp-handle-write-region): Use it. 2008-04-07 Michael Albinus * tramp.el (tramp-methods): Fix again tramp-copy-args of "pscp" and "psftp". Reported by Gilles Pion . 2008-04-04 Stefan Monnier * tramp.el (after-init-hook): Don't wrap a lambda around tramp-register-completion-file-name-handler. 2008-04-03 Glenn Morris * tramp.el (tramp-drop-volume-letter): Move definition before use. 2008-04-02 Michael Albinus * tramp.el (tramp-make-tramp-temp-file): Use `tramp-drop-volume-letter' for the local file name part. 2008-03-30 Michael Albinus * tramp.el (tramp-do-copy-or-rename-file): Fix check for overwriting when NEWNAME is a local file. 2008-03-29 Michael Albinus Version 2.1.13 released. * tramp-ftp.el: Require 'cl when byte-compiling. 2008-03-21 Michael Albinus * tramp.el (tramp-methods): Fix tramp-copy-args of "pscp" and "psftp". 2008-03-19 Michael Albinus * tramp.el (tramp-let-maybe): Removed. (tramp-drop-volume-letter): Don't use `replace-regexp-in-string'. It does not exist under XEmacs. (tramp-handle-file-truename, tramp-handle-expand-file-name) (tramp-completion-file-name-handler): Let-bind `directory-sep-char'. * tramp-fish.el (tramp-fish-handle-expand-file-name): Let-bind `directory-sep-char'. 2008-03-19 Glenn Morris * tramp.el (tramp-drop-volume-letter): Evaluate when compiling. (tramp-handle-shell-command): Use condition-case rather than ignore-errors. 2008-03-17 Michael Albinus * tramp.el (tramp-root-regexp): Simplify. (tramp-completion-file-name-regexp-separate): Don't insist on leading "[". This prevents method or user or host completion. (tramp-let-maybe): Autoload it. (tramp-drop-volume-letter): Don't autoload. When not on W32, it is an alias for `identity'. (tramp-handle-write-region): Protect `last-coding-system-used' over the trailing statements. (tramp-completion-file-name-handler-post-function): Removed. (tramp-completion-file-name-handler): Let-bind `directory-sep-char' instead of calling `tramp-drop-volume-letter'. * tramp.el (top): * tramp-efs.el (top): * tramp-util.el (top): * tramp-uu.el (top): * trampver.el.in (top): Move coding cookie at the end. 2008-03-17 Stefan Monnier * tramp.el (tramp-completion-mode-p): Don't use char-equal for elements which may be something else than characters. 2008-03-15 Michael Albinus * tramp.el (tramp-root-regexp): New defconst. (tramp-completion-file-name-regexp-unified) (tramp-completion-file-name-regexp-separate) (tramp-completion-file-name-regexp-url): Use it. (tramp-do-copy-or-rename-file-via-buffer): Set `enable-multibyte-characters' to nil. Set `jka-compr-inhibit' to t for `insert-file-contents-literally'. (tramp-drop-volume-letter): Rewrite, using `tramp-root-regexp'. Autoload it. (tramp-completion-file-name-handler-post-function): New defconst. (tramp-completion-file-name-handler): Use it. (tramp-maybe-open-connection): Update calls to `tramp-flush-connection-property' for removed 2nd argument. * tramp-util.el (tramp-advice-file-remote-p): Protect by `save-match-data'. 2008-02-09 Michael Olson * tramp.el (tramp-process-sentinel): Avoid error when process buffer has been killed, such as by `tramp-cleanup-all-connections'. 2008-02-05 Glenn Morris * tramp-cmds.el (tramp-cleanup-connection): Update calls to tramp-flush-connection-property for removed 2nd argument. 2008-02-03 Michael Albinus * tramp.el (tramp-process-sentinel): New defun. (tramp-do-copy-or-rename-file-out-of-band) (tramp-maybe-open-connection): Use it as process sentinel. (tramp-handle-delete-directory): Don't use the "-f" option; it isn't portable. (tramp-handle-start-file-process): Echo `tramp-end-of-output' after the command. (tramp-handle-shell-command): Set `mode-line-process' in the asynchronous case. * tramp-cache.el (tramp-flush-connection-property): Remove EVENT. * tramp-fish.el (tramp-fish-maybe-open-connection): * tramp-smb.el (tramp-smb-maybe-open-connection): Use `tramp-process-sentinel' as process sentinel. 2008-01-29 Michael Albinus * tramp.el (tramp-methods): Use "-H" option for "sudo". Suggested by Trent W. Buck . Make ("%h") a single element in "plinkx". (tramp-handle-shell-command): Reuse "*Async Shell Command*" or "*Shell Command Output*" buffers. Check, whether there is already an asynchronous process running. Display always the buffer of the asynchronous process. (tramp-compute-multi-hops): Adapt error message. 2008-01-28 Michael Albinus * tramp.el (tramp-handle-shell-command): Use "/bin/sh -c" for the command. 2008-01-27 Michael Albinus * tramp.el (tramp-compute-multi-hops): In case of su(do)? methods, the host name must be a local host. 2008-01-26 Michael Albinus * tramp.el (tramp-dissect-file-name): Raise an error when Tramp 2.0 syntax is used. Suggested by Trent W. Buck . 2008-01-24 Michael Albinus * tramp.el (tramp-do-copy-or-rename-file): Flush the cache of the source file in case of `rename'. Reported by Pete Forman . 2008-01-23 Michael Albinus * tramp.el (tramp-end-of-output): Add `tramp-rsh-end-of-line' into the regexp. (tramp-find-shell, tramp-open-connection-setup-interactive-shell): Don't send `tramp-rsh-end-of-line' additionally when setting the prompt. (tramp-wait-for-output): Distinguish different prompt formats. (tramp-get-test-nt-command): Don't check for "\n" in the prompt. (tramp-local-host-p): Check whether temp directory is writable. 2008-01-17 Michael Albinus * tramp.el (tramp-remote-process-environment): Set "LC_ALL=C". 2008-01-14 Michael Albinus * tramp.el (tramp-local-host-p): Use `tramp-file-name-host' instead of `tramp-file-name-real-host'. 2008-01-12 Michael Albinus Update copyrights. 2008-01-08 Michael Albinus * tramp.el (tramp-handle-process-file): Handle the case where DESTINATION is a consp with t as car. (tramp-wait-for-output): We shall remove exactly what has been find by the search. 2008-01-04 Michael Albinus * tramp.el (tramp-remote-process-environment): Add "LC_CTYPE=C". Reported by Pete Forman . (tramp-perl-encode, tramp-perl-decode): Update copyrights. 2008-01-04 Glenn Morris * tramp-smb.el (tramp-smb-handle-insert-directory): Use mapc rather than mapcar. 2007-12-23 Michael Albinus Version 2.1.12 released. * tramp.el: New todo item. * tramp-smb.el (tramp-smb-handle-insert-directory): Handle "-F" switch. Reported by Mark T. Kennedy . 2007-12-06 D. Goel * trampver.el.in (x): Fix buggy call to `error'. 2007-12-18 Michael Albinus * tramp-compat.el (top): Require cl only when compiling. Reported by Glenn Morris . 2007-12-17 Michael Albinus * tramp.el (tramp-open-connection-setup-interactive-shell) (tramp-find-shell): Send only single prompt setting commands, in order to avoid double-prompt. 2007-12-04 Glenn Morris * tramp.el: Require password-cache or password. 2007-11-19 Michael Albinus * tramp.el (tramp-open-connection-setup-interactive-shell): Still some tuning in case of an echoing shell. (tramp-send-command): Connection property "remote-echo" is not persistent; cache key is the process therefore. 2007-11-18 Dan Nicolaescu * tramp.el (tramp-terminal-type): Remove duplicated definition. 2007-11-18 Michael Albinus * tramp.el (tramp-completion-reread-directory-timeout): New defcustom. (tramp-handle-file-name-all-completions): Flush directory contents from cache regularly. (tramp-set-auto-save-file-modes): Check also for `buffer-modified-p'. (tramp-open-connection-setup-interactive-shell): Call `tramp-cleanup-connection' via funcall. * tramp-ftp.el (tramp-ftp-file-name-handler): Temp file is already created when copying. 2007-11-12 Michael Albinus * tramp.el (tramp-open-connection-setup-interactive-shell): Check whether the output of "uname -sr" has been changed. 2007-11-08 Michael Albinus * tramp.el (tramp-maybe-open-connection): Use a local copy of `process-environment'. 2007-11-07 Michael Albinus * tramp.el (tramp-handle-substitute-in-file-name): Don't expand the remote connection identification. (tramp-find-shell, tramp-open-connection-setup-interactive-shell): Set also $PS2 and $PS3 when setting $PS1. Check for shell echoing before calling stty. * tramp-cache.el (tramp-cache-print) (tramp-dump-connection-properties): Fix docstring. (tramp-list-connections): Renamed from `tramp-cache-list-connections'. * tramp-cmds.el (tramp-cleanup-connection): Apply it. * tramp-ftp.el (tramp-ftp-file-name-handler): Don't expand the remote connection identification when setting connection property. * tramp-smb.el (tramp-smb-handle-substitute-in-file-name): "//" substitutes only in the local filename part. 2007-11-06 Michael Albinus * tramp.el (top): Don't autoload `tramp-cache-print'. * tramp-cache (tramp-cache-print): Move down. (tramp-cache-list-connections): New defun. * tramp-cmds.el (tramp-cleanup-connection): Use it. 2007-11-05 Michael Albinus * tramp.el (tramp-wait-for-output): Ignore escape sequences in the prompt. 2007-10-31 Michael Albinus * tramp.el (tramp-handle-shell-command): Call `start-file-process' directly. Fix bug in deleting temp file. 2007-10-30 Michael Albinus * tramp.el (tramp-maybe-open-connection): Set $LC_ALL to "C". * tramp-cache.el (tramp-flush-file-function): Check also `default-directory' if `buffer-file-name' does not return a string. Added to `eshell-pre-command-hook'. 2007-10-27 Michael Albinus * tramp.el (tramp-wrong-passwd-regexp): Tune regexp. (tramp-get-remote-tmpdir): New defun. (tramp-make-tramp-temp-file): Use it. (tramp-local-call-process): New defun. Replace all calls of `call-process' by this when appropriate. (tramp-handle-write-region): Replace calls of `file-attributes' by `tramp-compat-file-attributes'. (tramp-find-shell, tramp-open-connection-setup-interactive-shell): Make the first command a `tramp-send-command' call, with let-bind of `tramp-end-of-output'. (tramp-version, tramp-bug, tramp-reporter-dump-variable) (tramp-load-report-modules, tramp-append-tramp-buffers): Move to tramp-cmds.el. * tramp-fish.el (tramp-fish-handle-copy-file) (tramp-fish-do-copy-or-rename-file) (tramp-fish-do-copy-or-rename-file-directly): * tramp-smb.el (tramp-smb-handle-copy-file): Add parameter PRESERVE-UID-GID. 2007-10-23 Michael Albinus * tramp.el (tramp-set-file-uid-gid): Protect `call-process' when we are local. 2007-10-22 Michael Albinus * tramp.el (tramp-find-shell) (tramp-open-connection-setup-interactive-shell): Improve sending initial commands. (tramp-action-terminal): Send debug message. (tramp-wait-for-shell-prompt, tramp-send-command-internal): Removed. (tramp-barf-if-no-shell-prompt): Insert code of `tramp-wait-for-shell-prompt'. * tramp-util.el (tramp-PC-expand-many-files): New defun. (tramp-advice-PC-expand-many-files): Defadvice moved from tramp.el. 2007-10-22 Sean O'Rourke (tiny change) * tramp.el (tramp-handle-expand-many-files): Remove. (PC-expand-many-files): Remove advice. 2007-10-21 Michael Albinus * tramp.el (tramp-do-copy-or-rename-file-directly): Make more rigid checks. (tramp-handle-insert-file-contents): Don't raise a tramp-error but a signal, in order to give the callee a chance to suppress. (tramp-handle-write-region): Set owner also in case of short track. Don't use compatibility calls for `write-region' anymore. 2007-10-18 Johan Bockgård * tramp.el (tramp-rfn-eshadow-update-overlay): Save excursion. Use `save-restriction' rather than `widen'. 2007-10-17 Michael Albinus * Makefile.in (LISP_FILES): Add tramp-cmds.el. * tramp.el (top): Put load of all tramp-* files into a dolist. Require tramp-cmds.el. (tramp-clear-passwd): Add parameter VEC. Adapt all callees. (tramp-append-tramp-buffers): Apply `tramp-list-tramp-buffers'. * tramp-cmds.el: New file. * tramp-gw.el (tramp-gw-basic-authentication): Apply VEC to `tramp-clear-passwd'. 2007-10-15 Michael Albinus * tramp.el (tramp-handle-file-name-all-completions): Expand DIRECTORY. (tramp-handle-dired-recursive-delete-directory): Call "rm -rf". 2007-10-14 Michael Albinus * tramp.el (tramp-make-tramp-temp-file): We can get rid of DONT-CREATE. (tramp-do-copy-or-rename-file-out-of-band) (tramp-maybe-open-connection): Use `make-temp-name'. This is possible, because we don't need to create the temporary file, but we need a prefix for ssh, which has its own temporary file handling. (tramp-handle-delete-directory): Add "-f" to rmdir. * tramp-util.el (top): Check for `tramp-handle-start-file-process', not its symbol-function. 2007-10-10 Michael Albinus Version 2.1.11 released. * tramp.el (tramp-open-connection-setup-interactive-shell): Pacify byte compiler. 2007-10-08 Michael Albinus * tramp.el (tramp-find-foreign-file-name-handler): Check also host. (tramp-maybe-send-script): Apply `member' but `memq'. (tramp-advice-file-expand-wildcards): Simplify implementation. 2007-10-06 Michael Albinus * tramp.el (top): Move loading of tramp-util.el and tramp-vc.el to tramp-compat.el. (tramp-make-tramp-temp-file): Complete rewrite. Create remote temporary file if possible, in order to avoid a security hole. (tramp-do-copy-or-rename-file-out-of-band) (tramp-maybe-open-connection): Call `tramp-make-tramp-temp-file' with DONT-CREATE, because the connection is not setup yet. (tramp-handle-process-file): Rewrite temporary file handling. (tramp-completion-mode): New defvar. (tramp-completion-mode-p): Use it. * tramp-compat.el (top): Load tramp-util.el and tramp-vc.el. * tramp-fish.el (tramp-fish-handle-process-file): Rewrite temporary file handling. 2007-10-04 Michael Albinus * tramp.el (tramp-make-temp-file): Move to tramp-compat.el. (tramp-do-copy-or-rename-file-directly): Handle tmpfile only in the cond clauses where needed. (tramp-handle-write-region): Rearrange code for proper handling of tmpfile. * tramp-compat.el (tramp-compat-make-temp-file): New defsubst. * tramp.el: * tramp-fish.el: * tramp-ftp.el: * tramp-smb.el: Rename `tramp-make-temp-file' to `tramp-compat-make-temp-file'. 2007-10-03 Michael Albinus * tramp.el (top): Add tramp-compat to `tramp-unload-hook'. (tramp-file-name-handler-alist): Add `tramp-handle-insert-file-contents-literally'. Needed for XEmacs. (tramp-make-temp-file): Use `make-temp-name'. `make-temp-file', used before, creates the file already, which is not desired. (tramp-do-copy-or-rename-file-directly): Simplify handling of temporary file. (tramp-handle-insert-file-contents): Assign the result in the short track case. (tramp-handle-insert-file-contents-literally): New defun. (tramp-completion-mode-p): Revert change from 2007-09-24. Checking for `return' etc as last character is not sufficient, for example in dired-mode when entering (revert-buffer) or (dired-sort). * tramp-compat.el (top): Add also compatibility code for loading appropriate timer package. (tramp-compat-copy-tree): Check for `subrp' and `symbol-file' in order to avoid autoloading problems. * tramp-efs-el: * tramp-fish.el: * tramp-smb.el: Move further compatibility code to tramp-compat.el. * tramp-ftp.el (tramp-ftp-file-name-handler): Handle the case where the second parameter of `copy-file' or `rename-file' is a remote file but not via ftp. * tramp-util.el: Remove `tramp-minor-mode' and its declarations. 2007-09-30 Michael Albinus * Makefile.in (LISP_FILES): Add tramp-compat.el. * tramp-compat.el: New file. * tramp.el: * tramp-fish.el: * tramp-smb.el: * tramp-uu.el: * tramp-vc.el: * trampver.el.in: Move compatibility code to tramp-compat.el. Apply `mapc' instead of `mapcar' when the code needs side effects only. Move utf-8 coding cookie to the second line. 2007-09-28 Michael Albinus * tramp.el (with-file-property, with-connection-property): Highlight as keyword. (tramp-rfn-eshadow-setup-minibuffer) (tramp-rfn-eshadow-update-overlay, tramp-handle-set-file-times) (tramp-set-file-uid-gid, tramp-do-copy-or-rename-file-via-buffer) (tramp-do-copy-or-rename-file-directly) (tramp-do-copy-or-rename-file-out-of-band) (tramp-handle-shell-command, tramp-get-debug-buffer) (tramp-send-command-and-read, tramp-equal-remote) (tramp-get-local-gid): Pacify byte-compiler. (tramp-handle-file-name-directory): Result shall not be expanded. (tramp-find-foreign-file-name-handler): Rewrite. (tramp-dissect-file-name): Add optional parameter NODEFAULT. * tramp-cache.el (tramp-cache-print): Pacify byte-compiler. * tramp-fish.el (tramp-fish-handle-expand-file-name): Apply `tramp-completion-mode-p'. (tramp-fish-handle-set-file-times) (tramp-fish-handle-executable-find) (tramp-fish-handle-process-file, tramp-fish-get-file-entries) (tramp-fish-retrieve-data): Pacify byte-compiler. * tramp-gw.el (tramp-gw-basic-authentication): Call `tramp-read-passwd' with first parameter `nil'. * tramp-util.el (process-file): Add a defalias if function does not exist. (tramp-gud-file-name, gud-find-file): Pacify byte-compiler. * tramp-vc.el (tramp-vc-user-login-name): Apply `set-file-times' instead of `tramp-touch'. * Makefile.in (top): Handle `datarootdir'. 2007-09-27 Michael Albinus * tramp.el (tramp-maybe-open-connection): Make test for alive connection more robust. 2007-09-24 Michael Albinus * tramp.el (tramp-completion-mode-p): Rename from `tramp-completion-mode'. Revert logic, check `return', `newline' and such alike. Packages like Icicles tend to use other completion characters but `tab' and `space' only. 2007-09-21 Michael Albinus * tramp.el (tramp-rfn-eshadow-overlay): New defvar. (tramp-rfn-eshadow-setup-minibuffer) (tramp-rfn-eshadow-update-overlay): New defuns. * tramp-smb.el (tramp-smb-errors): Add error message for call timeout. 2007-09-09 Michael Albinus * tramp.el (top): Remove declarations of `tramp-gw-*' symbols, they are useless with the byte compiler. (tramp-make-temp-file, tramp-make-tramp-temp-file): Move up. (tramp-do-copy-or-rename-file-directly): Rearrange let-bindings. (tramp-compute-multi-hops): Mask `tramp-gw-*' symbols. (tramp-file-name-real-host, tramp-file-name-port) (tramp-find-method, tramp-find-user, tramp-find-host): Make them defuns. 2007-09-06 Ville Skyttä (tiny change) * tramp-vc.el (tramp-vc-user-login-name): Use `vc-find-version' instead of `process-file' to check whether we have a new enough vc that doesn't need the defadvice. 2007-09-04 Michael Albinus * tramp-cache.el (top): Improve error message when `tramp-persistency-file-name' is corrupted. 2007-08-28 Michael Albinus * tramp.el (tramp-handle-set-file-times): Flush the file properties. (tramp-set-file-uid-gid, tramp-get-local-uid) (tramp-get-local-gid): New defuns. (tramp-handle-copy-file): Handle new parameter PRESERVE-UID-GID. (tramp-do-copy-or-rename-file): New parameter PRESERVE-UID-GID. Improve fast track. (tramp-do-copy-or-rename-file-directly): Sync parameter list with the other tramp-do-copy-or-rename-file-* functions. Major rewrite. (tramp-handle-file-local-copy, tramp-handle-insert-file-contents) (tramp-handle-write-region): Improve fast track. (tramp-handle-file-remote-p): IDENTIFICATION can also be 'localname. (tramp-maybe-open-connection): Let `process-adaptive-read-buffering' be nil. * tramp-util.el (tramp-advice-process-file): Rename from `tramp-advice-call-process'. (tramp-advice-call-process-shell-command): Correct doc string. 2007-08-24 Michael Albinus * tramp.el (tramp-local-host-p): New defun. (tramp-handle-file-local-copy, tramp-handle-write-region): Implement fast track when being on the local host. (tramp-file-name-handler): Don't set "started" property. It shall be reserved for the "ftp" method. (tramp-make-copy-program-file-name): Use `tramp-file-name-real-host'. * tramp-ftp.el (top): Autoload `tramp-set-connection-property'. (tramp-ftp-file-name-handler): Set "started" property. 2007-08-22 Michael Albinus * tramp.el (tramp-get-remote-path): New defun. Replace occurences of `tramp-default-remote-path' by this function. (tramp-set-remote-path): Move most of the code to `tramp-get-remote-path'. (tramp-get-ls-command, tramp-get-remote-id): Don't check for not existing directories, this is done already in `tramp-get-remote-path'. 2007-08-14 Michael Albinus * tramp.el (top): Require cl.el when `copy-tree' is not available otherwise. 2007-08-07 Michael Albinus * tramp.el (tramp-handle-shell-command): Handle OUTPUT-BUFFER and ERROR-BUFFER more robust. Display output. * tramp-cache.el (top): Read persistent connection history when cache is empty. 2007-08-07 Nic Ferrier (tiny change) * tramp.el (tramp-handle-process-file): Fix bug inserting resulting output. 2007-08-01 Michael Albinus * tramp.el (tramp-file-name-handler): Add a connection property when we found a foreign file name handler. This allows backends like ftp to profit also from usr/host name completion based on connection cache. 2007-07-30 Michael Albinus * tramp.el (tramp-wrong-passwd-regexp): Make the regexp more global matching. (tramp-send-command-and-read): Search for trash after the regexp until eol only. In XEmacs, there is a problem with \n. 2007-07-29 Michael Albinus * Makefile.in: * tramp.el: * tramp-efs.el: * tramp-util.el: * tramp-uu.el: * trampver.el.in: Use utf-8 encoding with coding cookie. * tramp-cache.el: * tramp-fish.el: * tramp-ftp.el: * tramp-gw.el: * tramp-smb.el: Remove coding cookie. * tramp.el (tramp-handle-verify-visited-file-modtime): Flush buffer file-name's file property. (tramp-handle-file-remote-p): The first parameter is FILENAME. 2007-07-23 Michael Albinus * tramp.el (tramp-perl-file-attributes) (tramp-perl-directory-files-and-attributes) (tramp-handle-file-attributes-with-stat) (tramp-handle-directory-files-and-attributes-with-stat) (tramp-convert-file-attributes): Handle huge file sizes. 2007-07-22 Michael Albinus Version 2.1.10 released. * tramp.el (tramp-get-ls-command): Fix typo. 2007-07-17 Michael Albinus * tramp.el (tramp-handle-file-remote-p): Handle optional parameter IDENTIFICATION. * tramp-util.el (tramp-advice-file-remote-p): Handle optional parameter IDENTIFICATION. 2007-07-16 Michael Albinus * tramp.el (tramp-handle-set-file-times): New defun. Replaces `tramp-touch'. (tramp-file-name-handler-alist, tramp-file-name-for-operation): Add entry for `set-file-times'. (tramp-do-copy-or-rename-file-via-buffer) (tramp-do-copy-or-rename-file-out-of-band): Use `set-file-times'. (tramp-handle-unhandled-file-name-directory): Rewrite. (tramp-convert-file-attributes): Add error handling when inode is extraordinary big. (tramp-get-inode): Change parameter from FILE to VEC. * tramp-fish.el (tramp-fish-file-name-handler-alist): Add entry for `set-file-times'. Rename `start-process' into `start-file-process'. Remove `call-process' entry. (tramp-fish-handle-set-file-times): New defun. (tramp-fish-handle-executable-find): Use `process-file'. (tramp-fish-handle-process-file): New defun. Replaces `tramp-fish-handle-call-process'. (tramp-fish-do-copy-or-rename-file-directly): Use `set-file-times'. (tramp-fish-get-file-entries): Change `tramp-get-inode' parameter. * tramp-smb.el (tramp-smb-handle-file-attributes): Change `tramp-get-inode' parameter. * tramp-util.el (all): Change all checks to (fboundp 'start-file-process). (set-file-times): Add a defalias if function does not exist. 2007-07-15 Michael Albinus * tramp.el (tramp-methods, tramp-find-shell) (tramp-open-connection-setup-interactive-shell) (tramp-maybe-open-connection): Guard against $PROMPT_COMMAND shell var. Reported by Steve Youngs . (tramp-handle-start-file-process ): Use (current-buffer) if BUFFER is NIL. This is according to the specification. Goto (point-max) when ready. (tramp-handle-shell-command): Rewrite completely, using `process-file' and `start-file-process'. (tramp-touch): Don't use variable expansion when calling `shell-command'. 2007-07-08 Michael Albinus * tramp.el (tramp-handle-file-remote-p): Handle optional parameter CONNECTED. * tramp-util.el (tramp-advice-file-remote-p): Handle optional parameter CONNECTED. (all): Use `unhandled-file-name-directory' where appropriate. 2007-07-07 Michael Albinus * Makefile.in (EMACS_UTILS): New variable. (LISP_FILES): Add tramp-util.el and tramp-vc.el depending on $EMACS_UTILS. 2007-07-01 Michael Albinus * Makefile.in: * tramp-cache.el: * tramp-efs.el: * tramp-fish.el: * tramp-ftp.el: * tramp-gw.el: * tramp-uu.el: * tramp-vc.el: * trampver.el.in: Migrate to GPLv3 license. * tramp.el: Migrate to GPLv3 license. Don't require base64.el. Require tramp-util.el and tramp-vc only if `start-file-process' is not fbound. (tramp-md5-function): Removed. Call `md5' directly. (tramp-file-name-handler-alist): Add `start-file-process'. Remove `start-process' and `call-process'. (tramp-handle-start-file-process): Renamed from `tramp-handle-start-process'. (tramp-handle-process-file): Implementation taken from `tramp-handle-call-process'. (tramp-handle-call-process): Removed. (tramp-file-name-for-operation): Add `start-file-process'. (tramp-open-connection-setup-interactive-shell): Don't set "last-cmd-time" property. * tramp-smb.el: Migrate to GPLv3 license. (tramp-smb-errors): Add error message for connection timeout. (tramp-smb-maybe-open-connection): Check for error messages. * tramp-util.el: Migrate to GPLv3 license. (tramp-advice-start-process): Call `tramp-handle-start-file-process'. 2007-06-20 Michael Albinus * tramp.el: * tramp-cache.el: * tramp-fish.el: * tramp-smb.el: * tramp-util.el: Use `expand-file-name' instead of `concat' where appropriate. * tramp.el (tramp-action-yesno, tramp-action-yn): Protect `pop-to-buffer' by `save-match-data'. 2007-06-17 Michael Albinus * tramp.el: * tramp-fish.el: * tramp-smb.el: Unify "Tramp" in strings. * tramp.el (tramp-handle-substitute-in-file-name): "//" and "/~" substitute only in the local filename part. Suggested by Peter Gordon . (tramp-advice-minibuffer-electric-separator) (tramp-advice-minibuffer-electric-tilde): New defadvices. (tramp-append-tramp-buffers): Replace "sensible" by "sensitive" in the hint. 2007-06-10 Michael Albinus * tramp.el (tramp-handle-insert-file-contents): VISIT must be handled after insertion of the local copy. Reported by Peter Gordon . 2007-05-31 Michael Albinus * tramp-cache.el (tramp-persistency-file-name): Check also for `user-emacs-directory' and `user-init-directory'. * tramp-gw.el (tramp-gw-open-connection): Apply `vector' instead of `make-tramp-file-name'. * tramp-util.el (all): Quote the function names in `tramp-util-unload-hook' if they aren't symbols yet. (tramp-advice-before-ediff-exec-process): New defadvice. 2007-05-27 Michael Albinus * tramp.el: * tramp-ftp.el: * tramp-smb.el: * tramp-util.el: * tramp-vc.el: Don't load cl.el, because that pollutes the namespace. Replace cl macros by their implementations where necessary. Requested by Richard Stallman . * tramp.el (tramp-file-name-p, tramp-file-name-method) (tramp-file-name-user, tramp-file-name-host) (tramp-file-name-localname): New defuns, replacing defstruct `tramp-file-name'. (tramp-completion-dissect-file-name1, tramp-compute-multi-hops) (tramp-dissect-file-name): Apply `vector' instead of `make-tramp-file-name'. (tramp-do-copy-or-rename-file-out-of-band): Aset 3rd index instead of 4th when setting localname. (tramp-compute-multi-hops): Aset 2nd index instead of 3rd, when setting host. * tramp-cache.el (all): Aset 3rd index instead of 4th, when unifying localname. 2007-05-22 Michael Albinus * tramp.el (tramp-handle-expand-file-name): * tramp-fish.el (tramp-fish-handle-expand-file-name): Key for home directory cache entry must distinguish different users. Reported by Gilles Pion . 2007-04-23 Michael Albinus * tramp.el: New todo items. (tramp-default-user): Mark the variable as obsolete in the docstring. 2007-04-22 Michael Albinus * tramp.el (tramp-methods): "plinkx" loads a session. No default port. (tramp-default-user-alist): No default user for "plinkx". (tramp-completion-function-alist-putty): New defconst. (tramp-completion-function-alist): Add "plinkx" completion. (tramp-set-completion-function): Handle also registry keys. (tramp-parse-putty, tramp-parse-putty-group): New defuns. (tramp-action-login): Trace login prompt. 2007-04-19 Michael Albinus * tramp.el (tramp-methods): New method "plinkx". (tramp-default-user-alist): Add default user for "plink" methods. (tramp-action-login): Read user name interactively when nil. 2007-04-15 Pete Forman (tiny change) * tramp.el (tramp-default-user): Fix typo in docstring. Value can also be nil. 2007-04-12 Michael Albinus * tramp.el (top): Make `set-buffer-multibyte' an alias if it doesn't exist. (tramp-handle-directory-files-and-attributes-with-stat) (tramp-handle-file-attributes-with-stat): Return inode as real number. (tramp-convert-file-attributes): Convert inode into a list of two integers. Reported by Pete Forman . 2007-04-08 Michael Albinus Version 2.1.9 released. * tramp.el (tramp-buffer-name, tramp-debug-buffer-name): We must use `tramp-file-name-real-host', because for gateway methods the default port will be expanded later on, which would tamper the name. (tramp-completion-mode): `last-input-event' is nil when XEmacs is started. 2007-04-06 Michael Albinus * tramp.el (tramp-compute-multi-hops): Fix error in setting hop. 2007-04-03 Michael Albinus * tramp.el (tramp-message): Don't print "Error" in level 1, this is part of the message already. (tramp-error-with-buffer, tramp-action-yesno, tramp-action-yn): Let `enable-recursive-minibuffers' be t, in case we need `pop-to-buffer' during editing of the minibuffer. (tramp-barf-if-no-shell-prompt): Apply `tramp-error-with-buffer'. 2007-03-31 Michael Albinus * tramp.el (top): Don't require 'tramp-cache, it results in an endless loop. Autoload needed functions instead. Declare needed gateway symbols when tramp-gw cannot be loaded. (with-parsed-tramp-file-name): Simplify `edebug-form-spec'. (with-file-property, with-connection-property): New defmacros, moved from tramp-cache. This was necessary, because macros cannot be autoloaded. (tramp-register-file-name-handler) (tramp-register-completion-file-name-handler): New defsubst, derived from `tramp-register-file-name-handlers'. The split is necessary because Tramp's file name handlers must be registered at different startup places. * tramp-cache.el (with-file-property, with-connection-property): Move them to tramp.el. 2007-03-31 Joachim Schrod (tiny change) * tramp.el (tramp-completion-mode): `last-input-event' may have no character approximation. 2007-03-26 Michael Albinus * tramp.el (tramp-handle-expand-file-name): Don't apply `tramp-drop-volume-letter' for non-Tramp files. 2007-03-25 Michael Albinus * Makefile.in: Add gateway support. * tramp.el (top): Require tramp-gw conditionally only. (tramp-methods): Add port spec to "plink", "plink1" and "pscp" methods. 2007-03-21 Michael Albinus * tramp.el (tramp-handle-make-auto-save-file-name): Apply `tramp-temporary-file-directory' for compatibility reasons. 2007-03-19 Michael Albinus * tramp.el (tramp-handle-directory-files-and-attributes-with-stat) (tramp-handle-file-name-all-completions): Add "-b" to the "ls" command in order to handle file names with spaces. 2007-03-08 Michael Albinus * tramp.el (tramp-methods): Extend doc string by description of `tramp-default-port' and `tramp-gw-args'. (tramp-enter-password): Remove `inhibit-trace'. It is handled by description in the manual now. (tramp-maybe-open-connection): Fix small error in gateway handling. 2007-03-07 Michael Albinus * tramp.el (tramp-methods): Add port spec to "telnet" method. (tramp-do-copy-or-rename-file-out-of-band): Complete gateway implementation. (tramp-handle-insert-directory): Check (featurep 'ls-lisp). (tramp-make-tramp-temp-file): Use `emacs-pid' if there is no running process yet. (tramp-compute-multi-hops): New defun. Code extracted from `tramp-maybe-open-connection'. (tramp-maybe-open-connection): Code adapted accordingly. * tramp-gw.el (tramp-gw-gw-proc-sentinel): Companion process might not exist. (tramp-gw-open-network-stream, tramp-gw-basic-authentication): Clean password cache in error case only. 2007-03-05 Michael Albinus * tramp.el (tramp-methods): Add gateway parameter to "scp", "scp1", "scp2", "scpc", "scpx", "sshx". (tramp-do-copy-or-rename-file-out-of-band): Start implementation for gateways. It is not finished yet. (tramp-make-copy-program-file-name): Change parameter to VEC. (tramp-make-temp-file): New parameter FILENAME. Append its extension to the resulting temporary file name. (tramp-handle-file-local-copy, tramp-handle-write-region): Apply it. * tramp-smb.el (tramp-smb-handle-file-local-copy) (tramp-smb-handle-write-region): Apply it. * tramp-fish.el (tramp-fish-handle-file-local-copy): Apply it. 2007-02-28 Michael Albinus * tramp.el (tramp-error-with-buffer): Use `sit-for'. * tramp-gw.el (tramp-gw-vector, tramp-gw-gw-proc): Renamed from `tramp-gw-current-vector' and `tramp-gw-current-gw-proc'. (tramp-gw-gw-vector): New defvar. (tramp-gw-gw-proc-sentinel): New defun. (tramp-gw-open-connection): Use an independent buffer name for auxiliary process. Set process sentinel for `tramp-gw-gw-proc'. 2007-02-27 Michael Albinus * tramp.el (tramp-error-with-buffer): New defsubst. Apply it wherever there is `pop-to-buffer', followed by `tramp-error'. (tramp-maybe-open-connection): Rename `tramp-gw-http-method' to `tramp-gw-tunnel-method'. * tramp-gw.el (tramp-gw-tunnel-method) (tramp-gw-default-tunnel-port): Renamed from `tramp-gw-http-method' and `tramp-gw-default-http-port', respectively. Apply it everywhere. (tramp-gw-open-connection): Improve doc-string. Use only type 5 for `socks-server', we have our own 'http implementation. (tramp-gw-open-network-stream): Improve error handling. (tramp-gw-basic-authentication): Bind `tramp-current-*' locally because of password cache key. 2007-02-26 Michael Albinus * tramp.el (tramp-methods): Add "StrictHostKeyChecking=no" to `tramp-gw-args' of ssh, ssh1 and ssh2 methods. (tramp-maybe-open-connection): Implement changed interface of `tramp-gw-open-connection'. (tramp-send-eof): Removed. (tramp-file-name-real-host, tramp-file-name-port): New defsubst. (tramp-read-passwd): New parameter PROMPT. * tramp-gw.el: Complete rewrite. Use socks.el for SOCKS server; implement HTTP tunnels on its own. 2007-02-15 Michael Albinus * tramp-gw.el (tramp-gw-current-gw-vector) (tramp-gw-current-http-buffer): New defvars. (tramp-advice-url-http-parse-response) (tramp-advice-url-http-create-request, tramp-gw-aux-proc-sentinel) (tramp-gw-open-connection): Make them fit for proxy authentication. 2007-02-14 Michael Albinus * Makefile.in: Add tramp-gw.el * tramp-gw.el: New package. * tramp.el (top): Require tramp-gw. (tramp-methods): Add `tramp-gw-args' and `tramp-default-port' for ssh and telnet methods. (tramp-message): Catch errors. (tramp-action-yesno, tramp-action-yn): Trace messages. (tramp-maybe-open-connection): Handle gateways. (tramp-read-passwd): New parameter PROC. Used in order to improve password prompt. Adapt callees. 2007-02-01 Michael Albinus * tramp-cache.el (tramp-flush-file-function): Renamed from `tramp-cache-before-revert-function'. Added to `kill-buffer-hook'. 2007-01-31 Michael Albinus * tramp-smb.el (tramp-smb-handle-insert-directory) * tramp.el (tramp-handle-insert-directory): Fix wildcard case. 2007-01-28 Michael Albinus * tramp-util.el (top): Add defadvices for `browse-url-*'. 2007-01-21 Glenn Morris * tramp.el (tramp-perl-encode, tramp-perl-decode): Update copyrights. 2007-01-18 Michael Albinus * tramp.el (with-parsed-tramp-file-name): Protect debug spec during compilation. (tramp-handle-expand-file-name, tramp-find-method) (tramp-find-user, tramp-find-host): Don't check for `tramp-completion-mode'. (tramp-find-foreign-file-name-handler): Check also for `tramp-completion-mode' and `tramp-completion-file-name-regexp'. (tramp-completion-mode): Variable removed. Also all occurencies. (tramp-completion-handle-file-name-all-completions): Don't call `tramp-run-real-handler'. (tramp-make-tramp-file-name): It must return always a well-formed Tramp file name. (tramp-completion-make-tramp-file-name): New defun. (tramp-get-completion-methods, tramp-get-completion-user-host): Apply it. 2007-01-15 Michael Albinus * tramp.el (tramp-handle-start-process): BUFFER can be nil. * tramp-util.el (top): Add defadvice for `ispell-start-process'. 2007-01-14 Michael Albinus Version 2.1.8 released. 2007-01-13 Michael Albinus * tramp.el (top): Change declaration of `with-temp-message' if it doesn't exist. (tramp-buffer-name, tramp-debug-buffer-name) (tramp-make-tramp-file-name, tramp-make-copy-program-file-name): Check also for empty USER. * tramp-smb.el (tramp-smb-actions-with-share): (tramp-smb-actions-without-share): New defconst. (tramp-smb-open-connection): Removed. Code merged into `tramp-smb-maybe-open-connection'. Use new defconst. 2007-01-12 Michael Albinus * tramp.el (top): Declare `with-temp-message' if it doesn't exist. 2007-01-11 Michael Albinus * tramp.el (tramp-actions-copy-out-of-band): `tramp-copy-failed-regexp' calls `tramp-action-permission-denied'. (tramp-handle-file-local-copy): Set `enable-multibyte-characters' to nil. Reported by Chris Moore . (tramp-handle-write-region): Compute file size as difference between END and START. (tramp-touch): In case of 'tramp-sh-file-name-handler, apply `tramp-send-command', which is more efficient. Check, whether `format-time-string' is a primitive. (tramp-action-permission-denied, tramp-action-process-alive): Don't apply `pop-to-buffer', this is done centrally. (tramp-action-copy-failed): Removed, not needed anymore. (tramp-get-remote-stat): Hide temporary error message. 2007-01-10 Michael Albinus * tramp.el (tramp-maybe-open-connection): The sent command must ensure that the process terminates, finally. Write the command compatible for shells and w32 COMSPEC. 2007-01-02 Michael Albinus * tramp-fish.el (tramp-fish-handle-write-region): Implement APPEND. (tramp-fish-handle-rename-file) (tramp-fish-handle-copy-file): Error handling is not necessary here, will be done centrally. Apply `tramp-fish-do-copy-or-rename-file'. (tramp-fish-do-copy-or-rename-file) (tramp-fish-do-copy-or-rename-file-directly): New defuns. 2006-12-31 Michael Albinus * tramp.el (tramp-completion-mode): Use `natnump' instead of `wholenump' because of XEmacs. 2006-12-30 Michael Albinus * tramp.el (tramp-file-name-handler-alist): Add handler for `shell-command'. (tramp-handle-shell-command): New defun. (tramp-touch): Don't bind `shell-file-name' locally. * tramp-fish.el (tramp-fish-file-name-handler-alist): Add handler for `shell-command'. * tramp-util.el (tramp-advice-start-process-shell-command) (tramp-advice-call-process-shell-command): Bind `shell-command-switch' locally. 2006-12-29 Michael Albinus * tramp.el (tramp-handle-call-process-region): New defun. (tramp-touch): Use `shell-command' instead of `call-process', in order to make it usable also for the `fish' method. * tramp-fish.el (tramp-fish-handle-insert-file-contents): Move point to the initial place after insertion. (tramp-fish-handle-write-region): Don't send zero length data. * tramp-util.el (tramp-advice-call-process-region): New defadvice. 2006-12-27 Michael Albinus * Makefile.in: Add tramp-fish.el * tramp-fish.el: New package. * tramp.el (top): Require tramp-fish. (tramp-inodes): New defvar. (tramp-handle-expand-file-name): Cache "home-directory". (tramp-get-inode): New defun. * tramp-smb.el (tramp-smb-no-stat, tramp-smb-inodes) (tramp-smb-get-inode): Removed. Apply new names. * tramp-util.el (tramp-advice-executable-find): Add check for `tramp-fish-file-name-handler'. 2006-12-26 Michael Albinus * tramp.el (tramp-action-process-alive) (tramp-wait-for-regexp): Pop connection buffer in case of error. (tramp-exists-file-name-handler): Handle also `default-directory'. (tramp-half-a-year, tramp-parse-time-months): New defconst. Transferred from tramp-smb.el. (tramp-time-less-p, tramp-time-subtract): New defuns. Transferred from tramp-smb.el. (tramp-time-diff): Use them. * tramp-smb.el (tramp-smb-half-a-year) (tramp-smb-parse-time-months, tramp-smb-time-less-p) (tramp-smb-time-subtract): Removed. Apply new names. * tramp-util.el (top): Don't check for file name handlers of `start-process-shell-command' and `call-process-shell-command'. 2006-12-21 Michael Albinus * tramp.el (tramp-completion-mode): Use `wholenump' instead of `integerp'. `char-equal' could fail else in case of negative numbers. Reported by Toby Speight . 2006-12-20 Michael Albinus * tramp.el (tramp-handle-file-name-completion) (tramp-completion-handle-file-name-completion): PREDICATE must be applied on the expanded car's in `try-completion'. 2006-12-20 Michael Albinus * tramp.el (tramp-handle-file-name-completion) (tramp-completion-handle-file-name-completion): Handle optional parameter PREDICATE. 2006-12-19 Michael Albinus * tramp.el (tramp-methods): Introduce new method `scpc'. Remove "ControlMaster" option from the other `scp*' methods. (tramp-default-method): Check for ssh-agent before setting to `scp'. (top): Check for `font-lock-add-keywords' before calling; it doesn't exist under XEmacs. 2006-12-17 Michael Albinus * tramp.el (tramp-default-method): Before setting to "pscp", check whether package password.el is loaded, or Pageant is running. * tramp-smb.el (tramp-smb-errors): Add error messages. 2006-12-14 Michael Albinus * tramp-smb.el (tramp-smb-handle-delete-directory) (tramp-smb-handle-delete-file): Write a more comprehensive error message. Suggested by Tom Wurgler . 2006-12-13 Michael Albinus * tramp-smb.el (tramp-smb-errors): Add error messages. (tramp-smb-handle-directory-files): Fix check for MATCH. 2006-12-11 Michael Albinus * tramp-smb.el (tramp-smb-get-file-entries): `tramp-smb-maybe-open-connection' must still be called when share is nil. 2006-12-10 Michael Albinus * tramp.el (tramp-password-prompt-regexp): "Passphrase" is used with capital first letter by PuTTY. (tramp-message): Add message to debug buffer only when process buffer is not killed. Otherwise, debug buffer name cannot be determined. (tramp-accept-process-output): Under Win32, `accept-process-output' doesn't return sometimes. So we add an additional timeout around. * tramp-smb.el (tramp-smb-send-command ): This is the only place to call `tramp-smb-maybe-open-connection'. Remove all other calls. (tramp-smb-maybe-open-connection): SHARE isn't needed as parameter. We compute it ourselves. (tramp-smb-open-connection): Set `process-connection-type', which was done in `tramp-smb-maybe-open-connection' before. Pop up connection buffer when there are problems. 2006-12-09 Michael Albinus * tramp.el (tramp-enter-password): Inhibit function call traces in order to avoid passwords to be included there. * tramp-smb.el (tramp-smb-errors): Add error messages. (tramp-smb-handle-make-directory-internal): Local file names shall carry "\\" instead of "/". Reported by Tom Wurgler . 2006-12-03 Michael Albinus * tramp-cache.el (tramp-flush-directory-property): Check whether KEY is a string. (tramp-flush-connection-property): Work with a copy of the key in order to avoid side effects. * tramp-smb.el (tramp-smb-handle-insert-directory): Handle WILDCARD and FULL-DIRECTORY-P. (tramp-smb-handle-make-directory-internal): Flush also directory, because `file-attributes' is computed from its entries. (tramp-smb-get-file-entries): Parameter is a DIRECTORY. 2006-12-01 Michael Albinus * tramp.el (tramp-handle-write-region): Erase buffer before applying cksum. (tramp-set-remote-path): Apply `tramp-split-string' instead of `split-string', because Emacs 21 doesn't support OMIT-NULLS parameter. 2006-11-30 Michael Albinus * tramp-cache.el (tramp-get-file-property) (tramp-set-file-property, tramp-flush-file-property): Work with a copy of the vector in order to avoid side effects. * tramp-smb.el (tramp-smb-errors): Add error message from Windows Server 2003. (tramp-smb-not-handled): Removed, replaced by `ignore'. (tramp-smb-handle-copy-file, tramp-smb-handle-delete-directory) (tramp-smb-handle-delete-file, tramp-smb-handle-rename-file) (tramp-smb-handle-write-region): Flush also directory, because `file-attributes' is computed from its entries. (tramp-smb-file-name-handler, tramp-smb-handle-file-attributes) (tramp-smb-handle-file-directory-p) (tramp-smb-handle-file-exists-p) (tramp-smb-handle-file-name-all-completions) (tramp-smb-handle-file-writable-p) (tramp-smb-handle-insert-directory, tramp-smb-get-file-entries) (tramp-smb-get-inode): Simplify implementation. (tramp-smb-open-connection): Add parameter "-s /dev/null". 2006-11-28 Michael Albinus * tramp-smb.el (tramp-smb-errors): Add error message from Windows Server 2003. (tramp-smb-no-stat): New constant. Will be used later on for implementation of the stat command. (tramp-smb-open-connection): Revert change from 2006-11-23. Quoting arguments is not needed, moreover it even breaks the command. (tramp-smb-wait-for-output): Read pending output. 2006-11-27 Michael Albinus * tramp-smb.el (tramp-smb-maybe-open-connection): Erase always the connection buffer. 2006-11-24 Lars Hansen * tramp.el (tramp-default-method): Under Windows, change from plink to pscp. (tramp-copy-failed-regexp, tramp-action-copy-failed): Add. (tramp-actions-copy-out-of-band): Add pair (tramp-copy-failed-regexp tramp-action-copy-failed). (tramp-action-out-of-band): Move "Permission denied" handling to tramp-action-copy-failed. 2006-11-24 Michael Albinus * tramp.el (tramp-yn-prompt-regexp): Fix regexp. 2006-11-23 Michael Albinus * tramp-smb.el (tramp-smb-read-file-entry): Share names can contain spaces. (tramp-smb-open-connection): Quote arguments. 2006-11-21 Michael Albinus * tramp.el (tramp-set-remote-path): `tramp-default-remote-path' contains a trailing ":" under FreeBSD. 2006-11-20 Michael Albinus * tramp-cache.el (tramp-get-connection-property) (tramp-set-connection-property): Work with a copy of the vector in order to avoid side effects. * tramp-smb.el (tramp-smb-maybe-open-connection): Erase the buffer when the process is killed, because it is reused. 2006-11-07 Michael Albinus * tramp.el (tramp-copy-size-limit): New defcustom. (tramp-methods): Add "ControlPath" and "ControlMaster" to scp, scp1 and scp2 methods. Suggested by Andreas Schwab . Fix error in `tramp-login-args' of psftp. Rearrange entries for better readability. Change syntax of `tramp-copy-args' to that of `tramp-login-args'. Rename `tramp-copy-keep-date-arg' to `tramp-copy-keep-date', and change meaning. Describe "%t" and "%k" in the doc string. (tramp-default-method): scp is the default method. (tramp-do-copy-or-rename-file, tramp-handle-file-local-copy) (tramp-handle-write-region): Check for `tramp-copy-size-limit'. (tramp-do-copy-or-rename-file-out-of-band): Simplify implementation. (tramp-maybe-open-connection): Compute format spec only once. 2006-11-05 Lars Hansen * tramp.el (with-parsed-tramp-file-name): Correct debug spec. Highlight as keyword. (tramp-do-copy-or-rename-file): Correct data for 'file-already-exists. (tramp-touch): Quote file name. 2006-10-25 Michael Albinus * tramp.el (tramp-yn-prompt-regexp): Add question from plink. (tramp-message): Reduce messages in minibuffer. (tramp-handle-call-process): Fix error in error handling. (tramp-touch): UTC handling is not possible for XEmacs. * tramp-cache.el (top): Don't autoload macro `with-parsed-tramp-file-name' but function `tramp-dissect-file-name'. (tramp-cache-before-revert-function): Change implementation accordingly. Reported by Jonathan Hankins . * tramp-util.el (tramp-advice-executable-find): Check for `load-in-progress)'. (tramp-advice-call-process): Add check for `tramp-fish-file-name-handler'. (tramp-grep-setup, tramp-gud-setup, tramp-ediff-setup): Remove functions, and call defadvices directly. There is no need for `eval-after-load'. (top): Add defadvices for `gnus-1', `jka-compr-call-process' and `jka-compr-partial-uncompress'. 2006-09-08 Gilles Pion (tiny change) * tramp.el (tramp-open-connection-setup-interactive-shell): Simplify command checking the uname of the remote host. 2006-09-03 Michael Albinus Version 2.1.7 released. * tramp.el (tramp-methods): Precise doc-string for `su' and `sudo' methods in case of non-local host name. 2006-08-31 Michael Albinus * tramp.el (tramp-default-proxies-alist): Extend doc string for %h and %u patterns. (tramp-wrong-passwd-regexp): Fix strings. (tramp-maybe-open-connection): Add handling of %h and %u patterns. Suggested by Kirk Strauser . 2006-08-29 Michael Albinus * tramp.el (tramp-get-remote-uid, tramp-get-remote-gid): Return -1 when ID-FORMAT is 'integer, and the command doesn't yield an integer. 2006-08-27 Michael Albinus * tramp.el (tramp-completion-function-alist-*): Provide the constants also for the Windows case. (tramp-completion-file-name-regexp-*): Add the drive letter to the constants in the Windows case. (tramp-debug-message): Simplify regexp for function names to be ignored. (tramp-handle-expand-file-name): Act also in completion mode. Apply `tramp-drop-volume-letter' then. (tramp-file-name-handler): No special handling for `expand-file-name'. But for `file-name-as-directory'. (tramp-completion-handle-file-name-all-completions): Apply `tramp-drop-volume-letter' where appropriate. (tramp-parse-*): Set `default-directory' to a local filename, in order to catch the files to be parsed under Windows. (tramp-open-connection-setup-interactive-shell): Move "(with-current-buffer ..." upwards; there was a wrong logic. 2006-08-17 Michael Albinus * tramp.el (tramp-completion-mode): Remove parameter, it isn't necessary anymore. Remove check for `tramp-syntax'. (tramp-find-method, tramp-find-user, tramp-find-host): Don't expand to default values when in completion mode. 2006-08-12 Michael Albinus * tramp.el (tramp-handle-file-attributes-with-ls): Goto buffer head before reading. Add also quotes to user and group entries when not in integer format. * tramp-cache.el: Tune autoloading of functions from tramp.el. Wrap it with `eval-when-compile', because this is needed for compiler pacification only. (tramp-set-connection-property): Trap error from missing function `tramp-message' during startup, where we don't miss the debug messages. 2006-08-08 Peter Wagemans (tiny change) * tramp.el (tramp-handle-file-attributes-with-stat) (tramp-handle-directory-files-and-attributes-with-stat): Add quotes to the user and group elements. 2006-07-18 Michael Albinus * tramp.el (tramp-find-inline-encoding): `rem-enc' and `rem-dec' must not be cached as converted to a string. 2006-06-26 Michael Albinus * tramp.el (tramp-handle-file-local-copy): Don't evaluate `rem-dec' and `loc-enc'. (tramp-handle-write-region): Don't evaluate `rem-enc' and `loc-dec'. (tramp-find-inline-encoding): Set connection properties directly via `tramp-set-connection-property'. (tramp-set-remote-encoding, tramp-set-remote-decoding) (tramp-set-local-encoding, tramp-set-local-decoding): Removed. (tramp-get-remote-encoding, tramp-get-remote-decoding): Removed, replaced by new defun `tramp-get-remote-coding'. (tramp-get-local-encoding, tramp-get-local-decoding): Removed, replaced by new defun `tramp-get-local-coding'. 2006-06-25 Michael Albinus * tramp.el (tramp-unload-tramp): Provide a doc string. 2006-06-15 Katsumi Yamaoka (tiny change) * tramp.el (tramp-touch): Use UTC to express time. 2006-06-15 Michael Albinus * tramp.el (top): Require tramp-util also on Windows machines. (tramp-message): Process buffer might have been killed. 2006-06-04 Michael Albinus * tramp.el (tramp-process-actions): Pop connection buffer in case of error. Modify error message depending on `tramp-action'. * tramp-cache.el (tramp-persistency-file-name): Default value is "~/.emacs.d/tramp" or "~/.xemacs/tramp", respectively. Suggested by Romain Francoise . (tramp-dump-connection-properties): Suppress error when `tramp-persistency-file-name' cannot be written. 2006-06-01 Michael Albinus * tramp.el (tramp-process-one-action): Remove `with-timeout' clause. (tramp-process-actions): Add optional TIMEOUT parameter. If set, apply it. (tramp-maybe-open-connection): Call `tramp-process-actions' with a timeout of 60". 2006-06-01 Matt Swift (tiny change) * tramp.el (tramp-make-copy-program-file-name): Quote LOCALNAME. 2006-05-31 Michael Albinus * tramp.el (tramp-get-debug-buffer): `outline-mode' must be protected with a local `default-directory'. * tramp-cache.el (top): When reading `tramp-persistency-file-name', discard error messages for 'file-error. 2006-05-28 Michael Albinus Version 2.1.6 released. * tramp.el (tramp-wrong-passwd-regexp): Add PuTTY message. (tramp-register-file-name-handlers): `partial-completion-mode' is unknown to XEmacs. (tramp-time-diff): Don't use `floor', it might fail for large differences. * tramp-efs.el: * tramp-ftp.el: Parse "~/.netrc" for completion also under MS Windows. 2006-05-27 Michael Albinus * tramp.el (tramp-initial-commands): Removed. (tramp-remote-process-environment): Add the settings from `tramp-initial-commands' here. (tramp-file-name-handler-alist, tramp-file-name-for-operation): Add `executable-find' entry. (tramp-message): Apply `save-match-data'. (tramp-do-copy-or-rename-file-out-of-band): `executable-find' must be called locally. (tramp-handle-executable-find): New defun. (tramp-process-one-action) (tramp-open-connection-setup-interactive-shell): Remove some messages. Send the "unset" commands as one bunch for optimization. (tramp-send-command-internal): Remove the MSG parameter. * tramp-smb.el (tramp-smb-open-connection): `executable-find' must be called locally. * tramp-util.el (tramp-advice-executable-find) (start-process-shell-command) (tramp-advice-call-process-shell-command): New defadvices. (tramp-advice-start-process, tramp-advice-call-process): Don't apply parameter lists explicitly. 2006-05-24 Michael Albinus * tramp.el (tramp-message): Write into debug buffer only if `tramp-verbose-level' is greater than or equal to 4. (tramp-get-completion-function): Add `tramp-parse-connection-properties'. (tramp-process-initial-commands, tramp-post-connection): Removed, also their respective calls.. (tramp-open-connection-setup-interactive-shell) Add code from `tramp-process-initial-commands' and `tramp-post-connection'. * tramp-cache.el (tramp-parse-connection-properties): New defun. * tramp-util.el (tramp-ediff-setup): New defun. 2006-05-22 Michael Albinus * tramp.el (tramp-error): Don't kill the process. There are several cases it doesn't make sense. (tramp-do-copy-or-rename-file): Flush NEWNAMEs file property. (tramp-do-copy-or-rename-file-out-of-band): Apply `tramp-error' when possible. Make the temporary process more robust. Use "process-name" and "process-buffer" properties. (tramp-handle-start-process): Return the process. (tramp-completion-handle-file-name-all-completions): Use `tramp-find-method'. It was lost some day, don't know how. (tramp-action-permission-denied, tramp-action-yesno) (tramp-action-yn, tramp-find-inline-encoding): Apply `kill-process'. (tramp-append-tramp-buffers): Add a remark about attached buffers. * tramp-cache.el (tramp-cache-print): Make sure processes and buffers are dumped as strings. (tramp-flush-connection-property): Don't send a debug message. Process and/or buffer might have been killed already. (tramp-dump-connection-properties): Don't save "process-name" and "process-buffer" properties. 2006-05-21 Michael Albinus Major rewrite. Parameter lists changed from METHOD USER HOST to VEC. * tramp.el (tramp-debug-buffer, tramp-buffer-file-attributes) (tramp-connection-function, tramp-remote-sh, tramp-login-program) (tramp-login-args, tramp-copy-program, tramp-copy-args) (tramp-copy-keep-date-arg, tramp-encoding-command) (tramp-decoding-command, tramp-encoding-function) (tramp-decoding-function, tramp-password-end-of-line) (tramp-current-hop-method, tramp-current-hop-user) (tramp-current-hop-host, tramp-last-cmd-time) (tramp-message-for-buffer, tramp-trace, tramp-pre-connection) (tramp-kill-process): Removed. (tramp-find-method, tramp-find-user, tramp-find-host): Changed to defsubst. * tramp-cache (tramp-cache-data): New defvar. Combines previous `tramp-file-properties' and `tramp-connection-properties'. (tramp-cache-setup): Removed. (tramp-flush-connection-property): New defun. * tramp-smb.el (tramp-smb-share, tramp-smb-share-cache): Removed. 2006-05-11 Michael Albinus * tramp.el (all): Apply renamings from tramp-cache.el. (tramp-handle-start-process, tramp-get-connection-buffer) (tramp-get-connection-process, tramp-maybe-open-connection): "process-name" and "process-buffer" are handled as file property, because they shouldn't be saved in Tramp connection history. (tramp-maybe-send-script): Dito for "scripts". (tramp-check-for-regexp, tramp-send-command) (tramp-send-command-internal): Dito for "check-remote-echo". (tramp-open-connection-setup-interactive-shell): Move test for `tramp-chunksize)' down. (tramp-bug): Add `tramp-file-properties'. (tramp-append-tramp-buffers): Remove test for cache data. * tramp-cache.el (tramp-file-properties): Renamed from `tramp-cache-data'. It's not buffer local anymore. (tramp-cache-setup): Reimplementation. (tramp-get-file-property): Renamed from `tramp-cache-get-file-property'. Reimplementation. (tramp-set-file-property): Renamed from `tramp-cache-set-file-property'. Reimplementation. (tramp-flush-file-property): Renamed from `tramp-cache-flush-file'. Reimplementation. (tramp-flush-directory-property): Renamed from `tramp-cache-directory-file'. Reimplementation. (with-file-property ): Renamed from `with-cache-data'. Reimplementation. (tramp-set-connection-property): Remove parameter TRANSIENT. (tramp-dump-connection-properties): Pretty printing shall work for other Emacsen too. * tramp-smb.el (all): Apply renamings from tramp-cache.el. 2006-05-10 Michael Albinus * tramp.el (all): * tramp-util.el (all): Adapt all occurencies of `tramp-set-connection-property' and `tramp-get-connection-property' according to changed parameter list. * tramp-cache.el (tramp-get-connection-property): Reorder parameter list. (tramp-set-connection-property): Reorder parameter list. Add new parameter TRANSIENT which suppresses saving that property in persistent connection history. (with-connection-property): Apply reordered parameter lists. (tramp-dump-connection-properties): Remove transient entries. 2006-05-09 Michael Albinus * tramp.el (top): Eval expression for adding tramp-(ftp|efs) to `tramp-unload-hook'. (tramp-handle-file-name-all-completions) (tramp-handle-insert-directory): Remove final "cd". (tramp-register-file-name-handlers): Enable Tramp completion also when ido is loaded. (tramp-post-connection): Don't check for (en|de)coding. It will be done on-the-fly. (tramp-find-inline-encoding): Remove tramp-get-* checks. (tramp-get-remote-encoding, tramp-get-remote-decoding) (tramp-get-local-encoding, tramp-get-local-decoding): Add `tramp-find-inline-encoding'. * tramp-cache.el (top): Add unload code to `tramp-cache-unload-hook'. Remove also `tramp-dump-connection-properties' from `kill-emacs-hook'. Remove "scripts" properties from connection history, they are not persistent information. 2006-05-08 Michael Albinus * tramp.el (tramp-buffer-name, tramp-debug-buffer-name): Handle the case when USER is NIL. This was lost yesterday. (tramp-set-remote-path): Save `tramp-default-remote-path' as connection property. (all): Remove `save-excursion' inside `with-connection-property'. Will be handled there. * tramp-cache.el (tramp-cache-print): Apply `prin1-to-string'. (with-connection-property): Apply `save-excursion'. (tramp-dump-connection-properties): Check for empty hash table. Prettyprint. (top): Simplify reading from connection history. 2006-05-07 Michael Albinus * tramp.el (top): cl and custom are always required. (tramp-verbose): Change description of levels. (tramp-encoding-reads-stdin, tramp-repair-jka-compr) (tramp-discard-garbage, tramp-completion-handle-file-exists-p) (tramp-completion-handle-file-name-directory) (tramp-completion-handle-file-name-nondirectory) (tramp-completion-handle-expand-file-name) (tramp-find-default-method, tramp-find-default-user) (tramp-find-default-host): Remove them. (tramp-methods): Change defcustom into defvar. (tramp-actions-before-shell, tramp-actions-copy-out-of-band): Change defcustom into defconst. (tramp-completion-file-name-handler-alist) (tramp-run-real-handler, tramp-completion-run-real-handler) (tramp-completion-handle-file-name-all-completions) (tramp-completion-handle-file-name-completion): Autoload them. (tramp-make-temp-file, tramp-make-tramp-temp-file): Move them up. (tramp-handle-file-name-directory): Return the real directory name. Returning "/" only doesn't need to be necessary any longer. (tramp-handle-make-auto-save-file-name): For Emacs 21, set `tramp-auto-save-directory' if unset in order to guarantee unique auto-save file names. (tramp-file-name-handler): Make special attention when in hostname completion mode. (tramp-register-file-name-handlers): New defsubst. Added with autoload cookie. Code from `tramp-repair-jka-compr' moved here. Register `tramp-completion-file-name-handler' only when `partial-completion-mode' is enabled. (tramp-unload-file-name-handlers): Renamed from `tramp-unload-file-name-handler-alist'. (tramp-completion-handle-file-name-all-completions): Delete directory part from results. (tramp-get-completion-methods, tramp-get-completion-user-host): Discard deleting "/", it doesn't work after the change of `tramp-handle-file-name-directory' above. (tramp-do-copy-or-rename-file-out-of-band) (tramp-process-actions, tramp-wait-for-regexp) (tramp-maybe-open-connection, tramp-send-command) (tramp-send-command-internal): Trace sent command with level 6. (tramp-check-for-regexp): Trace echo with level 5. (tramp-dissect-file-name): Expand method, user, host. (tramp-find-method, tramp-find-user, tramp-find-host): Add code for default values. Remove all calls but the one in `tramp-dissect-file-name'. (tramp-bug, tramp-reporter-dump-variable) (tramp-append-tramp-buffers): Dump also hash variables. * tramp-cache.el: Trace cache commands with level 7. Trace connection commands with level 8. (tramp-cache-print): Dump strings as such. (tramp-persistency-file-name): New defcustom. (tramp-connection-properties): New defvar. (tramp-dump-connection-properties): New defun. (tramp-get-connection-property, tramp-set-connection-property): Rewritten. (top): Dump connection history when leaving Emacs. Read it during initialization. * tramp-efs.el (tramp-efs-file-name-p): Don't use tramp-find-* functions. * tramp-ftp.el (tramp-ftp-file-name-p): Don't use tramp-find-* functions. * tramp-smb.el: Trace sent commands with level 6. (tramp-smb-file-name-p): Don't use tramp-find-* functions. 2006-04-29 Richard Stallman * tramp.el (tramp-completion-file-name-handler-alist): Delete expand-file-name and other operations that can cause spurious loading. 2006-04-16 Michael Albinus * tramp.el (tramp-completion-mode): ?\t has event-modifier 'control. Reported by Matthias Förste . 2006-03-19 Michael Albinus * tramp.el (tramp-remote-path): Add `tramp-default-remote-path' as first item. Remove items which are usually returned by "getconf PATH". Extend custom parameters accordingly. (tramp-set-remote-path): Apply "getconf PATH" in order to get default directories. Suggested by Kevin Rodgers . Remove parameters VAR and DIRLIST. (tramp-post-connection): Set remote PATH variable as first action. (tramp-handle-call-process): Add " * Makefile.in: Implement DESTDIR support. 2006-03-12 Michael Albinus * tramp-util.el (tramp-advice-dired-insert-directory): Ensure it isn't used with Emacs 22. 2006-03-10 Michael Albinus * tramp-util.el (tramp-advice-dired-insert-directory): New defadvice. 2006-03-09 Michael Albinus * tramp.el (tramp-do-copy-or-rename-file-out-of-band) (tramp-handle-write-region, tramp-touch) (tramp-call-local-coding-command): Local `call-process' and `start-process' must be applied with a local `default-directory'. 2006-03-08 Michael Albinus * tramp.el (tramp-pre-connection): The buffer must be erased. Reported by Heike C. Zimmerer . 2006-03-05 Michael Albinus * tramp.el (tramp-debug-message): Don't filter for `tramp-warning', it doesn't exist. (tramp-touch): Raise a warning only if it fails. It isn't worth an error. 2006-02-27 Heike C. Zimmerer * tramp.el (tramp-echo-mark, tramp-echoed-echo-mark-regexp): New defconst. (tramp-check-for-regexp): New defun. (tramp-wait-for-regexp): Apply it. (tramp-open-connection-setup-interactive-shell): Check for echo suppression on remote side. (tramp-send-command, tramp-send-command-internal): Add `tramp-echo-mark' to the command if needed. (tramp-send-command-and-check): Take a more precise regexp for exit status check. 2006-02-20 Heike C. Zimmerer (tiny change) * tramp.el (tramp-maybe-open-connection): Fix typo in calling `tramp-wait-for-output'. 2006-02-12 Michael Albinus * tramp.el, trampver.el.in: Adapt copyright years. 2006-02-08 Sam Steingold * tramp.el (tramp-maybe-open-connection): Do not wait for output from a dead connection. 2006-02-07 Michael Albinus * tramp.el (tramp-error): Add a fmt-string to the call of `tramp-message-for-buffer'. 2006-01-30 Michael Albinus * tramp.el (tramp-unload-tramp): Don't try to unload tramp-util. * tramp-smb.el (tramp-smb-wait-for-output): Wait always for the prompt. If it returns earlier (when detecting an error message), the rest of the output will merge accidently with the output of the next command. Reported by M Jared Finder . 2006-01-27 Antonio Martinez (tiny change) * tramp.el (tramp-handle-call-process): All excursions must be saved correctly. 2006-01-27 Michael Albinus * tramp.el, tramp-cache.el, tramp-ftp.el, tramp-util.el: * tramp-vc.el: Add code for unloading Tramp. See comment before `tramp-unload-tramp' for checklist. * tramp.el (tramp-unload-file-name-handler-alist) (tramp-unload-tramp): New defuns. (tramp-advice-PC-expand-many-files): New defadvices. (tramp-save-PC-expand-many-files, tramp-setup-complete) Defuns removed. * tramp-ftp.el (tramp-ftp-enable-ange-ftp): New defun. * tramp-vc.el (vc-user-login-name): Wrap defadvice with a test for `process-file', in order to let it work for older Emacsen too. 2005-12-11 Michael Albinus Version 2.1.5 released. * tramp.el (tramp-remote-path): Beautify "/usr/xpg4/bin". Clarify docstring. (tramp-handle-expand-file-name): Remove double slash. (tramp-set-remote-path): It is sufficient to check for `file-directory-p'. (tramp-find-file-exists-command): Remove unnecessary message. (tramp-check-ls-command, tramp-check-ls-commands) (tramp-find-ls-command, tramp-find-id-command): Remove functions. Code is moved to corresponding `tramp-get-*' functions. (tramp-get-*): Work in connection buffer because local `tramp-remote-path'. Insert code from above when necessary. (tramp-bug): Add `tramp-default-host', `tramp-default-user', `tramp-default-user-alist'. (tramp-append-tramp-buffers): Add local variables for all Tramp buffers. 2005-12-02 Michael Albinus * tramp.el (tramp-verbose): Document level 7. (tramp-send-command-and-check): Clean up tramp_exit_status from buffer. (tramp-handle-file-local-copy, tramp-send-command-and-read): Remove cleaning of tramp_exit_status. (tramp-handle-write-region): Make cksum check more robust. (tramp-remote-path): Add "/usr/xpg4/bin/". On Solaris, there are the POSIX programs. (tramp-find-executable): IGNORE-TILDE is optional now. New parameter IGNORE-PATH. Adapt callees. (tramp-set-remote-path): Return list of existing directories. (tramp-post-connection): Make `tramp-remote-path' buffer local. Set it to list of existing directories. (tramp-find-id-command, tramp-get-remote-id ): New defun. (tramp-get-remote-uid, tramp-get-remote-gid): Use them. 2005-11-29 Michael Albinus * tramp.el (tramp-do-copy-or-rename-file-via-buffer) (tramp-handle-file-local-copy, tramp-handle-write-region): Generate always a new temp buffer. Kill it finally. (tramp-handle-unhandled-file-name-directory): Return home directory on remote host. (tramp-handle-write-region): When `file-precious-flag' is set, check also the checksums (in case of inline methods). 2005-11-27 Michael Albinus * tramp.el (tramp-file-name-handler-alist): Remove `dired-call-process' again. Not necessary, now that `tramp-util' is required. (tramp-handle-dired-call-process): Removed. (tramp-handle-process-file): Call just `call-process'. * tramp-util.el (file-remote-p): Make it available (Emacs 21), or advice it (XEmacs 21). (compilation-mode-hook, tramp-gud-file-name): Use `file-remote-p'. (tramp-gud-file-name-handler): Removed. It was a wrong approach. (tramp-gud-massage-args): New defun. (tramp-gud-setup): Rewritten. It is called now after loading gud.el. (tramp-gud-perldb-massage-args): Removed. Replaced by a more general approach in `tramp-gud-setup'. 2005-11-23 Michael Albinus * tramp.el (top): Require `tramp-util'. (tramp-make-tramp-temp-file): New defsubst. (tramp-handle-call-process): Call it. (tramp-find-foreign-file-name-handler): Test also for stringp. (tramp-set-auto-save): Simplify test. It is done in `tramp-find-foreign-file-name-handler'. (tramp-exists-file-name-handler): Protect it with `condition-case'. * tramp-util.el (tramp-advice-start-process) (tramp-advice-call-process, gud-perldb-massage-args): Replace test with `tramp-tramp-file-p' by `tramp-sh-file-name-handler'. It does not work with other file name handlers. (tramp-gud-file-name-handler, tramp-gud-setup): New defuns. * tramp-vc.el (tramp-vc-user-login-name): Rewritten. (tramp-vc-file-owner): Replace test with `tramp-tramp-file-p' by `tramp-sh-file-name-handler'. It does not work with other file name handlers. 2005-11-20 Michael Albinus * tramp.el (tramp-send-command-and-read): New defun. (tramp-handle-file-attributes-with-perl) (tramp-handle-file-attributes-with-stat) (tramp-handle-directory-files-and-attributes-with-perl) (tramp-handle-directory-files-and-attributes-with-stat) (tramp-get-remote-stat, tramp-get-remote-uid) (tramp-get-remote-gid): Apply it. (tramp-handle-insert-directory): Remove unnecessary comments. (tramp-point-at-eol): Removed. All callees replaced by `tramp-line-end-position'. (tramp-barf-unless-okay): Don't pop up Tramp buffer in case of error. (tramp-get-ls-command, tramp-get-test-command) (tramp-get-test-nt-command, tramp-get-file-exists-command) (tramp-get-remote-ln, tramp-get-remote-perl) (tramp-get-remote-stat) (tramp-get-remote-uid, tramp-get-remote-gid): Apply `with-connection-property'. (tramp-get-connection-property, tramp-set-connection-property): Move to tramp-cache.el. * tramp-cache.el: (tramp-get-connection-property, tramp-set-connection-property): Moved from tramp.el. Tramp messages added. (with-connection-property): New macro. * tramp-smb.el (tramp-smb-read-file-entry): `tramp-point-at-eol' replaced by `tramp-line-end-position'. * tramp-vc.el (tramp-handle-vc-user-login-name): Removed. (tramp-vc-user-login-name): Rewritten. 2005-11-16 Michael Albinus * tramp.el (tramp-default-user-alist): Simplify default value. (tramp-handle-file-attributes): Apply `expand-file-name'. (tramp-handle-file-newer-than-file-p) (tramp-handle-add-name-to-file, tramp-do-copy-or-rename-file): Call of `tramp-error' must be more robust. (tramp-touch): When there is no Tramp file, we cannot call `tramp-error'. (tramp-wait-for-regexp, tramp-wait-for-output): Remove unnecessary parameter in `tramp-error' call. (tramp-get-remote-uid, tramp-get-remote-gid): New parameter ID-FORMAT. Adapt callees. * tramp-vc.el (tramp-vc-do-command, tramp-vc-do-command-new) (tramp-vc-simple-command, tramp-vc-workfile-unchanged-p) (vc-checkout): Removed, including corresponding defadvices. (tramp-file-owner): Removed. Defadvice `vc-file-owner' changed with code left. 2005-11-12 Michael Albinus * tramp.el (tramp-handle-file-attributes-with-ls): Return t as 9th attribute. It doesn't matter, because it will be converted later on. (tramp-handle-file-ownership-preserved-p): Rewritten. The old implementation was just heuristic. (tramp-convert-file-attributes): Set file's gid change bit. (tramp-get-remote-uid, tramp-get-remote-gid): New defuns. 2005-11-09 Michael Albinus * tramp.el (tramp-remote-process-environment): New defcustom. (tramp-file-name-handler-alist): Add `dired-call-process'. (tramp-handle-dired-call-process ): New defun. (tramp-debug-message): Extend regexp for backtrace. (tramp-message): Apply level specific prefixes. (tramp-error): New defsubst. Replace all calls of `message', `signal' and `error' with corresponding Tramp message functions. (tramp-handle-file-truename): Apply `tramp-equal-remote'. (tramp-handle-expand-file-name): Use "~root" for tilde expansion in case of su(do)? methods. The home directory of the local user will be taken else. (tramp-handle-start-process): Use narrowing for protecting buffer contents. (tramp-file-name-handler): Remove signal handling. Not necessary, because `tramp-error' handles it now. (tramp-buffer-name, tramp-debug-buffer-name): Handle the case USER is nil. (tramp-outline-level): Change formula in order to handle level 0. (tramp-set-remote-path): Add debug message. (tramp-enter-password): Don't erase the buffer, not necessary. (tramp-open-connection-setup-interactive-shell): Don't (un)set explicitly "TERM", "HISTFILE", "HISTSIZE" "MAIL" "MAILCHECK" "MAILPATH" "CDPATH" "LC_TIME". Set `tramp-remote-process-environment' instead. (tramp-barf-unless-okay): Remove SUBSHELL (always nil) and SIGNAL (always 'file-error). Change all callees. (tramp-send-string): Apply `delete-region' instead of `erase-buffer'. Necessary because of narrowing. * tramp-smb.el (all) Replace all calls of `message', `signal' and `error' with corresponding Tramp message functions. * tramp-util.el (tramp-advice-gud-perldb-massage-args): New defadvice. 2005-11-06 Michael Albinus * tramp.el (tramp-file-name-handler-alist): Remove `shell-command. (tramp-handle-start-process, tramp-handle-call-process): Apply `save-excursion'. (tramp-handle-shell-command): Removed. (tramp-file-name-for-operation): Add `dired-call-process'. It IS a file name handler primitive. (tramp-wait-for-regexp): Take the message string from right buffer. (tramp-post-connection): Remove code for checking encoding commands. It is also in `tramp-find-inline-encoding'. (tramp-find-inline-encoding): Check for connection properties. By this, the commands won't be executed again for new connection buffers. (tramp-maybe-open-connection): Apply `tramp-send-command' instead of `tramp-send-string'. No changed functionality, but better traces. * tramp-util.el (top): Don't require "compile". Add handlers for `compilation-mode-hook' and `gud-mode-hook'. (tramp-advice-start-process, tramp-advice-call-process): Call the handlers with `apply'. (tramp-gud-file-name): New defun. (tramp-compilation-parse-errors-filename-function): Removed. It wasn't such a good idea. 2005-11-05 Michael Albinus * tramp-util.el (tramp-compilation-parse-errors-filename-function): New defun. Assigned to `compilation-parse-errors-filename-function'. 2005-11-04 Michael Albinus * tramp.el (tramp-default-user): Set to nil. Otherwise, it would overwrite setttings for ssh. Reported by Richard Edgar . (tramp-default-user-alist): Add value for rsh and telnet and alike. (tramp-handle-file-newer-than-file-p) (tramp-handle-add-name-to-file, tramp-do-copy-or-rename-file) (tramp-run-test2 ): Apply `tramp-equal-remote'. (tramp-equal-remote): Improve docstring. (tramp-handle-call-process): Continue implementation. * tramp-util.el (tramp-advice-start-process) (tramp-advice-call-process): Check whether to apply. 2005-11-02 Lars Hansen * tramp.el (tramp-action-out-of-band): Handle scp message "Permission denied". 2005-11-01 Michael Albinus * tramp.el (tramp-handle-call-process): Improve handling of INFILE and DESTINATION. (tramp-handle-file-remote-p): Return string instead of struct. Expand to default values. (tramp-equal-remote): New defun. 2005-10-30 Michael Albinus * tramp.el: Global change to make access to connection buffer more robust. Don't trust that it is always current buffer; don't expect it is writable. (tramp-file-name-handler-alist, tramp-file-name-for-operation): Add `start-process' and `call-process'. Remove `dired-call-process'. (tramp-handle-start-process, tramp-handle-call-process) (tramp-get-connection-buffer, tramp-get-connection-process): New defuns. (tramp-handle-dired-call-process, tramp-async-proc): Removed. (tramp-handle-shell-command, tramp-handle-process-file): Rewritten completely. (tramp-wait-for-output): New arg PROC. (tramp-get-connection-property, tramp-set-connection-property): Don't call `tramp-maybe-open-connection'. There might be recursions otherwise. (tramp-handle-expand-file-name): Use `tramp-temporary-file-directory' instead of "/". (tramp-maybe-open-connection): Set PS1 to "$ ". Otherwise, a local shell prompt could hurt. Reported by Romain Francoise . (tramp-chunksize): Escape parentheses in docstring starting at beginning of line. Fontification is messed up when `open-paren-in-column-0-is-defun-start' set to t. Reported by John Paul Wallington . * tramp-cache.el (tramp-cache-setup): Reset `tramp-cache-data' only when it doesn't exist yet. Otherwise, it would be cleaned every new asynchronous process. * tramp-util.el: Deactivate key mappings for `tramp-minor-mode'. (tramp-advice-start-process, tramp-advice-call-process): New defadvices. (tramp-compile, tramp-recompile): Removed. 2005-10-28 Richard M. Stallman * tramp.el (tramp-completion-mode): defvar moved up. 2005-10-23 Michael Albinus * tramp.el (tramp-let-maybe): Add `edebug-form-spec' property. (tramp-handle-expand-file-name): Bind `default-directory' locally to "/" in order to avoid problems with UNC shares or Cygwin mounts. 2005-10-17 Michael Albinus * tramp.el (tramp-completion-mode): New defvar. Used in `tramp-completion-mode' for checking if we are in completion mode. (tramp-completion-handle-file-name-all-completions): Reorder code in order to complete for file names only in case there are no method/user/host completions. This is necessary for cooperation with ido. Reported by Kim F. Storm . 2005-10-08 Lars Hansen * tramp.el (tramp-perl-directory-files-and-attributes): Add error handling. (tramp-handle-directory-files-and-attributes-with-perl): Handle perl error msg. 2005-10-16 Andy Sloane (tiny change) * tramp.el (tramp-enter-password): `tramp-password-end-of-line' must be taken from `tramp-current-hop-*'. 2005-10-13 Michael Albinus Version 2.1.4 released. * tramp.el (tramp-debug-message, tramp-message-for-buffer): Write message only if connection buffer exists. Otherwise, `method', `user' and `host' are not set yet. (tramp-handle-directory-files-and-attributes-with-perl) (tramp-handle-directory-files-and-attributes-with-stat): New defuns. (tramp-handle-directory-files-and-attributes): Use them. 2005-10-12 Michael Albinus * tramp.el (top): Try to simplify XEmacs byte-compiler pacification. (tramp-verbose): Finish doc string. New default value is 3. (all): Apply new verbosity levels. (tramp-get-debug-buffer): Remove definition of outline faces. The default values are good enough. (tramp-bug): Explain setting of `tramp-verbose'. * tramp-cache.el (all): Apply new verbosity levels. * tramp-smb.el (top): Try to simplify XEmacs byte-compiler pacification. (all): Apply new verbosity levels. * tramp-vc.el (top): Try to simplify XEmacs byte-compiler pacification. 2005-10-11 Michael Albinus * tramp.el (tramp-verbose): Start rewriting the doc string. Not finished yet. (tramp-handle-delete-file, tramp-handle-insert-file-contents) (tramp-sh-file-name-handler): Signals expect a list as last parameter. (tramp-file-name-handler): Handle signals in order to trace them in the debug buffer. * tramp-smb.el (tramp-smb-handle-directory-files): Rewritten in order to profit from caching results. (tramp-smb-handle-file-name-all-completions): `localname' must be expanded by `file-name-as-directory'. 2005-10-11 Steve Youngs * tramp.el: Require `timer-funcs' instead of `timer' if in XEmacs. 2005-10-10 Michael Albinus * tramp.el (tramp-handle-delete-directory) (tramp-handle-dired-recursive-delete-directory): Apply `tramp-cache-flush-directory'. (tramp-handle-insert-directory): Apply `tramp-cache-flush-file'. * tramp-cache.el: Autoload the needed functions from tramp.el. (tramp-cache-flush-directory, tramp-cache-before-revert-function): New defuns. (top): Add `tramp-cache-before-revert-function' to `before-revert-hook'. Deactivate all Tramp messages for performance reasons. * tramp-smb.el (tramp-smb-handle-delete-directory): Apply `tramp-cache-flush-directory'. (tramp-smb-handle-insert-directory): Apply `tramp-cache-flush-file'. (tramp-smb-handle-directory-files): Local file must be handled as directory, otherwise the listing is senseless. 2005-10-09 Michael Albinus * tramp.el (tramp-completion-without-shell-p): Removed. Not needed anymore. (tramp-md5-function): Fix typo in error message. (tramp-handle-directory-files) (tramp-handle-directory-files-and-attributes) (tramp-handle-file-name-all-completions): Rewritten in order to profit from caching results. (tramp-handle-file-name-completion): Removed unnecessary code. * tramp-cache.el (with-cache-data): ,@body must be wrapped by `progn'. Add `edebug-form-spec' property. * tramp-smb.el (tramp-smb-handle-file-name-all-completions): Rewritten in order to profit from caching results. 2005-09-22 Michael Albinus * tramp.el (tramp-actions-before-shell): Reorder actions. There might be a speedup when the next action is recognized immediately. At least it doesn't hurt. (tramp-find-executable): "which(1)" doesn't return a correct error code in some implementations. Use the number of words it returns as indication instead. (tramp-send-string): Trace all chunk sendings. It might be huge for large files, but trace level 10 should be an exception. Remove the sleep, it's not necessary (and disturbs accept process output logic on Emacs installations without timeouts, like on my HP-UX 10.20 desktop). 2005-09-18 Michael Albinus * tramp.el (tramp-login-prompt-regexp): Expand regexp in order to cover prompts like "login as:". Reported by Slawomir Nowaczyk . (tramp-debug-message): Remove FACE as parameter. Not necessary any longer, we use outline mode now. (tramp-message, tramp-trace): Change callees. (tramp-message-for-buffer): It is a defsubst now. (tramp-get-debug-buffer): Initialize outline mode. (tramp-outline-level): New defun. (tramp-insert-with-face): Removed. (tramp-do-copy-or-rename-file-out-of-band) (tramp-maybe-open-connection): tramp-current-* and tramp-current-hop-* values should be already expanded. (tramp-action-login, tramp-read-passwd): Use tramp-current-hop-*. 2005-09-11 Michael Albinus * tramp.el (top): Reduce compiler warnings. (tramp-current-hop-method, tramp-current-hop-user) (tramp-current-hop-host): New defvars. (tramp-handle-file-attributes-with-stat): Return floating point numbers. Integers did run out of 2**28. (tramp-do-copy-or-rename-file-out-of-band, tramp-pre-connection) (tramp-maybe-open-connection): Initialize new defvars. (tramp-handle-shell-command): Send "tramp_set_exit_status", it isn't sent any longer during initialization. (tramp-handle-write-region): Remote decoding command is sent in one bunch. (tramp-find-executable): Check first in $PATH with "which" command. Directory scan command is sent in one bunch. (tramp-check-ls-command, tramp-find-ls-command): Debug messages did go to a wrong debug buffer. (tramp-action-password, tramp-process-actions): Call `tramp-enter-password' and `tramp-clear-passwd' with changed parameters. (tramp-enter-password, tramp-read-passwd, tramp-clear-passwd): Change parameter set. Rewrite. (tramp-post-connection): Remove unnecessary commands. (tramp-send-command, tramp-send-string): Move setting of `tramp-last-cmd-time'. (tramp-wait-for-output): Correct wrong variable names. (tramp-get-ls-command): Simplify code. * tramp-cache.el (tramp-enable-cache): Removed. Works stable now. (with-cache-data): Change accordingly. * tramp-smb.el (top): Require `tramp-cache'. Reduce compiler warnings. (tramp-smb-handle-file-attributes) (tramp-smb-handle-file-directory-p) (tramp-smb-handle-file-exists-p) (tramp-smb-handle-file-writable-p): Add `with-cache-data'. (tramp-smb-handle-copy-file, tramp-smb-handle-delete-directory) (tramp-smb-handle-delete-file, tramp-smb-handle-rename-file) (tramp-smb-handle-write-region): Flush cached data. (tramp-smb-open-connection) Call `tramp-enter-password' and `tramp-clear-passwd' with changed parameters. * tramp-vc.el (top): Reduce compiler warnings. 2005-09-07 Michael Albinus * tramp.el (tramp-action-password): Compile the password prompt from `method', `user' and `host'. Sometimes it isn't obvious which password to enter, for example with remote files offered by recentf.el. Suggested by Robert Marshall . 2005-09-03 Michael Albinus * tramp.el (top): Rewrite compiler wrapping for `warnings'. (tramp-ls-command, tramp-test-groks-nt) (tramp-test-groks-nt): Remove variables. (tramp-handle-file-accessible-directory-p): Remove function. (tramp-file-name-handler-alist): Remove entry for `file-accessible-directory-p'. Due to caching it doesn't make sense to call the test commands explicitly. (tramp-handle-file-exists-p): Format-string must be given now. (tramp-handle-file-attributes-with-stat): Don't use hard-coded "stat" command. (tramp-handle-file-newer-than-file-p): Simplify call of `tramp-run-test2' by using `tramp-get-test-nt-command'. (tramp-handle-file-directory-p): `tramp-run-test' should be sufficient. (tramp-handle-file-name-all-completions): Don't use hard-coded "test" command. (tramp-handle-make-auto-save-file-name): `tramp-subst-strs-in-string' should be applied all cases. (tramp-run-test): Use `with-parsed-tramp-file-name'. (tramp-run-test2): PROGRAM is replaced by FORMAT-STRING. SWITCH not needed anymore. (tramp-find-file-exists-command): Don't use hard-coded "test" and "ls" commands. Work with local file names but remote file names. (tramp-post-connection): Remove settings for `tramp-file-exists-command', `tramp-ls-command', `tramp-test-groks-nt', `tramp-connection-property' "perl", tramp-connection-property "perl-scripts", `tramp-connection-property' "ln" and `tramp-connection-property' "stat". They are set on-the-fly. (tramp-convert-file-attributes): Rewrite setting directory indication bit. (tramp-get-ls-command, tramp-get-file-exists-command) (tramp-get-remote-perl, tramp-get-remote-stat): (tramp-get-remote-ln): Rewrite. (tramp-bug): Remove deleted variables. (tramp-handle-set-visited-file-modtime) (tramp-handle-insert-file-contents) (tramp-handle-write-region): Insert special handling for `last-coding-system-used' again, it still seems to be necessary (unlike stated before). Reported by Toshinori Sugita . * tramp-cache.el (top): Rewrite compiler wrapping for `with-no-warnings. (tramp-cache-get-file-property): Add new parameter DEFAULT. (tramp-cache-flush-file): Don't use the message. (with-cache-data): Applicable for absolute file names only. 2005-08-31 Michael Albinus * tramp.el (tramp-file-name-handler-alist) (tramp-file-name-for-operation): Add `make-auto-save-file-name'. (tramp-handle-make-auto-save-file-name): Rename from `tramp-make-auto-save-file-name'. (tramp-exists-file-name-handler): New defun. (tramp-advice-make-auto-save-file-name): Make defadvice only when `make-auto-save-file-name' is not a magic file name operation. 2005-08-28 Michael Albinus * Makefile.in: Replace trampcache.el by tramp-cache.el. * trampcache.el: Removed. Replaced by tramp-cache.el. * tramp-cache.el: New file. Implementation inspired by work of Daniel Pittman . * tramp.el: Introduce filename caching. Require `tramp-cache'. (tramp-syntax): Correct doc string. (tramp-handle-file-truename, tramp-handle-file-exists-p) (tramp-handle-file-executable-p, tramp-handle-file-readable-p) (tramp-handle-file-accessible-directory-p) (tramp-handle-file-directory-p, tramp-handle-file-writable-p) (tramp-handle-file-ownership-preserved-p): Add `with-cache-data'. (tramp-handle-file-attributes): Add `with-cache-data'. Check also for existence of applicable stat(1) command, which is preferred over the Perl script. (tramp-handle-file-attributes-with-stat, tramp-get-remote-stat): New defuns. (tramp-handle-set-file-modes, tramp-handle-add-name-to-file) (tramp-do-copy-or-rename-file, tramp-handle-delete-directory) (tramp-handle-delete-file, tramp-handle-dired-compress-file) (tramp-handle-dired-recursive-delete-directory) (tramp-handle-write-region): Flush cached data. (tramp-pre-connection): Initialise cache. (tramp-post-connection): Check for stat(1) command. (tramp-maybe-open-connection): Optimize code. (tramp-convert-file-attributes): Handle also attributes returned by stat. 2005-08-25 Michael Albinus * tramp.el (tramp-password-prompt-regexp): There might be other words before trailing ":". Reported by Kurt Steinkraus . (tramp-chunksize): Improve docstring. (tramp-set-auto-save-file-modes): Octal integer code #o600 breaks Emacs 20. Use `tramp-octal-to-decimal' therefore. Reported by Christian Joergensen . 2005-08-23 Michael Albinus * tramp.el (tramp-chunksize): Improve docstring. 2005-08-21 Michael Albinus * tramp.el: Rewrite communication functions in order to apply them more transparent. Change their use (f.e. remove unnecessary `erase-buffer', `tramp-wait-for-output' and `sit-for' calls). (tramp-send-string): Erases communication buffer. Calls `process-send-string'. Always should be used as basic function sending input (except passwords, see comment there). Parameter xxx has been removed; buffer is always erased. (tramp-accept-process-output): Calls `accept-process-output'. Basic function receiving output. (tramp-wait-for-regexp): Basic function checking output for any regexp. (tramp-wait-for-shell-prompt): Calls `tramp-wait-for-regexp'. (tramp-barf-if-no-shell-prompt): Calls `tramp-wait-for-shell-prompt'. (tramp-wait-for-output): Like `tramp-wait-for-shell-prompt', but looks for own defined prompt. (tramp-send-command-internal): Calls `tramp-send-string' and `tramp-barf-if-no-shell-prompt'. (tramp-send-command): Calls `tramp-send-string' and `tramp-wait-for-output'. Parameter NOERASE has been removed (buffer is always erased in `tramp-send-string'). New parameter NOOUTPUT in case output should not be retrieved.. (tramp-send-command-and-check): Calls `tramp-send-command', checks tramp_exit_status. (tramp-barf-unless-okay): Calls `tramp-send-command-and-check'. * tramp.el: Other changes. (tramp-debug-message, tramp-message-for-buffer): Simplify code. (tramp-trace): Trace messages should be visible for verbosity 10 only. (tramp-handle-write-region, tramp-find-executable): Just the last "EOF" is sent by `tramp-send-command', all previous parts of the command are sent by `tramp-send-string`. (tramp-find-shell, tramp-process-initial-commands) (tramp-open-connection-setup-interactive-shell): Apply `tramp-send-command-internal' for equivalent code sequence. (tramp-process-one-action, tramp-accept-process-output) (tramp-send-command-internal): Add debug messages. (tramp-wait-for-regexp, tramp-wait-for-output): Optimize initial check. Remove trace; this is done at lower level. (tramp-discard-garbage-erase-buffer): Function removed, shouldn't be necessary any longer. (tramp-post-connection): Don't compose string with `tramp-rsh-end-of-line'. This is done anyway in `tramp-send-string'. (tramp-maybe-open-connection): "Are you awake" must be sent by `tramp-send-string', because there is an own process output handling afterwards. * tramp-smb.el: Remove unnecessary `save-excursion' calls; this is done in basic functions when necessary. (tramp-smb-not-handled): First argument can be something else than a string (filename). Handle this case for error message. (tramp-smb-get-file-entries, tramp-smb-maybe-open-connection) (tramp-smb-wait-for-output): Simplify code. (tramp-smb-send-command): Most functionality is now in `tramp-send-string'. 2005-08-09 Michael Albinus * tramp.el (tramp-make-tramp-file-name): METHOD must not be prepopulated. (tramp-bug): Fix variable names. 2005-08-07 Michael Albinus * tramp.el: Remove defvar of `last-coding-system-used' in the XEmacs case; not necessary anymore. (tramp-handle-set-visited-file-modtime) (tramp-handle-insert-file-contents) (tramp-handle-write-region): No special handling for `last-coding-system-used, because this is done in `tramp-accept-process-output' now. (tramp-accept-process-output): New defun. (tramp-process-one-action, tramp-wait-for-regexp) (tramp-wait-for-output, tramp-discard-garbage-erase-buffer): Call it. Reported by David Howells . (clear-visited-file-modtime): Defadvice removed. The check for unset buffer's modtime does not need to be based on `tramp-buffer-file-attributes'. Suggested by RMS. (tramp-send-command): Simplify. (tramp-make-tramp-file-name): At least method and host delimiter must exist. * tramp-smb.el: Remove defvar of `last-coding-system-used' in the XEmacs case; not necessary anymore. (tramp-smb-handle-write-region): No special handling for `last-coding-system-used, because this is done in `tramp-accept-process-output' now. (tramp-smb-wait-for-output): Call `tramp-accept-process-output'. Simplify trace message. 2005-08-01 Michael Albinus * tramp.el (tramp-debug-message): Handle the case, that `backtrace-frame' returns a lambda expression, or nil. (tramp-message): Don't use ARGS as format string, it could contain "%". (tramp-wait-for-regexp, tramp-wait-for-output): Add a format string to the call of `tramp-trace'. (tramp-discard-garbage-erase-buffer): Beautify trace. 2005-08-01 Thien-Thi Nguyen Update years in copyright notice. 2005-07-31 Michael Albinus * tramp.el (tramp-uudecode): Remove shell function frame to make it fit for `tramp-maybe-send-script'. (tramp-perl-file-attributes) (tramp-perl-directory-files-and-attributes): Add Perl call to make it fit for `tramp-maybe-send-script'. Double "%". (tramp-perl-encode-with-module, tramp-perl-decode-with-module) (tramp-perl-encode, tramp-perl-decode): Change it to a defconst. (tramp-debug-message, tramp-trace): New defsubst. (tramp-message): Call it. (tramp-handle-file-local-copy): Call `insert-buffer-substring' instead of `insert-buffer'. Compiler warning. (tramp-maybe-send-perl-script): Rename to `tramp-maybe-send-script'. Simplify sending the string. (tramp-handle-file-attributes-with-perl) (tramp-handle-directory-files-and-attributes): Call it. (tramp-find-shell): Use `tramp-barf-if-no-shell-prompt' for code sequence with same logic. (tramp-wait-for-regexp, tramp-wait-for-output) (tramp-discard-garbage-erase-buffer) (tramp-send-command, tramp-send-string): Simplify trace messages. (tramp-post-connection): Don't send all coding scripts. This will be done if necessary only. (tramp-coding-commands): Split into new defconst `tramp-local-coding-commands' and `tramp-remote-coding-commands'. (tramp-find-inline-encoding): Rewrite. Use new coding constants in order to send only scripts when needed. (tramp-bug): Adapt list of variables. 2005-07-28 Michael Albinus * tramp.el (tramp-handle-write-region): Remove unnecessary code. 2005-07-26 Michael Albinus * tramp.el (tramp-user-regexp): Allow "@" as part of user name. (tramp-last-cmd, tramp-process-echoes) (tramp-feature-write-region-fix): Remove variables. They are mostly not used. 2005-07-21 Juanma Barranquero * tramp.el (tramp-handle-load): Fix typo in error message. 2005-07-20 Michael Albinus * tramp.el (tramp-completion-handle-expand-file-name): Discard call of `tramp-drop-volume-letter'. It is not necessary, and there have been problems with (expand-file-name "~/.netrc" "/") in ange-ftp. Reported by Richard G. Bielawski . 2005-07-17 Michael Albinus * tramp.el (tramp-do-copy-or-rename-file-out-of-band): Transfer message should always be visible. (tramp-handle-insert-directory, tramp-append-tramp-buffers): Pacify byte-compiler. (tramp-bug): Delete non-existing variables from list. Apply `tramp-load-report-modules' as pre-hook. Mask `tramp-password-prompt-regexp', `tramp-shell-prompt-pattern' and `shell-prompt-pattern' because of non-7bit characters. Reported by Sebastian Luque . (tramp-reporter-dump-variable, tramp-load-report-modules): New defuns. 2005-07-10 Michael Albinus * tramp.el (tramp-match-string-list): Remove function. (tramp-wait-for-regexp): Remove call of that function. Suggested by Kim F. Storm . 2005-07-05 Lute Kamstra Update FSF's address in GPL notices. 2005-06-26 Michael Albinus * tramp.el (tramp-set-auto-save-file-modes): Use octal integer code #o600 instead of octal character code ?\600. The latter resulted in a syntax error with XEmacs. 2005-06-19 Michael Albinus * Makefile.in: * tramp.el: * tramp-ftp.el: * tramp-uu.el: * trampver.el.in: Adapt email addresses. 2005-06-14 Juanma Barranquero * tramp.el (tramp-find-file-exists-command) (tramp-find-shell): Follow error conventions. 2005-05-17 Juanma Barranquero * tramp-smb.el (tramp-smb-open-connection): Pass `tramp-chunksize' as fourth (required) argument. 2005-05-01 Michael Albinus * tramp.el (tramp-handle-dired-call-process) (tramp-handle-insert-directory):`insert-buffer' cannot be used because the contents of the Tramp buffer is changed before insertion (`expand-file' and alike). (tramp-handle-insert-directory): If `localname' has an empty nondirectory name, it must not be quoted. 2005-04-29 Michael Albinus * tramp.el (tramp-set-auto-save-file-modes): Set file modes of `buffer-auto-save-file-name' to ?\600 as fallback solution. Reported by Ferenc Wagner . 2005-04-16 Michael Albinus * tramp.el (tramp-pre-connection): Add parameter CHUNKSIZE. Make local variable `tramp-chunksize'. Change callees. (tramp-open-connection-setup-interactive-shell): Check remote host for buggy `send-process-string' implementation. Set `tramp-chunksize' if found. Reported by Michael Kifer (and a lot of other people all the years). 2005-04-13 Michael Albinus * tramp.el (tramp-handle-shell-command): `insert-buffer' cannot be used because the contents of the Tramp buffer is changed before insertion (`expand-file' and alike). Reported by Frédéric Bothamy . 2005-04-03 Michael Albinus * tramp.el (tramp-set-auto-save): Actions should be done for Tramp file name handler only. Ange-FTP has its own auto-save mechanism. Reported by Richard G. Bielawski . (tramp-bug): Remove obsolete variable. (tramp-append-tramp-buffers): Rewrite partly. More suitable check for presence of `mml-mode'. Make it running for older Emacsen as well. 2005-02-27 Michael Albinus * tramp.el (tramp-append-tramp-buffers): New defun. (tramp-bug): Apply `tramp-append-tramp-buffers' as post-hook. Catch `dont-send' signal. 2005-02-20 Michael Albinus * tramp.el (tramp-set-auto-save-file-modes): Set always permissions, because there might be an old auto-saved file belonging to another original file. This could be a security threat. Reported by Kjetil Kjernsmo . 2005-02-16 Michael Albinus * tramp-smb.el (tramp-smb-prompt): Prompt can contain spaces inside directory names. (tramp-smb-handle-delete-directory, tramp-smb-handle-delete-file): No error message if DIRECTORY or FILENAME doesn't exist. 2005-02-12 Michael Albinus * tramp.el (tramp-set-auto-save-file-modes) Check for Emacs 21.3.50 removed. 2005-02-09 Kim F. Storm Change release version from 21.4 to 22.1 throughout. 2005-02-05 Michael Albinus * tramp.el (all): Change all addresses to .gnu.org. 2005-01-16 Michael Albinus Version 2.1.3 released. * tramp.el (TODO): Remove some items which are solved or obsolete. 2005-01-15 Michael Albinus * tramp.el (tramp-operation-not-permitted-regexp) New defcustom, catching keep-date problems in cp/scp operations. (tramp-handle-copy-file): Don't call `set-file-modes' unconditionally. Specialized functions should know better what is necessary. This improves performance a little bit, and the functions could catch errors with `cp -p' and `scp -p'. (tramp-do-copy-or-rename-file-via-buffer) (tramp-do-copy-or-rename-file-out-of-band): Call `set-file-modes' when appropriate. (tramp-do-copy-or-rename-file-directly): Mask `cp -p' error. Call `set-file-modes' when appropriate. (tramp-action-out-of-band): Mask `scp -p' error. Reported by Isak Johnsson . 2005-01-09 Michael Albinus * tramp-util.el (tramp-remap-command): New defun. (top): Remove `define-key' calls. They are replaced by respective `tramp-remap-command' and `add-menu-button' calls. Add `tramp-minor-mode' to `dired-mode-hook'. (tramp-compile, tramp-recompile): Call the commands asynchronously. Add `compilation-mode' to *Compilation* buffer. 2005-01-05 Michael Albinus * tramp.el: Fix copyright years. * tramp-smb.el: Fix copyright years. Adapt author address. * tramp-util.el: Fix copyright years. Adapt author address. (tramp-minor-mode): Mode must toggle. 2005-01-04 Michael Albinus * tramp.el (tramp-maybe-open-connection): If the local host does not run a UNIX derivate, the local shell cannot handle command sequences separated with ";". Reported by Takashi Tsunakawa . * tramp-smb.el (tramp-smb-open-connection): Check existence of `tramp-smb-program'. * tramp-util.el (tramp-compile, tramp-recompile): Enable `tramp-minor-mode' in buffer "*Compilation*". 2004-12-29 Michael Albinus * tramp-smb.el: Add new Todo item. * tramp-util.el (tramp-minor-mode): New minor mode. Add it to `find-file-hooks'. (tramp-minor-mode-map): Respective map. Add remapping for `compile' and `recompile'. (tramp-recompile): New defun. 2004-12-25 Michael Albinus * tramp.el (tramp-get-buffer, tramp-get-debug-buffer): Discard the undo list of both Tramp buffer and debug buffer. Reported by Joakim Verona . 2004-12-23 Michael Albinus * tramp.el (tramp-file-name-for-operation): Mark `shell-command' as magic for Emacs only. (tramp-wait-for-output): Fix error in deleting region. From Kai Grossjohann . * tramp-vc.el (tramp-vc-do-command, tramp-vc-do-command-new) (tramp-vc-simple-command): Call `tramp-handle-shell-command' but `shell-command', because it isn't magic in XEmacs. Reported by Adrian Aichner . 2004-12-22 Michael Albinus * tramp-smb.el (tramp-smb-file-name-handler-alist): Add entry for `substitute-in-file-name. (tramp-smb-handle-substitute-in-file-name): New defun. (tramp-smb-advice-PC-do-completion): Delete advice. 2004-12-05 Michael Albinus * tramp.el (tramp-maybe-send-perl-script): Change order of parameters wrt Tramp convention. (tramp-handle-file-attributes-with-perl) (tramp-handle-directory-files-and-attributes): Apply it. 2004-11-26 Lars Hansen Sync with Emacs CVS (Michael Albinus ) * tramp.el (tramp-handle-directory-files-and-attributes): New function. (tramp-perl-directory-files-and-attributes): New constant. (tramp-file-name-handler-alist): Delete file-directory-files, add directory-files-and-attributes. (tramp-perl-file-attributes): Surround uid and gid by double quotes. Change parameter id-format from nonnumeric. (tramp-convert-file-attributes): New function. (tramp-handle-file-attributes): Use it. (tramp-maybe-send-perl-script): New function. (tramp-handle-file-attributes-with-perl): Use it. Don't convert file mode. Change parameter id-format from nonnumeric. (tramp-handle-file-attributes-with-ls): Change parameter id-format from nonnumeric. (tramp-post-connection): Don't send tramp-perl-file-attributes script. Reset connection property "perl-scripts". (tramp-handle-insert-directory): Run real handler when ls-lisp is in use. 2004-12-04 Michael Albinus * tramp.el (tramp-do-copy-or-rename-file-out-of-band): Check for existence of `copy-program'. Reported by Zack Weinberg . 2004-11-06 Richard M. Stallman * tramp.el (tramp group): Add :version. 2004-11-05 Kai Grossjohann * tramp.el (tramp-coding-commands): Additionally try "uudecode -o /dev/stdout" before trying "uudecode -o -". Suggested by Han Boetes. (tramp-uudecode): Mention `uudecode -o /dev/stdout'. 2004-07-06 Kai Grossjohann * tramp.el (tramp-handle-file-newer-than-file-p): Reverse logic. From Andrew J. Korty . 2004-10-23 Kai Grossjohann * tramp-vc.el (vc-do-command): Do not advise it if process-file is fboundp. * tramp.el (tramp-file-name-handler-alist): Add entry for process-file. (tramp-handle-process-file): New function. (tramp-file-name-for-operation): Support process-file. 2004-10-17 Michael Albinus * tramp-smb.el (tramp-smb-advice-PC-do-completion): Make the advice less fragile. Surround temporary redefinition of `substitute-in-file-name' with `unwind-protect'. Suggested by Matt Hodges . 2004-10-15 John Paul Wallington * tramp.el (top): Set `edebug-form-spec' property directly rather than calling `def-edebug-spec'. 2004-10-12 Michael Albinus * tramp-smb.el (tramp-smb-advice-PC-do-completion): Don't activate advice during definition. This is done later on, depending on test result of `substitute-in-file-name'. Suggested by Stefan Monnier . 2004-10-10 Michael Albinus * tramp.el (top): Apply `def-edebug-spec' only if function is defined. This is not the case for XEmacs without package "edebug". (tramp-set-auto-save-file-modes): Set permissions of autosaved remote files to the permissions of the original file. This is not the case for Emacs < 21.3.50 and XEmacs < 21.5. Add function to `auto-save-hook'. Reported by Thomas Prokosch . 2004-10-10 Kai Grossjohann * tramp.el (tramp-coding-commands): New entry, uses built-in uu encoding provided by Perl. Contributed by Slaven Rezic. (2 lines.) 2004-09-19 Michael Albinus Version 2.1.2 released. * tramp.el (tramp-handle-substitute-in-file-name): Implementation reworked. It handles now both "//" and "/~" for URL syntax. (top): Undefine also "~" in `read-file-name-map' when syntax is 'url. Needed for XEmacs. * tramp-efs.el, tramp-ftp.el (top): Add `tramp-handle-substitute-in-file-name' to respective file name handler. Doesn't seem to work for EFS yet. 2004-09-08 Michael Albinus * tramp.el (tramp-perl-decode): Fixed an error in Perl implementation. $pending must be cleared every loop. Reported by Benjamin Place . 2004-09-05 Michael Albinus * tramp.el (top): Undefine "/" in `read-file-name-map' when syntax is 'url. Otherwise, XEmacs would break the syntax with `minibuffer-electric-separator'. 2004-09-04 Michael Albinus * tramp-efs.el (all): Rename `tramp-postfix-single-method-*' to `tramp-postfix-method-*'. 2004-08-31 Michael Albinus * tramp.el (tramp-maybe-open-connection): The echo command encloses every single word with '\"'. Otherwise, the message could be detected during connection already, and Tramp raises a false error. 2004-08-29 Michael Albinus Adding URL syntax. * tramp.el (tramp-unified-filenames): Renamed to `tramp-syntax'. (tramp-prefix-format, tramp-prefix-regexp, tramp-method-regexp) (tramp-postfix-method-regexp, tramp-user-regexp) (tramp-postfix-user-format, tramp-postfix-user-regexp) (tramp-host-regexp, tramp-host-with-port-regexp) (tramp-postfix-host-format, tramp-postfix-host-regexp) (tramp-localname-regexp, tramp-file-name-structure) (tramp-file-name-regexp, tramp-completion-file-name-regexp): Defcustom changed to defconst. Partly syntax clarified, e.g. no regexp is optional any longer. (tramp-postfix-single-method-format): Renamed to `tramp-postfix-method-format'. (tramp-prefix-port-format, tramp-prefix-port-regexp) (tramp-port-regexp, tramp-file-name-regexp-url) (tramp-completion-file-name-regexp-url): New defconst. (tramp-file-name-handler-alist): Add entry for `substitute-in-file-name'. (tramp-handle-substitute-in-file-name): New defun. (tramp-do-copy-or-rename-file) (tramp-do-copy-or-rename-file-out-of-band) (tramp-maybe-open-connection): Apply `tramp-host-with-port-regexp'. (top): Delete autoloaded handlers from file name handler alist before adding them. Useful if another syntax is chosen. (tramp-completion-mode): Some adaptations due to URL syntax. I'm not sure whether this is the final implementation. (tramp-completion-dissect-file-name): Some adaptations due to URL syntax. Mainly because `tramp-postfix-method-regexp' matches more than one char in URL syntax. (tramp-completion-dissect-file-name1): Simplification of implementation. * tramp-smb.el (tramp-smb-file-name-handler-alist): Add entry for `substitute-in-file-name'. 2004-08-15 Michael Albinus * tramp.el (tramp-handle-rename-file): Apply t for KEEP-DATE when calling `tramp-do-copy-or-rename-file'. (tramp-do-copy-or-rename-file-out-of-band): If KEEP-DATE is true, and the method doesn't provide a keep-date argument, call `set-file-times' after copying. 2004-08-14 Michael Albinus * tramp.el (tramp-methods): "sftp" has nil `tramp-copy-keep-date-arg'. (tramp-do-copy-or-rename-file-out-of-band): Handle it. 2004-08-09 Michael Albinus Version 2.1.1 released. * tramp.el (tramp-methods): "sftp", "psftp": new external methods. "plink", "plink1" and "pscp": parameter for port specification is "-P". 2004-08-06 Michael Albinus * tramp.el (tramp-post-connection): Quote $1 and $2 of shell function "tramp_file_attributes". Otherwise, file names containing spaces are misinterpreted. Reported by Magnus Henoch . 2004-08-05 Michael Albinus * tramp.el (tramp-handle-file-truename): FILENAME must be expanded first. Otherwise, parameters like "/ssh:deego@gnufans.net:~" will return obscure results. Reported by D. Goel . 2004-08-03 Michael Albinus * tramp.el (tramp-methods): Change custom definition of log-args to the new syntax. (tramp-wrong-passwd-regexp): Add "Tramp connection closed" string. (tramp-maybe-open-connection): Add "echo \"Tramp connection closed\"" to connection command. By this, we will see easily when a connection has failed. 2004-08-02 Michael Albinus * tramp.el (tramp-methods): Add "(-p" "%p)" in login-args where applicable for the port kludge. Arrange login-args as list of lists, in order to discard a sublist when the corresponding parameter is not set (like user name, port number). Adapt docstring. (tramp-maybe-open-connection): Change evaluation of login-args according the the changes above. (tramp-make-tramp-file-name): Use "%l" as placeholder for the localname part. "%p" is used for port numbers now, and we want to avoid headaches. 2004-08-01 Michael Albinus * tramp.el (tramp-default-method-alist) (tramp-default-proxies-alist): Correcting doc string. (tramp-default-user, tramp-default-user-alist) (tramp-default-host): New defcustom. (tramp-do-copy-or-rename-file-out-of-band) (tramp-handle-expand-file-name, tramp-action-login) (tramp-buffer-name, tramp-debug-buffer-name) (tramp-maybe-open-connection) (tramp-read-passwd, tramp-clear-passwd): Apply `tramp-find-user' and `tramp-find-host'. (tramp-find-default-method): Allow nil regexps. (tramp-find-default-user, tramp-find-user) (tramp-find-default-host, tramp-find-host): New defun. * tramp-smb.el (top): Add empty (anonymous) user to `tramp-default-user-alist' for smb method. 2004-07-31 Michael Albinus * tramp.el (tramp-maybe-open-connection): Foreign and out-of-band methods are not supported for multi-hops. 2004-07-30 Michael Albinus * trampver.el.in (top): Check for (X)Emacs version. Code is from macro AC_EMACS_INFO of aclocal.m4. * tramp.el (top): Remove (X)Emacs version check. (tramp-maybe-open-connection): Handle nil values in `tramp-default-proxies-alist'. 2004-07-28 Michael Albinus * tramp.el (tramp-maybe-open-connection): Set `coding-system-for-read'. It was lost last patch. * tramp-smb.el (all): Don't load "cl-seq", Emacs 19 is out of scope. Remove `with-parsed-tramp-file-name' kludge. Debugging spec set in tramp.el is sufficient. Remove multi-method parameter from `tramp-message-for-buffer' calls. (tramp-smb-open-connection): Set `coding-system-for-read' to nil. Check for Emacs 20 is not necessary any longer. * tramp-ftp.el (top): Don't load "cl-seq", Emacs 19 is out of scope. 2004-07-26 Michael Albinus Removing multi-hop methods. Incorporating proxies. * tramp.el (all): Check for (X)Emacs version. Remove (X)Emacs 20.x or 19.x kludges. Pacify byte-compiler where possible. Remove all MULTI-METHOD parameters. (tramp-multi-sh-program, tramp-multi-methods) (tramp-multi-connection-function-alist) (tramp-postfix-multi-method-format) (tramp-postfix-multi-method-regexp) (tramp-postfix-multi-hop-format, tramp-postfix-multi-hop-regexp) (tramp-multi-file-name-structure) (tramp-multi-file-name-hop-structure) (tramp-make-multi-tramp-file-format, tramp-multi-actions) (tramp-current-multi-method, tramp-dos-coding-system) (tramp-buffer-name-multi-method, tramp-multi-action-login) (tramp-multi-action-password, tramp-multi-action-succeed) (tramp-multi-action-permission-denied) (tramp-multi-action-process-alive, tramp-process-one-multi-action) (tramp-process-multi-actions, tramp-open-connection-telnet) (tramp-open-connection-rsh, tramp-open-connection-su) (tramp-open-connection-multi, tramp-multi-connect-telnet) (tramp-multi-connect-rlogin, tramp-multi-connect-su) (tramp-dissect-multi-file-name, tramp-make-tramp-multi-file-name): Removed. (tramp-methods): Remove all `tramp-connection-function' parameters. Expand `tramp-login-args' parameters instead. Remove "multi" method. (tramp-default-proxies-alist): New defcustom. (tramp-maybe-open-connection): Completely rewritten. (tramp-bug): `tramp-current-multi-method', `tramp-multi-file-name-structure', `tramp-multi-file-name-hop-structure', `tramp-multi-methods', `tramp-multi-connection-function-alist' and `tramp-multi-actions' removed. `tramp-default-method-alist' and `tramp-default-proxies-alist' added. * tramp-efs.el (all): Remove all MULTI-METHOD parameters. * tramp-ftp.el (all): Remove all MULTI-METHOD parameters. * tramp-smb.el (all): Remove all MULTI-METHOD parameters. * tramp-vc.el (all): Remove all MULTI-METHOD parameters. 2004-07-25 Michael Albinus * tramp.el (tramp-handle-verify-visited-file-modtime): If file does not exist, say it is not modified if and only if that agrees with the buffer's record. (tramp-handle-write-region): Pass modtime explicitly to `set-visited-file-modtime', because filename can be different from (buffer-file-name) if `file-precious-flag' is set. All changes suggested by Luc Teirlinck . 2004-07-24 Michael Albinus * tramp.el (tramp-handle-set-visited-file-modtime): If `time-list' is not nil, don't apply the whole body. If the file doesn't exist, set modtime to '(-1 65535). (tramp-handle-verify-visited-file-modtime): Check whether a file is visiting the buffer, or the buffer has no recorded last modification time. Return t in case the visiting file doesn't exists. (tramp-handle-write-region): `set-visited-file-modtime' must be called always when `visit' is t or a string. All changes suggested by Luc Teirlinck . 2004-07-22 Michael Albinus * tramp.el (tramp-handle-write-region): `set-visited-file-modtime' must be called always if `visit' is non-nil. Emacs Lisp documentation is not clear in this point, `write-region' implementation clarifies. 2004-07-17 Kai Grossjohann * tramp.el (tramp-handle-verify-visited-file-modtime): Remove outdated comment. (tramp-handle-verify-visited-file-modtime): New docstring. From Luc Teirlinck. 2004-07-14 Luc Teirlinck * tramp.el (tramp-handle-verify-visited-file-modtime): `visited-file-modtime' now returns a list of two integers, instead of a cons. 2004-07-04 Michael Albinus * tramp.el (tramp-open-connection-rsh): If a port is given, the Tramp buffer name must still contain the port number. Otherwise, we have two Tramp buffers, with all the confusion. Reported by Myron Selby and Rolf Dubitzky . 2004-06-26 Kai Grossjohann * tramp.el (tramp-handle-file-remote-p): New implementation to agree with new return value of `file-remote-p'. 2004-06-13 Michael Albinus * tramp.el (tramp-handle-find-backup-file-name): `copy-tree' is available since Emacs 21.4 only (XEmacs has it). Implementation rewritten in order to avoid this function. (tramp-handle-write-region): Set current buffer. If connection wasn't open, `file-modes' has changed it accidently. Reported by David Kastrup . 2004-06-09 Michael Albinus * tramp.el (tramp-sh-file-name-handler): Leaving this function, `tramp-locked' must be reset to the same value as during entering. 2004-06-06 Michael Albinus * tramp.el (tramp-enter-password, tramp-read-passwd): New arguments USER and HOST. (tramp-action-password, tramp-multi-action-password): Apply it. * tramp-smb.el (tramp-smb-open-connection): Apply USER and HOST to `tramp-enter-passwd'. 2004-06-03 Michael Albinus * tramp.el (all): Code cleanup. Change all `tramp-handle-xxx' calls to respective `xxx` calls. * tramp-vc.el (all): Code cleanup. Change all `tramp-handle-xxx' calls to respective `xxx` calls. 2004-06-01 Michael Albinus * tramp.el (tramp-process-alive-regexp): Precise doc string. (tramp-multi-action-process-alive): New defun. (tramp-multi-actions): Use it. 2004-05-30 Kai Grossjohann * tramp.el (tramp-locked, tramp-locker): New variables for implementing a global lock. (tramp-sh-file-name-handler): Use them to implement the global lock. (tramp-let-maybe): ReportReverse args of `get'. (tramp-let-maybe): Move to an earlier spot in the file. Patch by Andreas Schwab. (tramp-handle-file-local-copy-hook): New hook. (tramp-handle-file-local-copy): Run it. (tramp-handle-write-region-hook): New hook. (tramp-handle-write-region): Run it. 2004-05-29 Michael Albinus * tramp.el (tramp-file-name-handler-alist) (tramp-file-name-for-operation): Add entry for `file-remote-p'. (tramp-handle-file-remote-p): New defun. (top): Remove setting of `file-remote-p'. Don't set `inhibit-file-name-handlers' and `inhibit-file-name-operation'. * tramp-smb.el (tramp-smb-file-name-handler-alist): Add entry for `file-remote-p'. 2004-05-28 Kai Grossjohann * tramp-smb.el (tramp-smb-open-connection): Use tramp-set-process-query-on-exit-flag compat function. * tramp.el (tramp-set-process-query-on-exit-flag): New compat function. (tramp-open-connection-multi, tramp-open-connection-su) (tramp-open-connection-rsh, tramp-open-connection-telnet) (tramp-do-copy-or-rename-file-out-of-band): Use it. (tramp-let-maybe): New macro, let-binds a variable only if it isn't obsolete. (tramp-check-ls-commands, tramp-handle-expand-file-name) (tramp-handle-file-truename): Use it. 2004-05-23 Michael Albinus * tramp.el (top): Add `tramp-completion-file-name-handler' to `inhibit-file-name-handlers', and `file-local-copy' to `inhibit-file-name-operation'. Needed for proper working of `file-remote-p'. 2004-05-20 Michael Albinus * tramp.el (tramp-out-of-band-prompt-regexp): Renamed to `tramp-process-alive-regexp', because its usage is widen. (tramp-actions-copy-out-of-band): Apply it. (tramp-actions-before-shell, tramp-multi-actions): Add `tramp-action-process-alive' action. (tramp-action-process-alive): New defun. (tramp-process-one-action, tramp-process-one-multi-action): Remove check for process status. Will be performed by the respective action now. Reported by Ted Stern . 2004-05-16 Michael Albinus * tramp-uu.el (tramp-uuencode-region): Padding characters aren't counted for (last) line. Reported by Aaron Ucko . * Makefile.in (TODO): New item, inspired by Kai's change. 2004-05-16 Kai Grossjohann * tramp.el (tramp-completion-file-name-regexp-unified): Avoid matching filenames starting with "/:" -- those are reserved for file-name-non-special. 2004-05-13 Michael Albinus * tramp.el (tramp-process-one-action) (tramp-process-one-multi-action, tramp-wait-for-regexp) (tramp-wait-for-output): Throw away if process has died. Reported by Luc Teirlinck . 2004-05-12 Kai Grossjohann * tramp.el (tramp-initial-commands): Add "unset HISTFILE"; this is not really necessary but seems to keep the shell history smaller in some cases. It is no substitute for setting HISTFILE and HISTSIZE from tramp-open-connection-setup-interactive-shell, though. Suggested by Luc Teirlinck. (tramp-open-connection-setup-interactive-shell): Export variables HISTFILE and HISTSIZE, do not just set them. From Luc Teirlinck. 2004-05-02 Kai Grossjohann Version 2.0.40 released. 2004-05-01 Michael Albinus Suppress byte-compiler warnings were possible. * tramp.el (toplevel): Call of `byte-compiler-options' pacified. `directory-sep-char' set to not obsolete (we need it for XEmacs). Define `last-coding-system-used' in XEmacs case. Pacify declarations of `backup-directory-alist', `bkup-backup-directory-info' and `tramp-save-PC-expand-many-files'. (tramp-feature-write-region-fix): Pacify funcall of `find-operation-coding-system'. (tramp-line-end-position): Pacify funcall of `line-end-position' and `point-at-eol'. (tramp-handle-dired-compress-file): Pacify funcall of `dired-remove-file'. (tramp-handle-find-backup-file-name): Pacify access to `tramp-backup-directory-alist' and `tramp-bkup-backup-directory-info'. (tramp-touch): `error' needs just one parameter if there is no string substitution. (tramp-bug): `tramp-backup-directory-alist', `tramp-bkup-backup-directory-info', `backup-directory-alist' and `bkup-backup-directory-info' must be quoted as symbols. * tramp-efs.el (toplevel): Suppress byte-compiler warnings. * tramp-smb.el (toplevel): Suppress byte-compiler warnings. Define `last-coding-system-used' in XEmacs case. * tramp-vc.el (toplevel): Suppress byte-compiler warnings. (tramp-vc-do-command-new): Pacify funcall of `vc-setup-buffer' and `vc-exec-after'. (tramp-vc-workfile-unchanged-p): Pacify funcall of `vc-default-workfile-unchanged-p'. (tramp-handle-vc-user-login-name): Pacify funcall of `subr-arity'. `let' must be `let*' because of `file'. 2004-04-29 Kai Grossjohann * tramp.el (tramp-read-passwd): Construct the key for the password cache in a way that works for multi methods, too. (tramp-bug): Add backup-directory-alist and bkup-backup-directory-info to bug reports, with Tramp counterparts. 2004-04-25 Michael Albinus * tramp.el (tramp-backup-directory-alist) (tramp-bkup-backup-directory-info): New defcustoms. (tramp-file-name-handler-alist): Add entry for `find-backup-file-name'. (tramp-handle-find-backup-file-name): New function. Implements Tramp's find-backup-file-name. * tramp-smb.el (tramp-smb-file-name-handler-alist): Add entry for `find-backup-file-name'. 2004-04-09 Michael Albinus * tramp.el (tramp-do-copy-or-rename-file-via-buffer): Set permissions of the new file. (tramp-handle-file-local-copy, tramp-handle-write-region): The permissions of the temporary file are set if filename exists. Reported by Ted Stern . 2004-04-07 Kai Grossjohann * tramp.el (tramp-open-connection-setup-interactive-shell): Revert weird EOL setting for first stty command (change from 2004-03-30). 2004-04-02 Michael Albinus * tramp.el (tramp-handle-insert-directory): Properly quote file name also if not full-directory-p. Handle wildcard case. Reported by Andreas Schwab . 2004-03-30 Kai Grossjohann * tramp.el (tramp-open-connection-setup-interactive-shell): First stty command needs weird EOL setting -- it is for setting EOL setting... Due to the weird EOL, we might receive garbage from the remote end which b0rks the next command. So we add a placeholder command for this. 2004-03-28 Kai Grossjohann * tramp.el (tramp-process-initial-commands): Avoid liveness check on shell -- we know that it must be alive since we're opening a connection at this moment. (tramp-last-cmd): New internal variable. (tramp-process-echoes): New tunable. (tramp-send-command): Set tramp-last-cmd. (tramp-wait-for-output): Delete echo, if applicable. 2004-03-21 Michael Albinus * tramp.el (tramp-touch): FILE can be a local file, too. (TODO): Remove items done. 2004-03-14 Michael Albinus * Makefile.in: New environment variables $(CONTRIB_FILES) and $(INSTALL_FILES). Don't check for $(USE_CONTRIB) any longer. (all): Depends on $(CONTRIB_FILES), too. (install): Copy $(INSTALL_FILES) but $?. (distclean): Remove also $(CONTRIB_FILES). 2004-03-13 Kai Grossjohann * tramp.el (tramp-do-copy-or-rename-file-via-buffer): Renamed from tramp-do-copy-or-rename-via-buffer (without `file'), to make it consistent with the other tramp-do-* functions. (tramp-do-copy-or-rename-file): Calls adjusted. 2004-03-08 Michael Albinus * tramp.el (tramp-out-of-band-prompt-regexp) (tramp-actions-copy-out-of-band): New defcustoms. (tramp-do-copy-or-rename-file-out-of-band): Asynchronous process used instead of a synchronous one. Allows password entering. (tramp-action-out-of-band): New defun. (tramp-open-connection-rsh, tramp-method-out-of-band-p): Remove restriction with password from doc string. (tramp-bug): Add variables `tramp-terminal-prompt-regexp', `tramp-out-of-band-prompt-regexp', `tramp-actions-copy-out-of-band', `password-cache' and `password-cache-expiry'. (toplevel): Remove todo item wrt ssh-agent. Obsolete due to password caching. 2004-03-05 Michael Albinus * Makefile.in (.PHONY): Remove unused targets. (install): Depends on "all". * tramp-vc.el (tramp-vc-workfile-unchanged-p): Correct typo ("file" -> "filename"). Reported by Kim F. Storm . 2004-03-02 Kai Grossjohann * tramp.el (tramp-completion-mode, tramp-md5-function): Use symbol-function to invoke functions only known on some Emacs flavors. This avoids byte-compiler warnings. Reported by Kevin Scaldeferri . 2004-02-29 Kai Grossjohann * Makefile.in (install-ftp, site-lisp): Remove unused targets. Version 2.0.39 released. 2004-02-29 Michael Albinus * tramp.el (top-level): Require password.el if visible. Should be mandatory once No Gnus has found its way into (X)Emacs. (tramp-read-passwd): Invoke `password-read' if available, `read-passwd' otherwise. `ange-ftp-read-passwd' isn't used as fallback any longer. (tramp-clear-passwd): New function. (tramp-process-actions, tramp-process-multi-actions): Clear password cache if login has failed. * tramp-smb.el (tramp-smb-open-connection): Clear password cache if login has failed. 2004-02-23 Kai Grossjohann * tramp.el (tramp-handle-write-region): Say which function is used when encoding. 2004-02-16 Michael Albinus * tramp.el (tramp-async-proc): New variable. (tramp-handle-shell-command): Adding asynchronous processes. They are far from being perfect, but it works at least for `find-grep-dired' and `find-name-dired' in Emacs 21.4. 2004-02-09 Michael Albinus * tramp.el (tramp-handle-dired-compress-file): Added XEmacs implementation. (tramp-handle-dired-compress-file-for-emacs) (tramp-handle-dired-compress-file-for-xemacs): Not needed anymore. Implementation not so different as expected. 2004-02-08 Michael Albinus * tramp.el (tramp-file-name-handler-alist): Add `dired-compress-file' entry. (tramp-handle-dired-compress-file) (tramp-handle-dired-compress-file-for-emacs) (tramp-handle-dired-compress-file-for-xemacs): New functions. `tramp-handle-dired-compress-file-for-xemacs' not implemented yet. 2004-01-24 Michael Albinus * tramp-ftp.el (tramp-ftp-file-name-handler): Unset `ange-ftp-ftp-name-arg' and `ange-ftp-ftp-name-res'. There could be incorrect values from previous calls in case the "ftp" method is used in the Tramp file name. Reported by Katsumi Yamaoka . 2004-01-22 Michael Albinus * tramp.el (tramp-completion-function-alist-ssh): Add `tramp-parse-shostkeys' and `tramp-parse-sknownhosts'. (tramp-completion-function-alist): It's a defvar now, because we want to apply the optimized `tramp-set-completion-function' instead of a static list. (tramp-set-completion-function): Implementation tuned. Avoid double entries, and entries where the function or the file/directory doesn't exist. (tramp-parse-shostkeys, tramp-parse-sknownhosts): New functions for SSH2. 2004-01-18 Michael Albinus * tramp.el (tramp-do-copy-or-rename-file): Handle out-of-band methods. Call `tramp-do-copy-or-rename-file-out-of-band' this case. (tramp-do-copy-or-rename-file-out-of-band): Renamed from `tramp-do-copy-or-rename-file-one-local', because it handles also the case both files use the same out-of-band method. Implementation added. (tramp-handle-file-local-copy, tramp-handle-write-region): Out-of-band handling removed. `copy-file' called instead, which calls `tramp-do-copy-or-rename-file-out-of-band'. (tramp-action-password): Check for out-of-band method removed. This function is used for 'login-program. (tramp-post-connection): Use `tramp-method-out-of-band-p' when appropriate. 2004-01-18 Kai Grossjohann * tramp.el (tramp-do-copy-or-rename-via-buffer): Handle KEEP-DATE arg, if possible. (tramp-touch): Set last-modified time of a remote file. 2004-01-10 Michael Albinus * tramp-smb.el (tramp-smb-get-file-entries): In case of XEmacs, apply a short sleep-for. Otherwise it returns an empty list. No idea what happens. 2004-01-08 Michael Albinus * tramp.el (tramp-buffer-name): Buffer name must contain the user if exists. Reported by Adrian Phillips . 2004-01-06 Michael Albinus * tramp.el (tramp-completion-mode): Make test for XEmacs explicitly. `event-to-character' can exists in Emacs packages too. Reported by Matt Swift . 2004-01-05 Michael Albinus * tramp-smb.el (tramp-smb-maybe-open-connection): Use `tramp-process-connection-type'. 2004-01-03 Kai Grossjohann * tramp.el (tramp-process-connection-type): New variable. (tramp-maybe-open-connection): Use it. 2004-01-03 Kai Grossjohann * tramp.el (tramp-handle-file-local-copy) (tramp-handle-write-region, tramp-open-connection-rsh): Variable name typo. Small change. From Patrick Tullmann . 2003-12-27 Michael Albinus * tramp.el (tramp-completion-mode): Add XEmacs input events. Until now it was not necessary, because they are evaluated in case of unified filenames only. * tramp-efs.el (top): Add all XEmacs download sites to `tramp-default-method-alist'. The existing settings should be sufficient already, but it's better to make it explicitly. (tramp-efs-method-given, tramp-efs-method-regexp): New variables. (tramp-efs-path-regexp, tramp-efs-path-format-string) (tramp-efs-path-format-without-user) (tramp-efs-path-user-at-host-format) (tramp-efs-path-host-format, tramp-efs-path-root-regexp): Changed to a function. Their values depend on the existence of the method tag in filename. (tramp-efs-file-name-handler): Check first whether the method tag is given in a filename. (tramp-efs-file-name-p): A syntax check must be performed first, otherwise `tramp-dissect-file-name' returns with an error. * tramp-ftp.el (Commentary): Removing pointer to EFS. It has its own module. * tramp-smb.el (top): Setting default value in `tramp-default-method-alist' corrected. Order of USER and HOST have been wrong. Nobody claimed for months ... 2003-12-25 Michael Albinus * tramp.el (tramp-completion-mode) Don't check for 'xemacs but `tramp-unified-filenames'. 2003-12-21 Michael Albinus * tramp-smb.el (tramp-smb-errors): Add "NT_STATUS_WRONG_PASSWORD" and "NT_STATUS_NETWORK_ACCESS_DENIED". (tramp-smb-maybe-open-connection): Set `process-connection-type' to 'pty. Suggested by Piet van Oostrum . 2003-12-19 Michael Albinus * tramp-smb.el (tramp-smb-process-running): Removed. Since we acknowledge the virtual prompt for shares, there's no need for distinction of reading shares (process ends afterwards) and interactive mode of smblient. (tramp-smb-open-connection): Setting process sentinel removed. (tramp-smb-wait-for-output): Algorithm simplified, again. Hope it is more robust, too. 2003-12-14 Michael Albinus * tramp-smb.el (tramp-smb-prompt): Add virtual prompt from listing shares, too. (tramp-smb-errors): Add "NT_STATUS_ACCOUNT_LOCKED_OUT". (tramp-smb-wait-for-output): Optimize algorithm getting pending output. If it was received chunkwise, there have been problems. Remove the "prompt not found" error message; it is obvious. 2003-12-06 Michael Albinus * tramp-smb.el (tramp-smb-handle-file-writable-p): Handle the case of non-existing filename, too. Reported by Christoph Bauer . (tramp-smb-get-file-entries): The directory in question should have permissions "drwxrwxrwx". Just virtual, because we don't know the real permissions. Don't we know? 2003-11-30 Kai Grossjohann Version 2.0.38 released. 2003-11-30 Kai Grossjohann * tramp-ftp.el, tramp-smb.el, tramp-util.el, tramp-uu.el: * tramp-vc.el, tramp.el, trampver.el.in: Add arch tagline. 2003-11-29 Kai Grossjohann Version 2.0.37 released. 2003-11-25 Michael Albinus * tramp.el: Add new optional parameter ID-FORMAT to `file-attributes'. Calls of `file-attributes' won't use this parameter for backward compatibility reasons. (tramp-perl-file-attributes): Add a new parameter to Perl script in order to handle uid/gid as strings, if desired. (tramp-handle-file-truename, tramp-handle-file-symlink-p): Apply `file-attributes' instead of `tramp-handle-file-attributes' in order to make the function more general. (tramp-handle-file-attributes): Replace proprietary optional parameter NONNUMERIC by the recently (Emacs 21.4) introduced ID-FORMAT. (tramp-handle-file-attributes-with-perl): Handle parameter NONNUMERIC if set. This wasn't done in the past. (tramp-post-connection): Apply second parameter "$2" if `tramp-remote-perl' is called. * tramp-smb.el (tramp-smb-handle-delete-file): Correct cut'n'waste error (`filename' instead of `directory'). (tramp-smb-handle-directory-files-and-attributes) (tramp-smb-handle-file-attributes): Add recently (Emacs 21.4) introduced parameter ID-FORMAT. (tramp-smb-handle-make-directory-internal): Correct cut'n'waste error (`directory' instead of `ldir'). * tramp-vc.el (tramp-handle-vc-user-login-name): Check if `file-attributes' has a second parameter. If yes, apply it with value "'integer". Otherwise, don't use that parameter (default is integer format). 2003-11-02 Michael Albinus * tramp-ftp.el, tramp.el: Add new Todo item. 2003-08-09 Kai Großjohann * tramp.el (tramp-get-connection-function, tramp-get-remote-sh) (tramp-get-login-program, tramp-get-login-args) (tramp-get-copy-program, tramp-get-copy-args) (tramp-get-copy-keep-date-arg, tramp-get-password-end-of-line): Functions removed. Use `tramp-get-method-parameter' instead. (tramp-get-method-parameter): New function to retrieve a method parameter. This allows for omission of method parameters. (tramp-handle-file-local-copy, tramp-handle-write-region) (tramp-find-shell, tramp-open-connection-telnet) (tramp-open-connection-rsh, tramp-open-connection-su) (tramp-enter-password) (tramp-open-connection-setup-interactive-shell) (tramp-post-connection, tramp-maybe-open-connection) (tramp-method-out-of-band-p): Use new function `tramp-get-method-parameter'. 2003-08-08 Kai Großjohann * tramp.el (tramp-multi-connection-function-alist): Add ssht entry which adds "-e none -t -t" to the list of ssh args. Suggested by Adrian Aichner. 2003-07-30 Kai Großjohann * tramp.el (tramp-chunksize): Extend docstring. Suggested by Charles Curley . 2003-07-26 Michael Albinus * Makefile.in (.PHONY): Add `xemacs'. 2003-07-26 Kai Großjohann * Makefile.in (xemacs): New target to copy files to XEmacs working dir. (For use by Kai only.) 2003-07-20 Kai Großjohann Version 2.0.36 released. * tramp.el (tramp-default-password-end-of-line): Renamed from tramp-password-end-of-line. (tramp-password-end-of-line): New method parameter. (tramp-get-password-end-of-line): Function to access method parameter `tramp-password-end-of-line', or variable `tramp-default-password-end-of-line' (default value). (tramp-methods): Add entries for new parameter tramp-password-end-of-line. (tramp-enter-password): Use new function `tramp-get-password-end-of-line'. 2003-07-15 Michael Albinus * Makefile.in (LISP_FILES): tramp-ftp.el is conditional, too. (install): Install only files belonging to the respective Emacs flavour. 2003-07-14 Michael Albinus * Makefile.in (LISP_FILES): New variable. Used to distinguish collection of *.el files for Emacs and XEmacs. Reported by Sven Utcke . (EM): Use `-vanilla' option for XEmacs call. (all): Depends on $(LISP_FILES). 2003-07-14 Kai Großjohann * Makefile.in (MKDIR): New variable. (install): Create installation directory, if necessary. 2003-07-03 Kai Großjohann * tramp.el (tramp-handle-insert-file-contents): Do not unconditionally inhibit the file operation file-local-copy, only do that when the inhibit-file-name-operation is currently insert-file-contents. This fixes finding remote CVS-controlled files. (It would barf on inserting the CVS/Entries file literally, because the file-local-copy handler wasn't called.) (tramp-handle-shell-command): Support optional third arg ERROR-BUFFER. * tramp-vc.el (vc-workfile-unchanged-p): Add comment. 2003-06-30 Kai Großjohann * tramp.el (tramp-sh-extra-args): Test whether widget type `alist' is available (instead of testing (featurep 'xemacs)). 2003-06-27 Kai Großjohann * tramp.el (tramp-sh-extra-args): Adapt defcustom type to XEmacs. 2003-06-24 Kai Großjohann * tramp.el (tramp-initial-commands): New variable. (tramp-process-initial-commands): New function, using the variable. (tramp-open-connection-setup-interactive-shell): Call the new function. (tramp-buffer-name, tramp-debug-buffer-name): Always put the method into the buffer name, never use nil. Reported by Hanak David . (tramp-open-connection-setup-interactive-shell): Erase buffer before sending "stty -onlcr". Maybe this leads to just one prompt on a line. 2003-06-17 Kai Großjohann Version 2.0.35 released. * tramp.el (tramp-shell-prompt-pattern): Allow space after escape sequence. 2003-06-16 Kai Großjohann * tramp.el (tramp-shell-prompt-pattern): Allow multiple escape sequences. * tramp-uu.el: * tramp-util.el: * tramp-efs.el: Use iso-2022-7bit encoding with coding cookie for XEmacs compatibility. 2003-06-12 Kai Großjohann * tramp.el (tramp-handle-copy-file): Set file modes of target file. (tramp-handle-file-local-copy) (tramp-do-copy-or-rename-via-buffer): Use binary coding system, instead of no-conversion. They are the same on Emacs but different on XEmacs. 2003-06-08 Kai Großjohann * tramp.el (tramp-handle-file-newer-than-file-p): `tramp-time-diff' returns integer, not list. Do not apply `car' to the return value of `tramp-time-diff'. Reported by David D. Smith . (tramp-time-diff): Convert return value of subtract-time to a number of seconds in a correct manner, by applying float-time or time-to-seconds. Also correct compat code accordingly. The XEmacs branch for itimer-time-difference didn't need correction, it returned a float already. Reported by David D. Smith . (tramp-handle-insert-file-contents): When calling `file-local-copy', let-bind `inhibit-file-name-operation' accordingly. This makes sure that jka-compr is not called when `insert-file-contents-literally' is invoked. From Katsumi Yamaoka . (tramp-do-copy-or-rename-via-buffer): Avoid calling jka-compr when writing the target file. (tramp-foreign-file-name-handler-alist): Add comment about default value having to come last. (tramp-handle-file-local-copy, tramp-handle-write-region): Add the "-p" hack. 2003-06-08 Kai Großjohann * tramp.el (tramp-find-foreign-file-name-handler): Return after first match is found. From Francis Litterio . 2003-05-31 Kai Großjohann * tramp.el: Factor out the `regular' file name handling via a remote shell of some sort into a specific function. Intent is to later put that part of Tramp into a special file, so that the Tramp `core' is just a dispatcher that dispatches to various handlers. (tramp-sh-file-name-handler): New function. (tramp-foreign-file-name-handler-alist): New default value. Call tramp-sh-file-name-handler as default case. (tramp-file-name-handler): Do not invoke the old remote-shell handler. 2003-05-24 Michael Albinus * Makefile.in (EM): Use `--no-site-file' option for Emacs call, in order to avoid loading of Tramp in site specific init files. Reported by Harry Putnam . (.PHONY): New target. (all): "trampver.el" and "tramp.el" must be handled first due to dependencies. * tramp.el (tramp-completion-function-alist): Add completion function for "remcp", "remsh" and "plink1". 2003-05-24 Kai Großjohann * tramp.el (tramp-password-end-of-line): Use "xy" with plink. 2003-05-21 Kai Großjohann Version 2.0.34 released. * tramp.el (tramp-shell-prompt-pattern): Allow ANSI escapes at end of prompt. (ANSI escapes elsewhere in the prompt are recognized properly already.) 2003-05-18 Kai Großjohann * tramp.el (tramp-methods): New method plink1. Like plink but pass "-1" to force protocol version 1. 2003-05-14 Kai Großjohann * tramp.el (tramp-completion-file-name-handler): Add safe-magic property. 2003-05-06 Kai Großjohann * tramp.el (tramp-default-method): Use plink as the default on machines where the plink program is present. 2003-05-03 Kai Großjohann * tramp.el (tramp-methods): Unify tramp-rsh-program, tramp-telnet-program, tramp-su-program into tramp-login-program. Likewise with tramp-login-args, tramp-copy-program, tramp-copy-args, tramp-copy-keep-date-arg. Users changed. 2003-05-03 Kai Großjohann * tramp.el (tramp-methods): Old entries "rsh" and "rcp" unconditionally invoke rsh now. New entries "remsh" and "remcp" unconditionally invoke remsh now. (tramp-real-rsh-program): Remove. (tramp-multi-connection-function-alist): Old entry "rsh" unconditionally invokes rsh now. New entry "remsh" invokes remsh. 2003-04-27 Kai Großjohann * tramp.el (tramp-real-rsh-program): Explain strategy for choosing default value. 2003-04-25 Michael Albinus * tramp.el (tramp-real-rsh-program): "remsh" is used on Cray machines, too. Suggested by Ted Stern . (tramp-methods, tramp-multi-connection-function-alist): The list must be backquoted, because the value of `tramp-real-rsh-program' is needed. No trailing space needed in the password argument of sudo `tramp-su-args'. Reported by my friendly supervisor Kai Großjohann . 2003-04-24 Michael Albinus * tramp.el (tramp-real-rsh-program): New constant. On HP-UX, the "rsh" program is called "remsh". (tramp-methods, tramp-multi-connection-function-alist): Apply `tramp-real-rsh-program'. Use "-p Password:\ " for "sudo" method, because password prompt might be changed by either passprompt option in /etc/sudoers, or SUDO_PROMPT environment variable. Suggested by Peter Oliver . 2003-04-18 Kai Großjohann * tramp-efs.el: New file. * tramp.el (tramp-handle-expand-file-name): Make default method explicit in file name. (tramp-unified-filenames): Move to an earlier spot in the file. (top-level): If tramp-unified-filenames is set and we're running on XEmacs, load tramp-efs. (tramp-wait-for-shell-prompt, tramp-barf-if-no-shell-prompt): New functions, used by tramp-send-command-internal. (tramp-open-connection-setup-interactive-shell): Simplify using `tramp-send-command-internal'. (tramp-send-command-internal): New function. 2003-04-14 Michael Albinus * tramp.el (tramp-handle-file-truename): `sym' shouldn't be quoted. 2003-04-08 Kai Großjohann * tramp.el (tramp-handle-file-symlink-p): If target of symlink is absolute, return a Tramp filename. (Ie, return "/user@host:/target" instead of "/target".) (tramp-handle-file-truename): Deal with new return value from `file-symlink-p'. 2003-04-08 Kai Großjohann Version 2.0.33 released. Version 2.0.32 released. 2003-04-04 Andreas Schwab * tramp.el (tramp-send-string): Handle empty string. 2003-04-04 Michael Albinus * tramp-ftp.el (tramp-ftp-file-name-handler): 'ange-ftp-file-directory-p` calls 'file-directory-p` as well. Disabling of file-name-handler not appropriate, too. 2003-04-02 Kai Großjohann * tramp.el: Change actual encoding of file to match coding cookie. 2003-04-02 Steve Youngs * tramp.el: Change coding cookie to 'iso-2022-7bit' to get around a bug in non-Mule XEmacs 21.5. 2003-03-30 Michael Albinus * tramp-ftp.el (tramp-ftp-file-name-handler): In 'ange-ftp-file-exists-p`, 'file-exists-p` is called in case of symlinks. So we cannot disable the file-name-handler this case. 2003-03-29 Kai Großjohann Version 2.0.31 released. * tramp.el (tramp-handle-expand-file-name): Do not allow ".." to cross file handler boundaries, so that "/user@host:/../foo" expands to itself, rather than "/foo". This is intended to work in conjunction with a change in `file-relative-name' which makes sure to use absolute file names if FILE and DIRECTORY have different handlers. 2003-03-13 Kai Großjohann * tramp.el (tramp-handle-insert-directory): Comment out XEmacs kludge. Suggested by Katsumi Yamaoka . 2003-03-22 Michael Albinus * .cvsignore (Makefile, trampver.el): Added. * Makefile.in: New file. Derived from Makefile, which will be generated now. (EMACS, prefix, datadir, lispdir, CLEAN_FILES: Generated by configure. (all): Depends on wildcard. (install-ftp): Renamed from install. (install, distclean): New targets. (prepversion): Removed. * Makefile: Removed from CVS. * trampver.el.in: New file. Provides `tramp-version' and `tramp-bug-report-address', which are generated by configure. * tramp.el (tramp-version, tramp-bug-report-address): Moved to trampver.el, which is required now. 2003-03-06 Michael Albinus * tramp-smb.el (tramp-smb-read-file-entry): Make reading size of a listing entry more robust. Ranges from 10 chars (Samba 1) to 7-9 chars (Samba 2). 2003-03-02 Michael Albinus * tramp.el (tramp-chunksize): Type can be nil as well. Reported by Markus Rost . 2003-02-28 Kai Großjohann * tramp.el (tramp-version): Bump. (tramp-handle-expand-file-name): Protect against short localnames when comparing with "/../". 2003-02-27 Kai Großjohann * tramp.el (tramp-handle-expand-file-name): Allow ".." to cross host boundaries. 2003-02-20 Kai Großjohann * tramp.el (tramp-open-connection-setup-interactive-shell): Unset $ENV in addition to setting $PS1 when starting the Bourne-ish shell. Some sh implementations (eg, bash when called as sh) read the file named there on startup, which could clobber $PS1. 2003-02-16 Michael Albinus * tramp-smb.el: Replace term `path' with `localname' unless it is used for a search path. In GNU, the word `path' is reserved for search paths. * tramp.el (tramp-send-linewise, tramp-send-region): Removed. (tramp-send-string): New function. Takes over the role of the functions above, in order to have a unique place handling `tramp-chunksize'. Same implementation as `tramp-send-region'. 2003-02-15 Kai Großjohann * tramp-vc.el, tramp.el: Replace term `path' with `localname' unless it is used for a search path. In GNU, the word `path' is reserved for search paths. * tramp.el (tramp-do-copy-or-rename-file-one-local): New function. Not implemented. Not used. Should invoke rcp or scp directly to keep the time. 2003-02-09 Michael Albinus * tramp.el (tramp-chunksize): It's now a defcustom. Set to 500 on systems only known to have a buggy `process-send-string' implementation. First black-listed constellation is GNU Emacs/ hpux. (tramp-send-region): Correct debug message. (tramp-bug): Add `tramp-chunksize'. 2003-02-05 Kai Großjohann Version 2.0.29 released. * tramp.el (tramp-send-region): Protect against tramp-chunksize being nil. 2003-02-04 Michael Albinus * tramp.el (tramp-handle-directory-file-name): Handle the case PATH is "". (tramp-completion-handle-file-name-all-completions): Define `tramp-current-user' locally. See `tramp-parse-passwd'. (tramp-parse-passwd): For su-alike methods it would be desirable to return "root@localhost" as default. Unfortunately, we have no information whether any user name has been typed already. So we (mis-)use tramp-current-user as indication, assuming it is set in `tramp-completion-handle-file-name-all-completions'. (tramp-send-region): Handle the case `tramp-chunksize' is equal 0. I did it accidently. Infinite loop ... * tramp-ftp.el (top-level): eval-after-load "ange-ftp" '(tramp-disable-ange-ftp). Suggested by Kai. (tramp-ftp-file-name-handler): `tramp-disable-ange-ftp' not needed any longer. * tramp-smb.el (tramp-smb-file-name-handler-alist): Apply `tramp-handle-directory-file-name' in order to profit from Kai's yesterday changes. 2003-02-03 Kai Großjohann * tramp.el (tramp-chunksize): Set default to 500 as workaround for some ssh connections. (tramp-handle-directory-file-name): New implementation. Not sure if it works. 2003-01-28 Michael Albinus * tramp.el (tramp-get-device): `tramp-make-tramp-file-name' must not be called with NIL path. It fails in case of multi-method. 2003-01-27 Michael Albinus * tramp.el (tramp-file-name-for-operation): Apply `expand-file-name' for relative file names only. Otherwise there might be problems if the default directory is another Tramp directory as the directory the file is based on. (tramp-find-foreign-file-name-handler): Check whether FILENAME is a Tramp file name. It isn't if it comes from an expanded file name (like "/xx:yy//zz"). 2003-01-25 Michael Albinus * tramp.el (tramp-devices): New variable. Keeps virtual device numbers. Devices must distinguish physical file systems. The device numbers provided by "lstat" aren't unique, because we operate on different hosts. So we use virtual device numbers, generated by `tramp-get-device'. Both Ange-FTP and EFS use device number -1. In order to be different, we use device number (-1 x), whereby "x" is unique for a given (multi-method method user host). Suggested by Kai. (tramp-perl-file-attributes): Always return device number -1. There will be a virtual device number set in `tramp-handle-file-attributes', which replaces this one. (tramp-handle-file-attributes): Set virtual device number. (tramp-get-device): New function. Returns the virtual device number. If it doesn't exist, generate a new one. (tramp-handle-file-regular-p): Use Emacs file name primitives instead of calling tramp-handle-* equivalents directly. Needed for tramp-smb. * tramp-smb.el (tramp-smb-devices, tramp-smb-get-device): Removed. Functionality moved to tramp.el. (tramp-smb-handle-file-attributes): Apply `tramp-get-device'. ATIME and CTIME are (0 0) now (= "don't know"), which is more honest. (tramp-smb-handle-make-directory): Use Emacs file name primitives instead of calling tramp-smb-handle-* equivalents directly. (tramp-smb-read-file-entry): Return size as a number but a string. 2003-01-24 Michael Albinus * tramp.el (tramp-completion-function-alist-ssh): Add parsing of "/etc/ssh_config" and "~/.ssh/config". Suggested by Kai. (tramp-completion-function-alist, tramp-set-completion-function): Doc string update. (tramp-parse-sconfig, tramp-parse-sconfig-group): New functions. Provide parsing of "~/.ssh/config" style files. 2003-01-21 Michael Albinus * tramp.el (tramp-completion-handle-expand-file-name): Apply `tramp-drop-volume-letter'. Otherwise, there are problems on W32 systems. 2003-01-21 Michael Albinus * tramp-smb.el (tramp-smb-get-device, tramp-smb-get-inode): New functions. Device number and inode number don't exist for SMB files. Therefore we must generate virtual ones. (tramp-smb-devices, tramp-smb-inodes): New variables. Keep generated virtual device numbers and inodes numbers for SMB files. (tramp-smb-handle-file-attributes): Apply them. 2003-01-14 Kai Großjohann * tramp.el (tramp-md5-function): Require md5 before checking function md5. If using md5-encode, put wrapper around it that converts vector of bytes to ascii text. 2003-01-13 Michael Albinus * tramp.el (tramp-completion-mode): Perform check (integerp last-input-event) before (event-modifiers last-input-event) - there might be problems if `last-input-event' is a mouse event. 2003-01-12 Michael Albinus * tramp.el (tramp-parse-rhosts, tramp-parse-shosts) (tramp-parse-hosts, tramp-parse-passwd, tramp-parse-netrc): Use `file-readable-p' instead of `file-exists-p'. Otherwise these functions might block. Reported by . 2003-01-02 Michael Albinus * tramp-ftp.el (top-level): Defaults for `tramp-default-method-alist' must be a list. * tramp-smb.el (top-level): Defaults for `tramp-default-method-alist' must be a list. 2003-01-02 Kai Großjohann * tramp.el (top-level): Avoid byte-compiler warnings of unused variables if the byte-compiler supports this. This is for the with-parsed-tramp-file-name macro which is wont to produce such stuff. 2002-12-23 Kai Großjohann Version 2.0.28 released. 2002-12-22 Michael Albinus * tramp.el (top-level): Discard tramp-smb.el also for Cygwin. No "smbclient" available there. (tramp-completion-dissect-file-name): `tramp-completion-file-name-structure1', `tramp-completion-file-name-structure2', `tramp-completion-file-name-structure3' and `tramp-completion-file-name-structure4' changed from "defconst" to "let*", because they are function local (but nevertheless constants). Suggested by David Kastrup and Kai Großjohann . The value "9" has changed to "nil" (meaning there's nothing to match), because Emacs 21.3 seems to be more sensible on `match-string'. (tramp-completion-dissect-file-name1): In case of a "nil" position don't call `match-string'. * tramp-smb.el (tramp-smb-file-name-handler-alist): `add-name-to-file' is handled by `tramp-smb-handle-copy-file', because there are no hardlinks under Windows. 2002-12-21 Michael Albinus * tramp.el (tramp-default-method-alist): Defaults setting for FTP method has moved to tramp-smb.el. The remaining default for the SU method is available for both Emacs and XEmacs now. * tramp-ftp.el (top-level): Set defaults for `tramp-default-method-alist'. Taken over from tramp.el. * tramp-smb.el (top-level): Set default for `tramp-default-method-alist'. If the user name contains a domain (visible via the "%" char), it must be the SMB method. (tramp-smb-wait-for-output): Use `tramp-smb-process-running' where appropriate. Last time I've changed this function I forgot one place. 2002-12-05 Kai Großjohann Version 2.0.27 released. 2002-12-05 Michael Albinus * tramp-smb.el (tramp-smb-process-running) New buffer local variable. Flag whether a corresponding process is still running. (tramp-smb-open-connection): Set a process sentinel. It disables `tramp-smb-process-running'. (tramp-smb-wait-for-output): Use `tramp-smb-process-running' for several checks. 2002-12-05 Kai Großjohann * tramp.el (tramp-run-real-handler) (tramp-completion-run-real-handler): Disable cygwin-mount, too. All files handled by Tramp are on Unix systems, where cygwin-mount is not useful. (Ie, remote Cygwin systems are not supported.) * tramp-vc.el (tramp-vc-do-command): Ensure that `okstatus' is an integer before using `<' on it. (tramp-vc-do-command-new): Pass relative filename as arg to remote process. This helps with CVS. Suggested by Francis Litterio. 2002-11-30 Kai Großjohann * tramp.el (tramp-end-of-output): Do not use directory listing as input to `md5' function. The current time is deemed to be good enough. * tramp-vc.el (tramp-vc-do-command-new): `okstatus' can be async. From Francis Litterio . (tramp-vc-simple-command): Comment on potential `okstatus' problem with it being `async'. No code change. 2002-11-28 Kai Großjohann Version 2.0.26 released. * tramp.el (tramp-version): Bump. 2002-11-28 Michael Albinus * tramp.el (top-level): Require tramp-smb.el only if local Operating System is not MS Windows. There's no need for the SMB method there, because those Emacsen support UNC file names. (tramp-handle-file-modes): Use Emacs file name primitives instead of calling tramp-handle-* equivalents directly. Needed for tramp-smb. * tramp-smb.el (tramp-smb-errors): List of error strings extended. (tramp-smb-not-handled-yet): Function removed. All I/O primitives are handled now. All places where used updated accordingly. (tramp-smb-handle-copy-file, tramp-smb-handle-delete-file) (tramp-smb-handle-file-local-copy, tramp-smb-handle-rename-file) (tramp-smb-handle-write-region, tramp-smb-open-connection): Error handling improved. (tramp-smb-handle-delete-directory) (tramp-smb-handle-directory-files) (tramp-smb-handle-directory-files-and-attributes) (tramp-smb-handle-make-directory) (tramp-smb-handle-make-directory-internal): New file name primitive functions implemented. (tramp-smb-handle-insert-directory): In case parameter is not a directory, the result of "dir filename*" will return too many results. They are filtered out now. (tramp-smb-send-command): Returns nil if there has been an error message from smbclient. Used for improved error handling mentioned above. (tramp-smb-wait-for-output): Timeouts removed. Too much trouble with. (tramp-smb-time-less-p, tramp-smb-time-subtract): Handle the case when T1 or T2 is nil. It shouldn't happen ever, but it did once. 2002-11-27 Kai Großjohann * tramp-uu.el (tramp-uu-b64-char-to-byte, tramp-uuencode-region): Abstain from `incf'. 2002-11-22 Michael Albinus * tramp-smb.el (tramp-smb-handle-substitute-in-file-name): Removed. The default handler is good enough for us now. (tramp-smb-advice-PC-do-completion): Advice for `PC-do-completion'. Corrects the inconvenient usage of `substitute-in-file-name' there. 2002-11-21 Michael Albinus * tramp-smb.el (tramp-use-smb): Remove variable. "smb" method is active now; beta test can start. (tramp-smb-handle-file-newer-than-file-p): Apply `tramp-smb-time-less-p' but `tramp-time-diff'. Seems to be more general. (tramp-smb-handle-insert-directory): Use SWITCHES in order to decide how to sort (but obscure dired variables). Don't apply `save-excursion'; the cursor must be at the end of the buffer after insertion. I should have it done from the beginning ... (tramp-smb-handle-write-region): Remove unused variable `trampbuf'. Thanx to XEmacs compiler warning. (tramp-smb-read-file-entry): Simplify handling of the dont-know mtime value. (tramp-smb-maybe-open-connection): Remove unused variable `last-cmd-time'. Thanx to XEmacs compiler warning. 2002-11-20 Michael Albinus * tramp-smb.el (top-level): Autoload of "time-date" removed. Needed functions snarfed from there. (tramp-smb-handle-insert-directory): Dummy user renamed to "nobody". (tramp-smb-read-file-entry): Return list shortened; just MTIME is used for all time strings and calculations. (tramp-smb-open-connection): Test of anonymous USER introduced. Also an empty HOST is tested, but does it makes sense? (tramp-smb-half-a-year): New constant, in order to decide whether to display time or year in dired buffers. (tramp-smb-parse-time-months ): Snarfed from "time-date". Alist mapping month names to integers. (tramp-smb-time-less-p): Snarfed from "time-date". Replaces `time-less-p'. (tramp-smb-time-subtract): Snarfed from "time-date". Replaces `tramp-time-diff', which returns just an integer only. 2002-11-19 Michael Albinus * tramp-smb.el (top-level): Autoload "time-date". Just a work-around, until I have replaced the corresponding functions by own implementation. (tramp-smb-errors): List of error strings extended. (tramp-smb-share-cache): New buffer local variable. Holds the share names of the respective host. (tramp-smb-file-name-handler-alist): `vc-registered' changed to be not-handled. If default handler is used, there are problems with version control files of shares themselves ... (tramp-smb-handle-copy-file): Error handling improved, check for shares is performed. (tramp-smb-handle-file-attributes) (tramp-smb-handle-file-directory-p) (tramp-smb-handle-file-directory-p) (tramp-smb-handle-file-exists-p) (tramp-smb-handle-file-name-all-completions) (tramp-smb-handle-file-writable-p) (tramp-smb-handle-insert-directory): `tramp-smb-get-file-entries' used instead of own scenario. (tramp-smb-get-share): Replace nil in case the share name isn't completed. (tramp-smb-get-path): Handling for "$" and "$$" added. But I still have the feeling it isn't trustworthy yet. Too complex. (tramp-smb-get-file-entries): New function. Replaces `tramp-smb-get-file-entry'. (tramp-smb-read-file-entry): Reads share names as well now. (tramp-smb-send-command): Erases always buffer. (tramp-smb-maybe-open-connection): Check for being alive is removed. Instead, `process-status' is applied. Erasing the buffer is removed, because it disturbs exited processes if just the share names should be retrieved. (tramp-open-connection-smb): Renamed to `tramp-smb-open-connection' for uniqueness. Acknowledges now domains in user names ("USER%DOMAIN"), and port numbers in host names ("HOST#PORT"). Erasing the buffer is removed, because it disturbs exited processes if just the share names should be retrieved. (tramp-smb-wait-for-output): Handling for exited processes incorporated. (tramp-smb-check-shares): Removed. Functionality moved to `tramp-smb-open-connection' and `tramp-smb-get-file-entries', respectively. 2002-11-10 Michael Albinus * tramp.el (tramp-handle-file-name-completion): Use Emacs file name primitives instead of calling tramp-handle-* equivalents directly. Needed for tramp-smb. * tramp-smb.el (tramp-smb-errors): List of error strings extended. (tramp-smb-not-handled, tramp-smb-not-handled-yet): `tramp-smb-not-handled' renamed to `tramp-smb-not-handled-yet'. The new `tramp-smb-not-handled' returns nil for als primitives which don't make sense for SMB servers. All callers adapted. (tramp-smb-handle-copy-file) (tramp-smb-handle-file-name-all-completions) (tramp-smb-handle-file-newer-than-file-p) (tramp-smb-handle-rename-file) (tramp-smb-handle-substitute-in-file-name) (tramp-smb-handle-write-region): New file name primitive functions implemented. (tramp-smb-handle-delete-file): In the `let' clause, `path' must be declared but `share'. Found during compilation. (tramp-smb-handle-file-symlink-p) (tramp-smb-handle-set-visited-file-modtime) (tramp-smb-handle-verify-visited-file-modtime): Replaced by `tramp-smb-not-handled'. (tramp-smb-handle-insert-directory): Handling of copyied files added. (tramp-smb-maybe-open-connection): Are-you-alive command changed from "help" to "dir .". (tramp-smb-wait-for-output): In case of finished process return immediately. (tramp-smb-check-shares): New function. Reads share names. 2002-11-05 Michael Albinus * tramp-smb.el (tramp-smb-errors): List of error strings extended. (tramp-smb-share): New buffer local variable. Holds the share name associated with the buffer process. (tramp-smb-handle-delete-file, tramp-smb-handle-file-attributes) (tramp-smb-handle-set-visited-file-modtime) (tramp-smb-handle-verify-visited-file-modtime): New file name primitive functions implemented. The latter two do nothing (yet). (tramp-smb-handle-file-local-copy): `save-excursion' added. I'm not fully sure if it's needed here, but it is better in case of. (tramp-smb-handle-insert-directory): Mode string adapted. (tramp-smb-read-file-entry): Block introduced for better return handling. Return list values changed. Callers adapted. 2002-11-04 Michael Albinus * tramp-smb.el (tramp-smb-line): Defconst deleted. Useless due to nature of smbclient output. More sophisticated handling in `tramp-smb-read-file-entry'. (tramp-smb-errors): List of error strings extended. (tramp-smb-get-path): Additional parameter CONVERT for conversion of "/" path separator into "\\". (tramp-smb-get-file-entry): Top directory handling included. (tramp-smb-read-file-entry): Reimplemented. No chance to handle smbclient output lines by a single regexp. (tramp-smb-send-command): Parameters of commands enclosed in \"...\". 2002-11-03 Michael Albinus * tramp.el (tramp-handle-insert-file-contents): Use Emacs file name primitives instead of calling tramp-handle-* equivalents directly. Needed for tramp-smb. * tramp-smb.el: First useful version. Directory traversing and file displaying work. 2002-11-03 Kai Grossjohann * tramp.el (tramp-end-of-output): Fix last change. 2002-11-02 Kai Großjohann * tramp.el (tramp-md5-function): New variable. (tramp-end-of-output): Use it. 2002-10-27 Michael Albinus * tramp-ftp.el (top-level): Require some basic packages in order to pacify byte-compiler. * tramp-smb.el (top-level): Ditto. 2002-10-27 Michael Albinus * tramp.el (top-level): Load tramp-smb.el. Remove autoload of `tramp-ftp-file-name-p'; not needed anymore. (tramp-foreign-file-name-handler-alist): New variable. Foreign methods shall plug in. (tramp-file-name-for-operation): Relative file names are checked via `expand-file-name'. If no absolute file name is given, default directory of current-buffer is used. (tramp-find-foreign-file-name-handler): New function. Parses `tramp-foreign-file-name-handler-alist' in order to find foreign file name handlers. (tramp-file-name-handler): Apply `tramp-find-foreign-file-name-handler' instead of simply looking for FTP foreign method. * tramp-ftp.el (top-level): Plug into `tramp-foreign-file-name-handler-alist'. * tramp-smb.el: New file. Functionality disabled by `tramp-use-smb' during development. * Makefile (tramp): Add tramp-smb.elc. 2002-10-22 Michael Albinus * tramp.el (tramp-file-name-for-operation): Even more file primitives. Sort them alphabetically. 2002-10-22 Kai Großjohann * tramp.el (tramp-action-yn): Erase the buffer when the user has said yes, don't erase it when they said no. 2002-10-20 Michael Albinus * tramp.el (tramp-file-name-for-operation): Complete file primitives. Lots of undocumented found. 2002-10-19 Kai Großjohann * tramp.el (tramp-sh-extra-args): Use "-norc -noprofile" instead of "--norc" for bash. The single dash is for old versions, and the additional option might help more. Suggested by Tim Connors . 2002-10-15 Kai Großjohann * tramp.el (tramp-end-of-output): Emulate directory-files-and-attributes if it does not exist. (It does not exist on XEmacs.) 2002-10-14 Michael Albinus * tramp.el (tramp-dissect-file-name): Check for multi-method syntax before raising an error. (tramp-primitive-file-name): Renamed to `tramp-file-name-for-operation'. Docstring enhanced. List of file primitives completed in order to be signalled when a new one appears. All changes suggested by Kai. (tramp-file-name-handler): `save-match-data' global. 2002-10-14 Kai Großjohann * tramp.el (tramp-end-of-output): Use a random value which includes "///". The "///" makes sure that the string can't occur during normal operation, the random value makes it unlikely that it occurs in random shell-command output. 2002-10-13 Michael Albinus * tramp.el (tramp-advice-find-file-name-handler): Remove defadvice because it might be not a good idea to hook into Emacs built-in subroutiones. Suggested by RMS. (tramp-primitive-file-name): Handle all primitives now. (tramp-file-name-handler): Allow call of `tramp-ftp-file-name-handler' only for functions defined in `tramp-file-name-handler-alist'. Strange. 2002-10-12 Michael Albinus * Makefile (tramp): Add tramp-uu.elc and tramp-ftp.elc. * tramp.el (top-level): Require `tramp-ftp' after load in order to avoid infloop. Autoload `tramp-ftp-file-name-p' for compiler satisfaction. (tramp-primitive-file-name): Add handling of `expand-file-name' and `file-newer-than-file-p'. (tramp-file-name-handler): Call `tramp-primitive-file-name' via `apply'. * tramp-ftp.el (top-level): Require `tramp'. 2002-10-11 Michael Albinus * tramp-ftp.el: New file. * tramp.el (tramp-default-method): Adapt doc string. (tramp-ftp-method, tramp-completion-function-alist-ftp) (tramp-disable-ange-ftp, tramp-invoke-ange-ftp) (tramp-ange-ftp-file-name-p, tramp-make-ange-ftp-file-name): Moved to tramp-ftp.el or removed (if not needed any longer). Callers adapted. (tramp-completion-function-alist): "ftp" entry removed. Will be added from within tramp-ftp.el. (tramp-set-completion-function ): Allow setting of methods not defined yet. (tramp-run-real-handler, tramp-completion-run-real-handler): Remove `ange-ftp-hook-function' handling. Make `inhibit-file-name-handlers' a cons but a list. (tramp-advice-find-file-name-handler): Advice for `find-file-name-handler'. Check for Ange-FTP file names, applicable for NON built-in primitives only. (tramp-primitive-file-name): New function. Returns filename for some built-in primitives. (tramp-file-name-handler): Check for Ange-FTP file names (built-in primitives only). Forward to Ange-FTP in case of. (tramp-completion-file-name-handler): Remove catch for `tramp-forward-to-ange-ftp'. Not necessary any longer. (tramp-flatten-list): Remove function. Never used. (tramp-completion-mode, tramp-get-completion-methods): Special handling of `tramp-ftp-method' removed. It's part of `tramp-methods' now (as foreign method). 2002-10-11 Kai Großjohann * tramp.el (tramp-handle-shell-command): Don't switch to the output buffer, just display it. From Francis Litterio . 2002-10-10 Kai Großjohann * tramp.el (tramp-handle-file-newer-than-file-p): Use tramp-time-diff instead of subtract-time. Reported by Angus Lees. 2002-10-06 Kai Großjohann Version 2.0.25 released. 2002-10-05 Kai Großjohann * tramp.el (tramp-handle-file-truename): If it's a directory, append slash only if result doesn't end in a slash already. 2002-10-04 Kai Großjohann * tramp.el (tramp-handle-file-truename): Restructure logic. If list of steps is nil, return "/" as the real name. 2002-10-03 Michael Albinus * tramp.el (tramp-completion-mode): Add "\\(" and "\\)". Otherwise, `match-string' doesn't make sense. (tramp-host-with-port-regexp): New defcustom. Equal to previous `tramp-host-regexp'. (tramp-host-regexp): Taken off hashes in host names. Otherwise, scanning files like .rhosts would take comments as host names. (tramp-file-name-structure, tramp-multi-file-name-hop-structure): Replace `tramp-host-regexp' by `tramp-host-with-port-regexp'. 2002-10-03 Kai Großjohann * tramp.el (tramp-action-terminal): New function. (tramp-terminal-prompt-regexp): New variable, matches "tset" prompts. (tramp-actions-before-shell): Use them. 2002-09-30 Kai Großjohann * tramp.el (tramp-handle-shell-command): Logic error. From Ivan Zakharyaschev . 2002-09-29 Kai Großjohann Version 2.0.24 released. * tramp.el (tramp-host-regexp): Allow hashes in host names (for the "#port" feature). 2002-09-28 Kai Großjohann * tramp.el (tramp-open-connection-setup-interactive-shell): Explicitly set tramp-last-cmd-time before invoking tramp-send-command the first time. Otherwise, tramp-send-command would issue "echo are you awake" right at the first time, which is not what we want. Reported by Douglas Gray Stephens. 2002-09-27 Michael Albinus * tramp.el (tramp-methods, tramp-completion-function-alist): Rename "scp1-old", "scp2-old", "ssh1-old", "ssh2-old" to "*_old". There have been problems in method name completion, because "-" is a word delimiter for partial completion mode. (tramp-completion-function-alist): Set `tramp-completion-function-alist-ssh' as completion function for "fcp". 2002-09-27 Kai Großjohann Version 2.0.23 released. 2002-09-26 Kai Großjohann * tramp.el (tramp-handle-file-local-copy): More local bindings. Bind results of tramp-get-{remote,local}-{de,en}coding earlier to avoid nasty "are you awake" problem. 2002-09-25 Kai Großjohann * tramp.el (tramp-action-password): Protect against clobbered match data. (tramp-maybe-open-connection): Don't send "are you awake" if process has died. 2002-09-24 Kai Großjohann * tramp.el (tramp-handle-file-truename): Eliminate unused variable. (tramp-version): Bump. 2002-09-24 Kai Großjohann * tramp.el (tramp-find-inline-encoding): Don't redirect stdout to /dev/null to avoid "chmode go-rwx" operation from "mimencode >/dev/null" as root(!), and to check the output of the decoding command. (tramp-ange-ftp-file-name-p): If METHOD is nil, find the right default method. Require additional args USER and HOST for this. Callers changed. 2002-09-23 Kai Großjohann * tramp.el (tramp-unified-filenames): Autoload cookie. Reported by Vin Shelton . 2002-09-22 Kai Großjohann Version 2.0.22 released. 2002-09-22 Michael Albinus * tramp.el (tramp-parse-rhosts, tramp-parse-shosts) (tramp-parse-hosts, tramp-parse-passwd): Apply `push' but `add-to-list' for performance reasons. (tramp-get-completion-user-host): Return `nil' in case both `user' and 'host' are empty (not necessarily `nil'. (tramp-parse-netrc, tramp-parse-netrc-group): New functions. (tramp-user-regexp): " \t" are not user regexp characters. (tramp-completion-handle-file-name-all-completions): Remove Ange-FTP cmpletion. It has a bug not handling the "/ftp:" prefix completely, and it returns local completions as well. (tramp-completion-function-alist-ftp): New constant. (tramp-completion-function-alist): Add completion function for "ftp". 2002-09-22 Kai Großjohann Version 2.0.21 released. * tramp.el (tramp-handle-file-newer-than-file-p): If mtime of both files is known, return a useful result. Better error message in case one is a Tramp file and one isn't. (tramp-handle-file-local-copy, tramp-handle-write-region) (tramp-find-shell, tramp-open-connection-telnet) (tramp-open-connection-rsh, tramp-open-connection-su) (tramp-open-connection-setup-interactive-shell) (tramp-post-connection, tramp-maybe-open-connection) (tramp-method-out-of-band-p): Correct number of args for `tramp-get-rsh-program' and similar functions. 2002-09-22 Kai Großjohann Version 2.0.20 released. 2002-09-20 Kai Großjohann * tramp.el (tramp-method-out-of-band-p): Add missing ")". * tramp.el (tramp-method-out-of-band-p): Remove superfluous ")". 2002-09-20 Kai Großjohann * tramp.el (tramp-completion-function-alist): Escape open paren in docstring. (tramp-user-regexp, tramp-host-regexp): Allow empty strings. (tramp-handle-insert-file-contents): Call tramp-message-for-buffer instead of tramp-message. (tramp-open-connection-rsh): Handle empty string as user name. (tramp-open-connection-su): Handle empty string as host name. Handle nil user name. (tramp-handle-file-local-copy, tramp-handle-write-region) (tramp-completion-handle-file-name-all-completions) (tramp-open-connection-telnet, tramp-open-connection-rsh) (tramp-open-connection-su, tramp-post-connection) (tramp-maybe-open-connection, tramp-method-out-of-band-p) (tramp-get-connection-function, tramp-get-remote-sh) (tramp-get-rsh-program, tramp-get-rsh-args) (tramp-get-rcp-program, tramp-get-rcp-args) (tramp-get-rcp-keep-date-arg, tramp-get-su-program) (tramp-get-su-args, tramp-get-telnet-program) (tramp-get-telnet-args): Use `tramp-find-method', perhaps require additional args USER, HOST. (tramp-action-password, tramp-open-connection-telnet) (tramp-open-connection-su, tramp-open-connection-multi) (tramp-method-out-of-band-p): `tramp-method-out-of-band-p' now takes USER and HOST arguments, to be able to use `tramp-find-method'. Update callers. (tramp-find-method): New function. 2002-09-20 Kai Großjohann * tramp.el (tramp-handle-insert-directory): Handle "--dired" in SWITCHES (by removing it). 2002-09-18 Kai Großjohann * tramp.el (tramp-file-name-handler): Add `file-remote-p' property. 2002-09-17 Kai Großjohann * tramp.el (top-level): Maybe autoload uudecode-decode-region. 2002-09-16 Kai Großjohann * tramp.el (tramp-bug): Add tramp-methods. 2002-09-16 Kai Großjohann * tramp.el (tramp-methods): Update docstring: tramp-encoding-command, tramp-decoding-command, tramp-encoding-function and tramp-decoding-function are not parameters anymore. (tramp-uuencode-region): Autoload it. 2002-09-13 Kai Großjohann Version 2.0.19 released. * tramp-uu.el: New file. * tramp.el (tramp-coding-commands): Use `tramp-uuencode-region' as local encoder for the uuencode based entries. 2002-09-13 Kai Großjohann * tramp.el (tramp-handle-write-region): Wrong parens. 2002-09-13 Kai Großjohann Version 2.0.18 released. * tramp.el (tramp-perl-decode): Perl changes to accomodate older versions of Perl. Now tested with 5.004. Suggestion from Michael Albinus. 2002-09-12 Kai Großjohann * tramp.el (tramp-find-inline-encoding): Call tramp-call-local-coding-command with nil for INPUT and OUTPUT. (tramp-call-local-coding-command): OUTPUT equals nil means to discard the output. INPUT equals nil means /dev/null. 2002-09-12 Kai Großjohann * tramp.el (tramp-encoding-shell): Default to environment variable COMSPEC on Windows. (tramp-handle-write-region): More debugging output. (tramp-find-inline-encoding): Ditto. 2002-09-11 Michael Albinus * tramp.el (tramp-completion-handle-file-name-all-completions): Define `result1'. (tramp-parse-hosts-group): Discard IPv6 entries. 2002-09-11 Michael Albinus * tramp.el: Next todo item. The list shall decrease, but it doesn't :( 2002-09-11 Kai Großjohann * tramp.el: New todo item. 2002-09-11 Kai Großjohann * tramp.el (tramp-post-connection): Only send Perl mime-encode/decode implementations when using inline method. (tramp-handle-file-local-copy) (tramp-handle-write-region, tramp-post-connection) (tramp-coding-commands, tramp-find-inline-encoding): For the inline encodings, distinguish between local and remote commands, instead of between commands and functions. (The local commands can be functions, too.) If the local host is a Windows machine, we can't expect the same commands to work there as on the remote host. (tramp-call-local-coding-command): New function for calling local encoding and decoding commands. (tramp-set-remote-encoding, tramp-get-remote-encoding) (tramp-set-remote-decoding, tramp-get-remote-decoding) (tramp-set-local-encoding, tramp-get-local-encoding) (tramp-set-local-decoding, tramp-get-local-decoding): New functions. (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): Old functions, removed. 2002-09-10 Kai Großjohann * tramp.el (tramp-open-connection-setup-interactive-shell): Change command to invoke /bin/sh slightly to make it compatible with the `rc' shell. Suggested by Daniel Pittman. 2002-09-10 Michael Albinus * tramp.el (tramp-handle-write-region): Added missing `)'. Hope it's the right place. 2002-09-09 Kai Großjohann * tramp.el (tramp-open-connection-setup-interactive-shell): Do "exec env PS1='$ ' /bin/sh" instead of just "exec /bin/sh" in order to get a sane shell prompt. If people have ${CWD}, say, in their shell prompt, then the default login shell might display something harmless, but the /bin/sh will display a dollar sign which confused the subsequent prompt recognition. (tramp-multi-action-password): More debugging output. (tramp-encoding-shell): Renamed from tramp-sh-program. More documentation. Default to cmd.exe on Windows NT. (tramp-encoding-command-switch): New variable. Use instead of hard-wired "-c" which is only good for /bin/sh. (tramp-encoding-reads-stdin): New variable. If t, commands are called like "/bin/sh -c COMMAND * tramp.el (tramp-methods): Remove `tramp-completion-function' entries. They are handled now by `tramp-completion-function-alist'. (tramp-completion-function): Defvar removed. I've never used it. Hmm. (tramp-get-completion-function) (tramp-get-completion-rsh, tramp-get-completion-ssh) (tramp-get-completion-telnet, tramp-get-completion-su): Functions removed as well. Not necessary any longer due to extended customization means. (tramp-completion-function-alist): New defcustom. Holds all FUNCTION FILE pairs used for user and host name completion relevant for METHOD. (tramp-completion-function-alist-rsh) (tramp-completion-function-alist-ssh) (tramp-completion-function-alist-telnet) (tramp-completion-function-alist-su): Defconst for initializing `tramp-completion-function-alist'. Unfortunately, mainly UNIX-like values are known for me until now. Needs to be completed for at least VMS++ like operating systems. (tramp-set-completion-function) (tramp-get-completion-function): New functions for configuration of `tramp-completion-function-alist'. The old definition of `tramp-get-completion-function' has been discarded. (tramp-completion-handle-file-name-all-completions): Change function call for user/host completion according to definition in `tramp-completion-function-alist'. (tramp-parse-passwd): Added exception handling for "root", because `tramp-get-completion-su' (the previous place for this stuff) doesn't exist any longer. 2002-09-07 Kai Großjohann * tramp.el (tramp-enter-password): Use `tramp-password-end-of-line' to terminate the line. (tramp-bug): Include new variable `tramp-password-end-of-line'. (tramp-password-end-of-line): New variable. People who use plink under Windows might have to issue "\r\n" after the password, but they need to send just "\n" after the other commands. So this variable was introduced to complement `tramp-rsh-end-of-line'. (tramp-wait-for-output, tramp-post-connection): Allow "\r" at end of line of the output delimiter. 2002-09-06 Kai Großjohann * tramp.el (tramp-handle-file-local-copy, tramp-find-shell) (tramp-open-connection-setup-interactive-shell): Add some comments about Douglas Grey Stephen's suggestions to make Tramp work better with plink under Windows. I'm not sure what to think of them, but now I have a guinea pig to try it out on. Said guinea pig is having other problems, though... Also remove some commented-out code. 2002-09-06 Michael Albinus * tramp.el (tramp-get-completion-methods): Algorithm slightly tuned. (tramp-get-completion-user-host): Accept user names as they are if typed until "@". (tramp-completion-mode): Replace `last-input-char' by modern `last-input-event'. Check for `event-modifiers'. 2002-09-06 Kai Großjohann * tramp.el (file-expand-wildcards): Corrected check to see if advising is necessary. 2002-09-05 Michael Albinus * tramp.el (tramp-postfix-single-method-format) (tramp-postfix-multi-method-format) (tramp-postfix-multi-hop-format) (tramp-postfix-user-format): New format strings. (tramp-postfix-single-method-regexp) (tramp-postfix-multi-method-regexp) (tramp-postfix-multi-hop-regexp) (tramp-postfix-user-regexp) (tramp-make-multi-tramp-file-format) (tramp-make-tramp-file-name): Apply them. (tramp-completion-handle-file-name-all-completions): Fix for invoking ange-ftp in case of "/ftp:xxx" file names. 2002-09-04 Michael Albinus * tramp.el (tramp-prefix-format) (tramp-postfix-host-format): New format strings. (tramp-prefix-regexp, tramp-method-regexp) (tramp-postfix-single-method-regexp) (tramp-postfix-multi-method-regexp) (tramp-postfix-multi-hop-regexp) (tramp-user-regexp, tramp-postfix-user-regexp) (tramp-host-regexp, tramp-postfix-host-regexp) (tramp-path-regexp): New atomar regular expressions. If corresponding format strings exist, derived from them. (tramp-file-name-structure) (tramp-multi-file-name-structure) (tramp-multi-file-name-hop-structure) (tramp-make-multi-tramp-file-format) (tramp-completion-mode) (tramp-completion-dissect-file-name) (tramp-parse-rhosts-group) (tramp-parse-shosts-group) (tramp-parse-hosts-group) (tramp-parse-passwd-group): Apply these expressions. (tramp-file-name-structure-unified) (tramp-file-name-structure-separate) (tramp-make-tramp-file-format-unified) (tramp-make-tramp-file-format-separate) (tramp-make-tramp-file-format) (tramp-make-tramp-file-user-nil-format-unified) (tramp-make-tramp-file-user-nil-format-separate) (tramp-make-tramp-file-user-nil-format) (tramp-multi-file-name-structure-unified) (tramp-multi-file-name-structure-separate) (tramp-multi-file-name-hop-structure-unified) (tramp-multi-file-name-hop-structure-separate) (tramp-make-multi-tramp-file-format-unified) (tramp-make-multi-tramp-file-format-separate): Removed. (tramp-make-tramp-file-name): Allow partial tramp file names. Generate tramp file format on-the-fly depending on parameters. Apply atomar format strings resp expressions. (tramp-get-completion-methods) (tramp-get-completion-user-host): Apply `tramp-make-tramp-file-name'. (tramp-parse-hosts-group): Take all host names and IP addresses into account. (tramp-bug): Remove `tramp-make-tramp-file-format'. 2002-09-01 Michael Albinus * tramp.el (tramp-methods): Add `tramp-completion-function' for "su" and "sudo". (tramp-get-completion-telnet): Implement it. (tramp-parse-hosts) (tramp-parse-hosts-group) (tramp-get-completion-su) (tramp-parse-passwd) (tramp-parse-passwd-group): New functions. 2002-08-31 Michael Albinus * tramp.el (tramp-completion-mode): Check for `last-input-char'. (tramp-completion-file-name-handler-alist): Add handler for `file-exists-p. (tramp-completion-handle-file-exists-p): New function. (tramp-completion-handle-file-name-completion): Simplified. (tramp-completion-dissect-file-name): Regexp's reorganised. (tramp-completion-handle-file-name-all-completions): Call completion-function only if `user' or `host' is given. (tramp-get-completion-user-host): New function. (tramp-get-completion-rsh) (tramp-get-completion-ssh): Apply it. 2002-08-29 Michael Albinus * tramp.el (tramp-completion-file-name-handler-alist): Add handler for `expand-file-name'. (tramp-completion-handle-expand-file-name): New function. 2002-08-26 Michael Albinus * tramp.el (tramp-completion-mode): New function. (tramp-completion-handle-file-name-directory) (tramp-completion-handle-file-name-all-completions): Apply it. (tramp-methods): Remove double definition of `ssh1-old' and `ssh2-old'. (tramp-point-at-eol): New defalias. (tramp-parse-rhosts-group) (tramp-parse-shosts-group):: Apply it. 2002-08-25 Michael Albinus * tramp.el (tramp-get-completion-methods) (tramp-get-completion-rsh) (tramp-get-completion-ssh): Add "[" for Xemacs. (tramp-completion-file-name-regexp-separate): Expression adapted. (tramp-completion-file-name-handler-alist): Add handler for `file-name-directory' and `file-name-nondirectory'. (tramp-completion-handle-file-name-directory) (tramp-completion-handle-file-name-nondirectory) (tramp-completion-run-real-handler): New functions. (tramp-completion-file-name-handler) (tramp-completion-handle-file-name-all-completions): Apply `tramp-completion-run-real-handler'. (tramp-parse-rhosts) (tramp-parse-shosts): Use `with-temp-buffer'. `result' renamed to `res' (otherwise side effects in XEmacs). 2002-08-24 Michael Albinus * tramp.el (tramp-completion-file-name-regexp) (tramp-completion-file-name-handler-alist) (tramp-flatten-list) (tramp-completion-dissect-file-name) (tramp-get-completion-rsh) (tramp-parse-rhosts) (tramp-parse-rhosts-group) (tramp-get-completion-ssh): Doc string tuned. (tramp-methods): Doc string and custom type extended for `tramp-completion-function'. (tramp-completion-function): Variable added. Is it really used? Other variables like `tramp-completion-function' aren't used. (tramp-completion-file-name-handler-alist): Add handler for `file-name-completion'. (tramp-completion-handle-file-name-completion): New function. 2002-08-20 Michael Albinus Branch "completion" created. Version named (temporarily) "2.0.completion". 2002-08-18 Michael Albinus * tramp.el (tramp-parse-rhosts) (tramp-parse-rhosts-group) (tramp-parse-shosts) (tramp-parse-shosts-group): New functions. 2002-08-17 Michael Albinus * tramp.el (tramp-completion-dissect-file-name) (tramp-completion-dissect-file-name1): New functions. 2002-08-16 Michael Albinus * tramp.el (tramp-get-completion-function) (tramp-get-completion-rsh) (tramp-get-completion-ssh) (tramp-get-completion-telnet): New functions. (tramp-methods): Add `tramp-completion-function' for all methods. 2002-08-15 Michael Albinus * tramp.el (tramp-get-completion-methods): New function. (tramp-find-default-method): Allow host to be nil (like user). 2002-08-14 Michael Albinus * tramp.el (tramp-completion-file-name-regexp-unified) (tramp-completion-file-name-regexp-separate) (tramp-completion-file-name-regexp) (tramp-completion-file-name-handler-alist): New defcustoms. (tramp-completion-file-name-handler): New function. Add `tramp-completion-file-name-handler' to `file-name-handler-alist'. (tramp-run-real-handler): Add `tramp-completion-file-name-handler' to `inhibit-file-name-handlers'. (tramp-completion-handle-file-name-all-completions) (tramp-completion-handle-file-name-completion): New functions. 2002-08-12 Michael Albinus * tramp.el (tramp-invoke-ange-ftp): `tramp-disable-ange-ftp' must be called again after activating `ange-ftp'. (tramp-ange-ftp-file-name-p): Check for Xemacs. 2002-08-08 Michael Albinus * tramp.el (tramp-do-copy-or-rename-file): Don't pass KEEP-DATE to tramp-invoke-ange-ftp 'rename. (tramp-handle-write-region): Don't pass LOCKNAME and CONFIRM to tramp-invoke-ange-ftp 'write-region. (tramp-handle-set-file-modes): Change order of FILENAME and MODE passing to tramp-invoke-ange-ftp 'set-file-modes. (tramp-flatten-list): New function. Maybe this functionality does exist already elsewhere in the libraries. (tramp-invoke-ange-ftp): Apply `tramp-flatten-list' to parameter list in order to avoid nested lists, f.e. when invoked from `tramp-handle-dired-call-process'. 2002-09-05 Kai Großjohann * tramp.el (tramp-chunksize): New kluge variable. (tramp-send-region): If tramp-chunksize is non-nil, send region in parts and sleep 0.1 seconds between chunks. 2002-09-03 Kai Großjohann * tramp.el (tramp-handle-insert-directory): Use `insert-buffer-substring' instead of `insert-buffer', which is not supposed to be used from Lisp. Remember old point in a variable instead of using `mark'. Suggestion from Stefan Monnier. (tramp-unified-filenames): New variable. Use it in default value of other filename variables. (file-expand-wildcards): Don't advise unless "[" and "]" are used in the filename format. 2002-09-01 Kai Großjohann * tramp.el (tramp-methods): Remove duplicate definition of ssh1-old and ssh2-old. 2002-09-01 Kai Großjohann Version 2.0.15 released. * tramp.el (require 'base64): Add explanatory comment to Steve's change. (tramp-feature-write-region-fix): Make sure that variable is always defined, even on XEmacs (where it is nil). 2002-08-31 Steve Youngs * tramp.el (require 'base64): Most modern Emacsen have the base64 encode/decode functions built in, so test to see if they are bound before we go blindly requiring base64.el. (tramp-feature-write-region-fix): XEmacs doesn't have a 'find-operation-coding-system' and this variable doesn't seem to be used anywhere so wrap it in (unless (featurep 'xemacs)). 2002-08-29 Michael Albinus * tramp.el (tramp-invoke-ange-ftp): (tramp-ange-ftp-file-name-p): Check for Xemacs. (tramp-do-copy-or-rename-file): Don't pass KEEP-DATE to tramp-invoke-ange-ftp 'rename. (tramp-handle-write-region): Don't pass LOCKNAME and CONFIRM to tramp-invoke-ange-ftp 'write-region. (tramp-handle-set-file-modes): Change order of FILENAME and MODE passing to tramp-invoke-ange-ftp 'set-file-modes. (tramp-invoke-ange-ftp): `tramp-disable-ange-ftp' must be called again after activating `ange-ftp'. 2002-08-22 Kai Großjohann * tramp.el (tramp-open-connection-su): Use user name "root" if no user name is given. 2002-08-22 Kai Großjohann Version 2.0.14 released. * tramp.el (tramp-shell-prompt-pattern): New variable. (tramp-actions-before-shell, tramp-multi-actions) (tramp-find-shell, tramp-open-connection-multi) (tramp-open-connection-setup-interactive-shell): Use it. (tramp-open-connection-telnet, tramp-open-connection-rsh) (tramp-open-connection-su): Mention `tramp-shell-prompt-pattern' in the docstring. (tramp-bug): Report `tramp-shell-prompt-pattern'. (tramp-process-one-multi-action, tramp-process-one-action): Make message clearer so people don't confuse it with Emacs asking them a question if the regexp happens to end with "?". (tramp-verbose): Change default value from 10 to 9. Also change some logging levels so that 10 is reserved for stuff which is needed for debugging only, but 9 catches everything that people might like to see in order to see that Tramp is actually working. 2002-08-21 Kai Großjohann Version 2.0.13 released. * tramp.el (tramp-handle-write-region): Don't check to see if remote end is awake after sending data to remote host: we want to send "EOF" not "echo are you awake"... (tramp-maybe-open-connection): Swap args for tramp-time-diff. 2002-08-17 Kai Großjohann * tramp.el (tramp-yn-prompt-regexp): New variable. (tramp-action-yn): New function, using it. 2002-08-08 Kai Großjohann * tramp.el (tramp-feature-write-region-fix): New internal variable. Not yet used. Should be used in `tramp-handle-write-region'. 2002-08-07 Kai Großjohann Version 2.0.12 released. * tramp.el (tramp-find-shell) (tramp-open-connection-setup-interactive-shell): Comment out possibly obsolete "echo hello" commands. (tramp-run-real-handler): If operation is `ange-ftp-hook-function', use first arg as the real operation. (tramp-check-ls-commands): Use / instead of \ as directory separator. (Relevant for XEmacs on Windows.) (tramp-maybe-open-connection): Use tramp-wait-for-output when waiting for the "are you awake" command. Use a different string for the "are you awake" command. (tramp-send-command): New optional arg NEVEROPEN means to never invoke tramp-maybe-open-connection. (tramp-maybe-open-connection): Use it. 2002-08-05 Kai Großjohann Version 2.0.11 released. * tramp.el (tramp-invoke-ange-ftp): Avoid infloop by Ange-FTP calling Tramp again: use tramp-run-real-handler to invoke Ange-FTP. (tramp-post-connection): Erase buffer after finding a remote shell. (tramp-find-file-exists-command): Try "test -e" and its variants before "ls -d". (tramp-bug): Report `tramp-terminal-type'. 2002-08-04 Kai Großjohann Version 2.0.10 released. * tramp.el (tramp-perl-encode-with-module) (tramp-perl-decode-with-module) (tramp-perl-encode, tramp-perl-decode): Doc fix. From Andreas Schwab. (tramp-bug): New variables to report. (tramp-post-connection): After finding shell, wait a bit. I have no idea why it is necessary, but Daniel also thinks it's necessary. (tramp-uudecode): New variable. Shell function `tramp_uudecode' for decoding to standard output for those Unices that don't have it. (tramp-post-connection): Install the function on the remote host. (tramp-coding-commands): Add an alternative for using the `tramp_uudecode' shell function. (tramp-perl-file-attributes): Print uid and gid as signed integers, not unsigned ones. 2002-08-04 Kai Großjohann Version 2.0.9 released. * tramp.el (tramp-bug): Add wording about additional info to include in bug report. (tramp-find-shell): Set $PS1 for invocation of second shell (for tilde expansion). (tramp-find-shell): Shell prompt must match at end of buffer. Do this also for fallback shell prompt. (tramp-find-shell): More debugging output. (tramp-find-inline-encoding): When checking the decoding command, some commands fail when reading from /dev/null. So we pass a known string through the encoding command and pass that through the decoding command. So we know whether the decoding command can deal with some real input. 2002-08-03 Kai Großjohann Version 2.0.8 released. * tramp.el (tramp-perl-encode, tramp-perl-encode): Double the backslashes in the string. 2002-08-03 Kai Großjohann Version 2.0.6 released. * tramp.el (tramp-handle-make-directory): save-excursion. (tramp-default-method): Change to "ssh". (tramp-perl-encode, tramp-perl-decode): New (faster) versions. From Juanma Barranquero . (tramp-perl-encode-with-module, tramp-perl-decode-with-module) (tramp-perl-encode, tramp-perl-encode): Strings are passwd through `format', so double all percent characters and document. 2002-07-31 Kai Großjohann * tramp.el (tramp-wrong-passwd-regexp): Restructure. Add additional alternative. (tramp-action-permission-denied): Show *tramp/foo* buffer so that the user knows why. (tramp-su-program): Add defvar for this method parameter. From Juanma Barranquero . (tramp-perl-encode-with-module): Rename from tramp-perl-encode. (tramp-perl-decode-with-module): Rename from tramp-perl-decode. (tramp-perl-encode, tramp-perl-decode): New implementations that do not use any Perl modules. From Juanma Barranquero . (tramp-post-connection): Create shell functions tramp_encode, tramp_decode, tramp_encode_with_module, tramp_decode_with_module for the new Perl snippets. (tramp-coding-commands): Add entries for the two implementations (one with module, one without module). (tramp-handle-file-truename): Invoke Ange-FTP properly. (tramp-handle-expand-many-files): Don't try to invoke Ange-FTP twice. 2002-07-30 Kai Großjohann * tramp.el (tramp-handle-file-attributes): Restructure logic. (tramp-handle-file-attributes-with-ls) (tramp-handle-file-attributes-with-perl): Debugging output. (tramp-coding-commands): Provide base64 encoding with recode. 2002-07-29 Kai Großjohann * Makefile (prepversion): Edit tramp.el instead of creating new file tramp-version.el. (clean): Don't remove tramp-version.el, the file doesn't exist anymore. * tramp.el (tramp-perl-encode, tramp-perl-decode): Very simple implementations requiring the Perl module MIME::Base64. (tramp-coding-commands): Use them. (tramp-version): Move back here from tramp-version.el. The variable is automatically edited from the Makefile. (tramp-login-prompt-regexp, tramp-password-prompt-regexp) (tramp-wrong-passwd-regexp): Remove "$" from regexp, it must match at end of buffer anyway. (tramp-action-login, tramp-action-succeed) (tramp-action-permission-denied, tramp-multi-action-login) (tramp-multi-action-succeed) (tramp-multi-action-permission-denied): Erase buffer when finished. (tramp-process-one-action, tramp-process-one-multi-action): Always search from point-min. (tramp-enter-password): Erase buffer. (tramp-action-yesno): New function. (tramp-yesno-prompt-regexp): New variable. (tramp-actions-before-shell): Use them. 2002-07-28 Kai Großjohann * tramp.el (tramp-multi-actions): New variable, like tramp-actions-before-shell, but for multi-hop connections. (tramp-perl-encode, tramp-perl-decode): New variables. Contain Perl code for uuencode, uudecode. (tramp-post-connection): Use new Perl encode/decode implementation. (tramp-coding-commands): Ditto. (tramp-perl-mime-encode, tramp-perl-mime-decode): Remove. This code does not work. (tramp-invoke-ange-ftp): Require ange-ftp to avoid binding ange-ftp-name-format when it is unbound. (tramp-coding-commands): Remove Perl alternative. Fix doc. 2002-07-27 Kai Großjohann * tramp.el (tramp-handle-insert-directory): Expand file name. (tramp-actions-before-shell): New variable of actions to perform before we get a shell prompt. (tramp-action-login, tramp-action-password, tramp-action-succeed) (tramp-action-permission-denied): New functions, used in above variable. (tramp-process-one-action, tramp-process-actions): Process the actions. (tramp-open-connection-telnet, tramp-open-connection-rsh): Use new action mechanism, call tramp-process-actions. (tramp-methods): Replace a lot of methods because of autodetection of mimencode/uuencode. The new names are a bit longer but more mnemonic. (tramp-maybe-open-connection): Look to see if process is really still alive. (tramp-handle-file-attributes): Make sure to call Ange-FTP in all cases, not only for existing files. Make sure not to call tramp-handle-file-exists-p on an Ange-FTP filename. 2002-07-26 Kai Großjohann * tramp.el (tramp-handle-file-local-copy) (tramp-handle-write-region): Call `tramp-get-{de,en}coding-{function,command}' with four args. (tramp-post-connection): Always send Perl implementation of mimencode and mimedecode when Perl is available. (tramp-get-encoding-command, tramp-get-decoding-command) (tramp-get-encoding-function, tramp-get-decoding-function): New implementation, uses auto-detected connection properties. 2002-07-26 Kai Großjohann * tramp.el (tramp-coding-commands): New variable. (tramp-find-inline-encoding): New function. (tramp-handle-make-directory, tramp-handle-delete-directory) (tramp-handle-delete-file): Do expand-file-name on arg. 2002-07-24 Steve Youngs * Makefile (prepversion): New target to create tramp-version.el. (all): Use it. (clean): Add tramp-version.el. * tramp.el (tramp-version): Removed, we create it on the fly from the Makefile. 2002-07-23 Kai Großjohann Release 2.0.3. * tramp.el (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): Correct alist for `format-spec', use (a . b) instead of (a b). (tramp-handle-directory-files): Handle fifth, XEmacs-specific, arg FILES-ONLY. (tramp-version): Bump version to 2.0.3. 2002-07-21 Kai Großjohann * tramp.el (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. 2002-07-20 Kai Großjohann * tramp.el (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. 2002-07-19 Kai Großjohann * tramp.el (tramp-multi-sh-program): New variable. (tramp-open-connection-multi): Use it. Bump version to 2.0.2. 2002-07-19 Steve Youngs * tramp.el: Revert my previous patch. It's better to work around the colour prompt problem outside of Tramp, eg in ~/.bashrc or similar. 2002-07-19 Steve Youngs * tramp.el (tramp-find-shell): Remove "\\'" from regexp so we can deal with shell prompts that have colour control characters in them. (tramp-open-connection-telnet): Ditto. (tramp-open-connection-rsh): Ditto. (tramp-open-connection-su): Ditto. (tramp-open-connection-multi): Ditto. (tramp-multi-connect-telnet): Ditto. (tramp-multi-connect-rlogin): Ditto. (tramp-multi-connect-su): Ditto. (tramp-open-connection-setup-interactive-shell): Ditto. 2002-07-18 Steve Youngs * tramp.el (tramp-multi-file-name-structure-separate): Typo, it's name was set to 'tramp-file-name-structure-separate'. 2002-07-18 Kai Großjohann * tramp.el (tramp-methods): Rename methods invoking "ssh1" or "ssh2" to longer names. Use old names sm1, sm2, su1, su2 and so on for methods invoking "ssh -1" or "ssh -2". 2002-07-13 Kai Großjohann * tramp.el (tramp-multi-file-name-structure-unified): Add missing initial slash. Colon is moved from start to end of hop regexp, adjust this regexp accordingly. (tramp-file-name-structure-separate): Bug fix. (tramp-multi-file-name-hop-structure-unified): Move colon from beginning to end. 2002-07-11 Kai Großjohann * tramp.el (tramp-handle-make-symbolic-link): Complete implementation. 2002-07-10 Kai Großjohann * tramp.el (tramp-file-name-structure): Add missing paren. (tramp-file-name-regexp-unified, tramp-file-name-regexp-separate): Add autoload cookies. (tramp-default-method): New default value "sm" for all Emacsen. (tramp-default-method-alist): Invoke Ange-FTP for some user/host combinations on Emacs. 2002-07-09 Kai Großjohann * tramp.el (tramp-handle-file-name-directory): Don't return "/" for the root directory on a remote host. (tramp-file-name-structure-unified) (tramp-file-name-structure-separate) (tramp-file-name-regexp-unified) (tramp-make-tramp-file-format-unified) (tramp-make-tramp-file-format-separate) (tramp-make-tramp-file-user-nil-format-unified) (tramp-make-tramp-file-user-nil-format-separate) (tramp-multi-file-name-structure-unified) (tramp-multi-file-name-structure-separate) (tramp-file-name-structure-unified) (tramp-file-name-structure-separate) (tramp-multi-file-name-hop-structure-unified) (tramp-multi-file-name-hop-structure-separate) (tramp-make-multi-tramp-file-format-unified) (tramp-make-multi-tramp-file-format-separate): New constants. (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-file-name-structure) (tramp-multi-file-name-hop-structure) (tramp-make-multi-tramp-file-format): Use them as default values. On Emacs, use the *-unified variants, on XEmacs, use the *-separate variants. Tramp and Ange-FTP share a common filename syntax on Emacs, but Tramp and EFS use separate filename syntaxes on XEmacs. (tramp-handle-ange-ftp): Removed. (tramp-disable-ange-ftp): New function to disable Ange-FTP if enabled. Unconditionally call it at top level when file is loaded. This should be safe since XEmacs uses EFS. (tramp-default-method): New default value "ftp" on Emacs, "sm" on XEmacs. 2002-07-04 Kai Großjohann * tramp.el (tramp-handle-ange-ftp): Move interactive spec after docstring. From Andreas Schwab. 2002-07-03 Kai Großjohann * tramp.el (tramp-send-eof): Doc string typo. (tramp-kill-process): Likewise. From Juanma Barranquero . 2002-07-02 Kai Großjohann * tramp.el (tramp-handle-ange-ftp): Add todo items for handling EFS, too. 2002-06-27 Kai Großjohann * tramp.el (tramp-handle-ange-ftp): New function to set up Tramp configuration suitable for replacing Ange-FTP. (tramp-repair-jka-compr): Factor out some previously top-level code into an extra function. Also call it at top-level. 2002-06-26 Kai Großjohann * tramp.el (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): Change to an Ange-FTP-like filename syntax. (tramp-handle-ange-ftp, toplevel): Remove Ange-FTP from filename handler alist if tramp-handle-ange-ftp is non-nil. (tramp-handle-delete-file) (tramp-handle-verify-visited-file-modtime) (tramp-handle-make-symbolic-link): Fix typos. (tramp-wait-for-regexp, tramp-wait-for-output): Convert int to string before passing it to `insert'. 2002-06-25 Kai Großjohann * tramp.el (tramp-open-connection-rsh): Provide a hack for a "-p" argument to specify a port number. Version 2.0.1 released. * tramp.el (tramp-version): New version 2.0.1. 2002-06-24 Kai Großjohann * tramp.el (tramp-handle-file-truename): Don't invoke Ange-FTP. (tramp-invoke-ange-ftp): Remove superfluous IDX-LIST argument. Callers changed. 2002-06-24 Kai Großjohann * tramp.el (tramp-ftp-method): New user option. (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-invoke-ange-ftp): New function to forward calls to Ange-FTP. 2002-06-20 Kai Großjohann * tramp.el (tramp-default-method-alist): New user option. (tramp-find-default-method): Use it. 2002-06-19 Kai Großjohann * tramp.el (tramp-sh-extra-args): New variable. (tramp-find-shell): Use it. 2002-06-16 Kai Großjohann * tramp.el: New todo item. 2002-06-15 Kai Großjohann * tramp.el (tramp-handle-file-truename): Lower numchase-limit (max number of symlink traversals) from 30 to 20. 2002-06-14 Kai Großjohann * tramp.el (tramp-bug-report-address): Change bug reporting address to Savannah. 2002-06-10 Kai Großjohann * tramp.el (tramp-methods): New method "fcp". Suggested by graydon@redhat.com. 2002-06-04 Kai Großjohann * tramp.el (tramp-methods): Allow nil where strings are allowed. (tramp-handle-file-truename): Decrease limit on chasing symlinks to provide earlier error message in case of failure. People might think that Emacs is hanging. 2002-05-22 Kai Großjohann * tramp.el (tramp-find-shell, tramp-open-connection-telnet) (tramp-open-connection-rsh, tramp-open-connection-su) (tramp-open-connection-multi, tramp-multi-connect-telnet) (tramp-multi-connect-rlogin) (tramp-open-connection-setup-interactive-shell): Shell prompt must match at end of buffer. 2002-05-21 Kai Großjohann * tramp.el (tramp-send-linewise): Use sleep-for instead of sit-for to wait 0.1s. sit-for does not wait if the user types ahead. 2002-05-20 Kai Großjohann * tramp.el (tramp-send-linewise): Wait 0.1s instead of 0.001s. 2002-05-19 Kai Großjohann * tramp.el (tramp-send-linewise): New function. (tramp-post-connection): Use it for sending long strings. 2002-04-16 Kai Großjohann * tramp.el (tramp-shell-quote-argument): Todo item: don't use `shell-quote-argument'. 2002-04-14 Kai Großjohann * tramp.el (tramp-methods): New method "pscp". Suggestion from lawrence mitchell. 2002-04-14 Kai Großjohann * tramp.el (file-expand-wildcards): Advise it even on Emacs 21. (tramp-methods): New methods "plinku" and "plinkm". "plinku" was suggested by Adam Przepiórkowski. 2002-04-10 Kai Großjohann * tramp.el (tramp-shell-quote-argument): When calling shell-quote-argument internally, make sure it uses Unix-like behavior, not Windows-like behavior. (This is done by binding system-type, which is certainly not the right way to do it!) 2002-03-25 Kai Großjohann * tramp.el (tramp-handle-add-name-to-file): Use "ln" connection property instead of literal "ln" in command. (tramp-post-connection): Only set "ln" connection property if that program could be found. Erase buffer when done. (tramp-handle-expand-file-name): Erase buffer before and after expanding tilde. 2002-03-12 Kai Großjohann * tramp.el (tramp-post-connection): Make sure to leave an empty connection buffer on exit. 2002-03-06 Kai Großjohann * tramp.el (tramp-handle-make-symbolic-link) (tramp-handle-directory-files) (tramp-handle-file-name-all-completions) (tramp-handle-dired-call-process, tramp-handle-insert-directory) (tramp-handle-expand-file-name, tramp-handle-shell-command): Make sure to "cd" back to the home dir. Otherwise, previous commands could affect future commands because of the wrong cwd. (tramp-shell-quote-argument): Don't invoke substring on short strings. 2002-03-05 Kai Großjohann * tramp.el (tramp-shell-quote-argument): If the argument starts with "~", don't quote that. Reported by Martin Guertler. 2002-03-03 Kai Großjohann * tramp-util.el (top-level): Require cl when compiling. This fixes problems with byte-compiling under Emacs 20. Reported by Yoichi NAKAYAMA . 2002-03-01 Kai Großjohann * tramp.el (tramp-post-connection): Issue message when checking encoding/decoding commands is finished. 2002-02-18 Kai Großjohann * tramp.el (file-expand-wildcards): Make sure that the return value is always a list. 2002-02-12 Steve Youngs * tramp.el (tramp-handle-insert-directory): Change "#'identity" to "'identity" it was causing a invalid read syntax error that edebug brought to the surface. Add a "." after directory name so that symlinked directories display properly on platforms that have breakage on symlinks like Solaris. 2002-02-08 Kai Großjohann * tramp.el (file-expand-wildcards): Improve the kludge by looking if the path name part of the filename contains wildcard characters at all. If this is not the case, we avoid calling the original function at all. 2002-02-01 Kai Großjohann * tramp.el (tramp-handle-verify-visited-file-modtime): When the file does not exist, it is not modified. 2002-01-31 Kai Großjohann * tramp.el (tramp-handle-verify-visited-file-modtime): Don't use modtime from `file-attributes' if it is nil. 2002-01-25 Kai Großjohann * Makefile: Define a flag USE_CONTRIB which adds the local contrib directory to the load-path if set. Use suffix rules. From Norbert Koch . 2002-01-22 Kai Großjohann * tramp.el (tramp-handle-set-visited-file-modtime): Save `last-coding-system-used' in a way that works even if the variable is not defined. (tramp-handle-insert-file-contents): Use tramp-message-for-buffer, not tramp-message. (tramp-message): Prefix all messages with "tramp:". (tramp-handle-file-local-copy): Use tramp-message-for-buffer, not tramp-message. (tramp-handle-insert-file-contents): Remove debug message referring to `last-coding-system-used' -- it does not exist on all Emacsen. (toplevel): New todo item. (tramp-kill-process): New function. (tramp-post-connection): Kill connection process if something goes wrong. 2002-01-21 Kai Großjohann * tramp.el (top-level, tramp-run-real-handler, efs-ftp-path): Disable special handling for ange-ftp and EFS. This was only needed when Tramp names also matched the ange-ftp filename regexp. This experimental change only comments out the relevant sections. 2002-01-20 Kai Großjohann * tramp.el: Remove some todo items which are done. (tramp-methods): Use doubled `-t -t' for `scpx' and `smx' methods. 2002-01-20 Kai Großjohann * tramp.el (tramp-handle-write-region): When calling `write-region' to write the temp file, pass `no-message' for VISIT. If our own VISIT arg is true, we explicitly call `set-visited-file-modtime' later on. If we pass VISIT=t when writing the temp file, the visited-file-modtime information of the buffer is clobbered by a local time, which will bite us when the local and remote times are out of sync. (tramp-handle-write-region): Make sure to set `last-coding-system-used' at the very end of the function. In particular, don't allow `set-visited-file-modtime' to clobber it. (tramp-handle-set-visited-file-modtime): Take care to not clobber `last-coding-system-used' -- it would confuse jka-compr. 2002-01-19 Kai Großjohann * tramp.el (clear-visited-file-modtime): Advise this function; it does not support filename handlers. Set the Lisp variable that we use for emulating modtime back to nil. (tramp-handle-set-visited-file-modtime): If time-list is provided, call real handler with that data. (tramp-handle-verify-visited-file-modtime): Allow 1 sec difference between times. (tramp-time-diff): `itimer-time-difference' expects three-element lists; pad short lists when calling that function. Reported by Skip Montanaro . Also swap preference order of `itimer-time-difference' and `subtract-time': prefer the latter. 2002-01-10 Kai Großjohann * tramp.el (tramp-handle-expand-file-name): Bind directory-sep-char to "/" so that XEmacs on Windows does the right thing. (tramp-handle-file-truename): Return trailing "/" if input had trailing "/". 2002-01-06 Kai Großjohann * tramp.el (tramp-handle-file-truename): Use `tramp-method-for-buffer' to make sure that log messages end up in the right buffer. Correct braino in symlink handling. 2002-01-05 Kai Großjohann * tramp.el (tramp-split-string): New compat function. (tramp-handle-file-truename): Use it. 2002-01-04 Kai Großjohann * tramp.el (tramp-find-shell): If starting bash for tilde expansion, provide `--norc' argument. (tramp-handle-file-truename): More debugging output. More Obiwan errors. 2002-01-03 Steve Youngs * tramp.el (tramp-find-shell): Change order for choice of shell, put bash first. 2002-01-02 Kai Großjohann * tramp.el (tramp-handle-file-truename): Another Obiwan error. For relative symlinks "/a/b" pointing to "c/d", the "b" part should not be part of the truename. 2002-01-01 Kai Grossjohann * tramp.el (tramp-handle-file-truename): Obiwan error. (tramp-process-actions): New function. Doesn't do anything yet. 2001-12-30 Kai Großjohann * base64.el: Moved to contrib directory. * format-spec.el: Ditto. 2001-12-30 Kai Großjohann * tramp.el (tramp-post-connection): Use parens around "test / -nt /" command to find out if `test' supports the `-nt' switch. Without the parens, /bin/sh as of BSD/OS 4.x crashes. Reported by Jason Mastaler. (tramp-remote-path): Add /usr/contrib/bin. Reported by Jason Mastaler. 2001-12-29 Kai Großjohann * Makefile (tramp.elc): Remove superfluous dependencies. * tramp-vc.el (tramp-vc-workfile-unchanged-p): Supply two args to vc-default-workfile-unchanged-p. * tramp-util.el (tramp): Require tramp. * tramp.el (tramp-check-ls-command): Return status of command to check if ls supports the `-n' option should be zero, not non-nil. (tramp-find-ls-command): Look for `gls' in addition to `ls' and `gnuls' binaries. 2001-12-28 Kai Großjohann * tramp.el (tramp-post-connection): Move comment. Check to see if decoding and encoding commands work, if given in method definition. 2001-12-28 Kai Grossjohann * tramp.el (tramp-file-name-handler-alist): New entry for `file-truename'. (tramp-handle-file-truename): New function. 2001-12-27 Kai Großjohann * tramp.el (toplevel): Don't barf if jka-compr is already loaded. Instead, make sure that jka-compr comes first in file-name-handler-alist. (tramp-handle-set-visited-file-modtime): More error checking. If `file-attributes' returns modtime (0 0), then assume modtime isn't known and revert to using `ls -ild'. Previously, we checked if Perl was available. (tramp-handle-verify-visited-file-modtime): Check for modtime being (0 0), rather than Perl being available. (tramp-handle-write-region): Some sanity checking: make sure that current buffer isn't changed while the function runs. (Maybe this is not necessary now?) Only set-visited-file-modtime if VISIT is t (used to check for non-nil). (tramp-make-auto-save-file-name): Construct a local filename, then run `make-auto-save-file-name' on it. This makes sure that no filename handlers will be run on that file. (Specifically, this avoids jka-compr -- we want auto-save files to be saved quickly. This fixes the change from 2001-12-07 which aimed at doing the same thing, but failed.) 2001-12-26 Kai Grossjohann * tramp.el (tramp-buffer-file-attributes): Doc string fix. (tramp-handle-set-visited-file-modtime): Don't barf if called without arguments. Use output of "ls -ild", not return value of file-attributes, for tramp-buffer-file-attributes. (tramp-handle-verify-visited-file-modtime): Use output of "ls -ild", not return value of file-attributes, for tramp-buffer-file-attributes. (tramp-handle-insert-file-contents): Call set-visited-file-modtime without args. (tramp-handle-insert-file-contents): Ditto. (tramp-handle-write-region): Pass VISIT arg on to call of real handler. (The old code of passing the `no-message' symbol instead was a little strange -- an XEmacsism?) (tramp-handle-write-region): Call set-visited-file-modtime, if VISIT. Remove some todo items. 2001-12-25 Kai Großjohann * tramp.el (tramp-buffer-file-attributes): New variable. (tramp-handle-set-visited-file-modtime): Use it in case the remote end does not give us the right modtime. (tramp-handle-verify-visited-file-modtime): Implementation. 2001-12-07 Kai Großjohann * tramp.el (tramp-make-auto-save-file-name): Append "~" to auto-save file name; this avoids jka-compr when auto-saving. 2001-11-30 Kai Großjohann * tramp.el (tramp-handle-file-name-all-completions): Return nil if filename contains a slash. (tramp-handle-directory-file-name): New implementation. From Philippe Troin . 2001-11-20 Kai Großjohann * tramp.el (toplevel): Emit an error message if jka-compr is already loaded. 2001-11-08 Kai Großjohann * tramp-util.el (tramp-compile): Use `tramp-handle-shell-command', not `shell-command'. 2001-11-07 Kai Großjohann * tramp-util.el (tramp-compile): Make sure default-directory is set correctly. * tramp.el (tramp-post-connection): Don't send Perl `mime-encode' and `mime-decode' implementations unless really needed. 2001-11-02 Kai Großjohann * tramp.el (file-expand-wildcards): Advise this function to work around a problem in Emacs 20.x. This is just a kludge! 2001-10-16 Kai Großjohann * tramp.el (tramp-open-connection-su): Make sure that user name is given. 2001-10-10 Kai Großjohann * tramp.el (tramp-handle-file-name-directory): Return "/" if `path' component is empty. 2001-10-01 Kai Großjohann * tramp.el (tramp-file-name-structure): Allow dot in host names. 2001-09-29 Kai Großjohann * tramp.el (tramp-file-name-structure): Make regexp less restrictive to allow multi-hop filenames. 2001-09-27 Kai Großjohann * tramp.el (tramp-bug): Report more info about multi-hop methods. 2001-09-24 Kai Großjohann * tramp-util.el (tramp-compile): require compile. 2001-09-20 Kai Großjohann * tramp.el (tramp-bug-report-address): Update to reflect move to SourceForge. 2001-09-09 Kai Großjohann * tramp.el (Module): Add a todo item. 2001-08-31 Kai Großjohann * tramp2.el (tramp2-setup-coding-system): Find a good coding system in extra function so it can be customized via tramp2-setup-functions. (tramp2-execute-local): Set TERM to dumb, just to be on the safe side. 2001-08-12 Kai Grossjohann * tramp.el: Default file name format changed again. This time, it's like /[method/user@host]/path/to/file. The user@ part is optional. Multihop files are like /[multiu/telnet:user@host/ssh:user2@host2]/path/to/file. 2001-08-05 Kai Großjohann * tramp.el: Default file name format changed! File names with default method have changed from /r:user@host:/path/to/file to /./user@host:/path/to/file. Files with explicitly specified method have changed from /r@meth:user@host:/path/to/file to /./@meth:user@host:/path/to/file. (Note one more colon for method spec!) 2001-07-31 Kai Großjohann * tramp.el (tramp-barf-unless-okay): Add new arg `signal' and signal that signal rather than calling `error'. 2001-07-11 Kai Großjohann * tramp.el (tramp-multi-file-name-hop-structure): Allow digits and underscore in name of hop connection method. Suggested by Alan D. Salewski. (tramp-multi-connect-su): Thinko in logic. Reported by Alan D. Salewski. 2001-06-03 Kai Grossjohann * tramp2.el (tramp2-execute-local): Set TERM environment variable to dumb. 2001-06-03 Kai Großjohann * tramp.el (tramp-send-eof): Always send a literal Ctrl-D, even if client is Windows. (tramp-find-executable): Remove superfluous newline. (tramp-handle-write-region): Remove superfluous `echo hello' command which clobbers the exit status. (tramp-handle-delete-file): Signal file error if deletion failed. This depends on `rm -f' on the remote end to set the exit status correctly. This does not provide a meaningful message. How do we extract the error message from `rm -f' from the buffer? (tramp-handle-write-region): Use "< * tramp.el (tramp-open-connection-telnet): `tramp-read-passwd' called with result of `tramp-wait-for-regexp'. But the return value of the latter changed, so adjust call of former accordingly. (tramp-open-connection-su): Ditto. 2001-05-28 Mark A. Hershberger *tramp.el (tramp-methods): Add new entry for smp method. (tramp-perl-mime-encode): New variable to implement mime-encode. (tramp-perl-mime-decode): New variable to implement mime-decode. (tramp-post-connection): Send perl mime-{encode,decode} implementation. 2001-05-28 Kai Großjohann * tramp.el (tramp-open-connection-setup-interactive-shell): Do `stty kill ^U' in case some system sets it to `@'. Remove the `stty erase ^?' from yesterday. (tramp-open-connection-telnet): `tramp-wait-for-regexp' returns list of strings, not just one string. Adjust call of `tramp-read-passwd' accordingly. (tramp-open-connection-su): Ditto. 2001-05-27 Kai Großjohann * tramp.el (tramp-open-connection-setup-interactive-shell): Do `stty erase ^?' in case some system sets it to `@'. Suggested by Stefan Monnier. 2001-05-25 Kai Großjohann * tramp.el (tramp-send-command-and-check): Add a space in the shell command. Suggested by Yuji Yamao. (I don't really understand this.) New todo item. 2001-05-03 Kai Großjohann * tramp.el (tramp-bug): Typo in variables list. Only include backup-by-copying-when-privileged-mismatch if bound. (tramp-file-name-structure): Allow uppercase characters in file names. [Would it have been better to bind case-fold-search?] 2001-04-24 Kai Großjohann * tramp.el (tramp-do-copy-or-rename-file): When moving, be sure to delete the old file in all cases. 2001-04-23 Kai Großjohann * tramp.el (tramp-send-command-and-check): `2>/dev/null' (tramp-check-ls-command): Don't `2>/dev/null', this is done in tramp-send-command-and-check. 2001-04-13 Kai Großjohann * tramp.el (tramp-open-connection-setup-interactive-shell): Posix shells don't allow you to turn off the history, so we redirect it to an innocuous file and limits that file's size as much as possible. (tramp-find-executable): Be extra careful when searching for executables, include sentinel string to search for. 2001-04-12 Kai Großjohann * tramp.el (tramp-handle-write-region): Don't use here document, just send encoded file on stdin. Suggested by Stefan Monnier. 2001-03-16 Kai Großjohann * tramp.el (tramp-multi-connect-su): Don't clobber `found'. 2001-03-14 Kai Großjohann * tramp.el (tramp-methods, tramp-telnet-args): New method parameter `tramp-telnet-args'. (tramp-get-telnet-args): New function. (tramp-open-connection-telnet): Use it. 2001-03-07 Kai Großjohann * tramp.el (tramp-line-end-position): New implementation, moved to beginning of file. (tramp-multi-connect-rlogin): Unused variable `pw' deleted. (tramp-discard-garbage-erase-buffer): More args. (tramp-open-connection-setup-interactive-shell): Pass more args. (tramp-wait-for-output): Unused variable `result' deleted. (tramp-wait-for-output): Wrong variable. (tramp-octal-to-decimal): Use `x'. (tramp-get-rcp-args): Error message typo. (tramp-temporary-file-directory): Pacify byte-compiler, use funcall. 2001-03-04 Kai Großjohann * tramp.el (tramp-handle-file-directory-p): Use `test -d' rather than `cd' to check if a file is a directory. Suggested by Stefan Monnier. (tramp-get-rcp-args): Typo in error message. This should be `didn't specify rcp args' rather than `didn't specify tramp args'... A relic of the Great Renaming from RCP to Tramp, no doubt. 2001-03-03 Kai Großjohann * tramp.el (tramp-find-shell): Allow `$ ' as shell prompt after starting a shell for tilde expansion. (tramp-methods): Expand documentation for `tramp-methods'. (tramp-methods): New method `smx' which is like `sm' but unconditionally starts /bin/sh on the remote end. This might avoid shell startup overhead. Patch by Michael Kifer. (tramp-verbose): New default value `10', it seems most people need to set it to this value, anyway, to see what's happening. Suggested by Michael Kifer. 2001-02-28 Kai Großjohann * tramp.el (tramp-open-connection-rsh): Doc bug. Reported by Tom Roche. 2001-02-25 Kai Großjohann * tramp.el (tramp-run-test2): Allow user1 and user2 to be nil. Reported by Michael Kifer. 2001-02-23 Kai Großjohann * tramp.el: Patch by Francesco Potortì, slightly modified. (tramp-discard-garbage): New variable. When non-nil, expect that remote shell sends some garbage on startup, and delete it. (tramp-discard-garbage-erase-buffer): New function. (tramp-open-connection-setup-interactive-shell): Use it. (tramp-methods): New method for Kerberos and mimencode. (tramp-find-executable): Avoid mentioning all directories on the command line, instead send directory names on stdin. Reported by Paul Stevenson. 2001-02-21 Kai Großjohann * tramp.el (tramp-open-connection-setup-interactive-shell): Wait a bit at the very beginning, in case the remote end feels like sending some junk. Reported by Francesco Potortì. 2001-02-20 Kai Großjohann * tramp.el (tramp-open-connection-setup-interactive-shell): Also `unset CDPATH' for the ksh users. Reported by Jim Greer. 2001-02-19 Kai Großjohann * tramp.el (tramp-wait-for-output): Clearer message when prompt is not found. Suggestion from Francesco Potortì. (tramp-wait-for-regexp): Clearer message when regexp is not found. Suggestion from Francesco Potortì. 2001-02-18 Kai Großjohann * tramp.el (tramp-find-executable): Use "test -x $f -a -f $f" to find out whether it's an executable. Suggestion from Francesco Potortì. 2001-02-17 Kai Großjohann * tramp-vc.el: Require vc-rcs for `vc-rcs-release' if necessary. (tramp-vc-workfile-unchanged-p): Compatibility with old and new VC. (vc-checkout): Avoid byte-compiler warning. * tramp.el (tramp-find-executable): Make sure that file is not a directory. Reported by Ed Sabol. (tramp-open-connection-telnet): Remote login default to local login, but only when actually sending the login name. The other functions (for buffer name and stuff) continue to pass `nil' for the user. 2001-02-16 Kai Großjohann * tramp.el: New todo item. (tramp-terminal-type): Don't hardwire $TERM value when opening a connection to the remote host. Suggestion from rand at meridian-enviro dot com. (tramp-find-executable): Use a shell-based implementation for tramp-find-executable. Suggestion from Francesco Potortì. (tramp-buffer-name, tramp-buffer-name-multi-method) (tramp-debug-buffer-name): Better buffer name format for omitted user names. 2001-01-19 Kai Großjohann * tramp.el (tramp-handle-load): Call `load' on local copy with fewer args for XEmacs compatibility. 2001-01-18 Kai Großjohann * tramp.el (tramp-open-connection-telnet) (tramp-open-connection-rsh, tramp-open-connection-su) (tramp-open-connection-multi): Locally bind TERM env var to "dumb" before starting the login on the remote host. 2001-01-13 Kai Großjohann * tramp.el (tramp-handle-file-name-all-completions): Local variable `dirs' not necessary anymore. Kudos to Bruce Ingalls for pointing this out. 2001-01-10 Kai Großjohann * tramp.el (tramp-open-connection-setup-interactive-shell): `unset HISTFILE' rather than `set -o history' to turn off the history. Pete Forman says this works on bash1 and bash2, but not for ksh or a Posix sh. He also says there's no way to turn history off for ksh and Posix shells, except by invoking non-interactively. I won't do that, though, because I need the prompts. 2001-01-03 Kai Großjohann * base64.el: New version from Oort Gnus as of today. 2000-12-16 Kai Großjohann * tramp.el (tramp-post-connection): Search for a shell before finding a command to check if a file exists. 2000-11-18 Daniel Pittman * tramp-vc.el (tramp-handle-vc-user-login-name): Support the case where the user name is `nil' 2000-11-17 Kai Großjohann * tramp.el (tramp-send-command-and-check): Send command and "echo $?" as two separate commands. 2000-11-15 Kai Großjohann * tramp.el (tramp-handle-shell-command): Return exit status. * tramp-vc.el (tramp-vc-do-command): Return exit status. (tramp-vc-do-command-new): For the new VC that comes with Emacs 21. (tramp-handle-vc-user-login-name): User part of a Tramp file name structure might be empty. (vc-user-login-name): Protect against `file' unbound. (Assumes local call in this case!) Kudos to Hannu Koivisto for reporting this. 2000-11-09 Kai Großjohann * tramp.el (tramp-methods): Change tramp-remote-sh to "/bin/sh" from "" for the sudu and sudm methods. 2000-11-01 Kai Großjohann * tramp.el (tramp-dos-coding-system): New variable. (tramp-open-connection-telnet, tramp-open-connection-rsh) (tramp-open-connection-su, tramp-open-connection-multi): Use it. (tramp-coding-system-change-eol-conversion): New compat function. (tramp-open-connection-setup-interactive-shell): Use it. 2000-10-20 Kai Großjohann * tramp.el (tramp-open-connection-telnet): Missed occurrences of match-string. (tramp-open-connection-rsh): Dito. (tramp-open-connection-su): Dito. (tramp-multi-connect-telnet): Dito. (tramp-multi-connect-rlogin): Dito. (tramp-multi-connect-su): Dito. 2000-10-20 Kai Großjohann * tramp.el (tramp-open-connection-telnet): Don't bind `coding-system-for-read' on Emacs 21. (tramp-open-connection-rsh): Dito. (tramp-open-connection-su): Dito. (tramp-open-connection-multi): Dito. 2000-10-20 Kai Großjohann * tramp.el (tramp-wait-for-regexp): Return list of match-strings. This way, communication with callers isn't done via global state. (tramp-open-connection-telnet): Use it. (tramp-open-connection-rsh): Dito. (tramp-open-connection-su): Dito. (tramp-multi-connect-telnet): Dito. (tramp-multi-connect-rlogin): Dito. (tramp-multi-connect-su): Dito. (tramp-wait-for-output): From match data, compute list of match-strings. Used by tramp-wait-for-regexp. 2000-10-06 Kai Großjohann * tramp.el (tramp-handle-load): Tentative first implementation. 2000-09-26 Henrik Holm * tramp.el (tramp-make-tramp-file-user-nil-format): New variable. (tramp-open-connection-telnet): Work when USER is nil. (tramp-open-connection-rsh): dito. (tramp-open-connection-su): dito. (tramp-multi-connect-telnet): dito. (tramp-multi-connect-rlogin): dito. (tramp-multi-connect-su): dito. (tramp-make-rcp-program-file-name): dito. (tramp-open-connection-multi): Don't grok default USER. (tramp-pre-connection): Not changed. tramp-current-user will be set to nil when no user is given in the file name. (tramp-dissect-multi-file-name): dito. (tramp-dissect-file-name): Return nil when no user is given in file name. 2000-09-25 Henrik Holm * tramp.el: `An rcp file' --> `a tramp file', in various places. (tramp-buffer-name): Correct typo. 2000-09-17 Kai Großjohann * tramp.el (tramp-file-exists-command): New Variable. (tramp-handle-file-exists-p): Use it. (tramp-find-file-exists-command): New function to initialize new variable. (tramp-post-connection): Use it. (tramp-get-file-exists-command): Access variable. (tramp-bug): Report a few more variable settings. 2000-09-16 Kai Großjohann * tramp.el (tramp-open-connection-setup-interactive-shell): Set TERM=dumb as suggested by V. Balaji . 2000-09-14 Kai Großjohann * tramp.el (tramp-methods): Method `scpx' was missing a setting for `tramp-remote-sh'. 2000-09-09 Kai Großjohann * tramp.el (tramp-handle-insert-directory): Try to improve the logic as to what exactly is displayed. The `/.' idea was snarfed from the standard `insert-directory'. 2000-09-01 Kai Großjohann * tramp.el (tramp-file-name-structure): Move `-' to beginning of [...]. Is this really necessary? Well, it won't hurt. 2000-08-31 Hilko Bengen * tramp.el (tramp-file-name-structure): Allow `-' in user names. 2000-08-29 Kai Großjohann * Makefile (tramp.elc): Wrap long line. (tramp-vc.elc): Frob load-path for byte-compilation because of required libraries. * tramp-vc.el: Move `provide' to end of file. Require some needed libraries to avoid byte-compiler errors. * tramp.el (tramp-handle-file-name-all-completions): Expand DIRECTORY so that this also works with abbreviated file names. (tramp-handle-file-newer-than-file-p): Bug with `signal'. (tramp-handle-make-symbolic-link): Check that method, user, and host are the same when making symlinks. (tramp-bug): Report on more variables, change intro msg. 2000-08-25 Yuji Yamano * tramp.el (tramp-perl-file-attributes): Use 0170000 as the right value of Bitwise And instead of 0120000 and 040000. It works fine with block devices and sockets now. 2000-08-25 Yuji Yamano * tramp.el (tramp-remote-path): Add "/usr/pkg/bin" to tramp-remote-path for the NetBSD packages. 2000-08-19 Kai Großjohann * tramp.el (tramp-multi-connect-su): Defer (erase-buffer) until after the buffer contents are used. 2000-08-18 Paul D. Smith * tramp.el (tramp-pre-connection): Locally (to the connection buffer) set inhibit-eol-conversion to nil. 2000-08-18 KOIE Hidetaka * tramp.el (tramp-handle-insert-file-contents): Don't use `no-conversion' coding system on the local copy. 2000-08-18 Kai Großjohann * tramp.el (tramp-handle-file-exists-p): Use `test -e', not `ls -d'. (tramp-open-connection-setup-interactive-shell) (tramp-open-connection-telnet) (tramp-open-connection-rsh) (tramp-open-connection-su) (tramp-open-connection-multi) (tramp-multi-connect-telnet) (tramp-multi-connect-telnet) (tramp-multi-connect-rlogin) (tramp-multi-connect-su): Erase buffer before sending next command. (tramp-handle-make-directory): Correct order of arguments for tramp-barf-unless-okay. Maybe I should be using keyword arguments in this case... (tramp-handle-insert-directory): Make it work with wildcards, too. ;; Local Variables: ;; coding: utf-8 ;; add-log-time-zone-rule: t ;; End: