emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Emacs-diffs] /srv/bzr/emacs/emacs-24 r108556: Sync with Tramp 2.2.6-pre


From: Michael Albinus
Subject: [Emacs-diffs] /srv/bzr/emacs/emacs-24 r108556: Sync with Tramp 2.2.6-pre.
Date: Fri, 02 Nov 2012 01:59:12 -0000
User-agent: Bazaar (2.5.0)

------------------------------------------------------------
revno: 108556
committer: Michael Albinus <address@hidden>
branch nick: trunk
timestamp: Mon 2012-06-11 15:03:39 +0200
message:
  Sync with Tramp 2.2.6-pre.
  
  * tramp.texi (all): Use consequently @command{}, @env{} and @kbd{}
  where appropriate.
  (Ad-hoc multi-hops): New section.
  (Remote processes): New subsection "Running remote processes on
  Windows hosts".
  (History): Add remote commands on Windows, and ad-hoc multi-hop methods.
  (External methods): "ControlPersist" must be set to "no" for the
  `scpc' method.
  (Remote processes): Add a note about `auto-revert-tail-mode'.
  (Frequently Asked Questions): Use "scpx" in combination with
  "ControlPersist".  Reported by Adam Spiers <address@hidden>.
  
  * trampver.texi: Update release number.
modified:
  doc/misc/ChangeLog
  doc/misc/tramp.texi
  doc/misc/trampver.texi
=== modified file 'doc/misc/ChangeLog'
--- a/doc/misc/ChangeLog        2012-06-10 13:20:58 +0000
+++ b/doc/misc/ChangeLog        2012-06-11 13:03:39 +0000
@@ -1,3 +1,22 @@
+2012-06-11  Michael Albinus  <address@hidden>
+
+       Sync with Tramp 2.2.6-pre.
+
+       * tramp.texi (all): Use consequently @command{}, @env{} and @kbd{}
+       where appropriate.
+       (Ad-hoc multi-hops): New section.
+       (Remote processes): New subsection "Running remote processes on
+       Windows hosts".
+       (History): Add remote commands on Windows, and ad-hoc multi-hop
+       methods.
+       (External methods): "ControlPersist" must be set to "no" for the
+       `scpc' method.
+       (Remote processes): Add a note about `auto-revert-tail-mode'.
+       (Frequently Asked Questions): Use "scpx" in combination with
+       "ControlPersist".  Reported by Adam Spiers <address@hidden>.
+
+       * trampver.texi: Update release number.
+
 2012-06-10  Chong Yidong  <address@hidden>
 
        * sc.texi: Remove bogus @ifinfo commands which prevent makeinfo

=== modified file 'doc/misc/tramp.texi'
--- a/doc/misc/tramp.texi       2012-01-20 20:12:38 +0000
+++ b/doc/misc/tramp.texi       2012-06-11 13:03:39 +0000
@@ -197,6 +197,7 @@
 * Filename Syntax::             @value{tramp} filename conventions.
 * Alternative Syntax::          URL-like filename syntax.
 * Filename completion::         Filename completion.
+* Ad-hoc multi-hops::           Declaring multiple hops in the file name.
 * Remote processes::            Integration with other @value{emacsname} 
packages.
 * Cleanup remote connections::  Cleanup remote connections.
 
@@ -442,6 +443,11 @@
 @ifset emacsgvfs
 GVFS integration started in February 2009.
 @end ifset
address@hidden emacs
+Remote commands on Windows hosts are available since September 2011.
address@hidden ifset
+Ad-hoc multi-hop methods (with a changed syntax) have been reenabled
+in November 2011.
 
 In December 2001, @value{tramp} has been added to the XEmacs package
 repository.  Being part of the Emacs repository happened in June 2002,
@@ -510,7 +516,7 @@
 
 
 @node Connection types
address@hidden Types of connections made to remote machines.
address@hidden Types of connections made to remote machines
 @cindex connection types, overview
 
 There are two basic types of transfer methods, each with its own
@@ -880,7 +886,9 @@
 command-line: line 0: Bad configuration option: ControlMaster
 @end example
 
-then you cannot use it.
+then you cannot use it.  Note, that the option
address@hidden, if it is supported by your @option{ssh}
+version, must be set to @option{no}.
 
 This method supports the @samp{-p} argument.
 
@@ -976,8 +984,8 @@
 @command{smbclient} command on different Unices in order to connect to
 an SMB server.  An SMB server might be a Samba (or CIFS) server on
 another UNIX host or, more interesting, a host running MS Windows.  So
-far, it is tested against MS Windows NT, MS Windows 2000, and MS
-Windows XP.
+far, it is tested against MS Windows NT, MS Windows 2000, MS Windows
+XP, MS Windows Vista, and MS Windows 7.
 
 The first directory in the localname must be a share name on the remote
 host.  Remember that the @code{$} character, in which default shares
@@ -1259,8 +1267,8 @@
 
 One trap to fall in must be known.  If @value{tramp} finds a default
 user, this user will be passed always to the connection command as
-parameter (for example @samp{ssh here.somewhere.else -l john}.  If you
-have specified another user for your command in its configuration
+parameter (for example @command{ssh here.somewhere.else -l john}.  If
+you have specified another user for your command in its configuration
 files, @value{tramp} cannot know it, and the remote access will fail.
 If you have specified in the given example in @file{~/.ssh/config} the
 lines
@@ -1398,8 +1406,8 @@
 @var{host}, @var{user} and @var{proxy} can also be Lisp forms.  These
 forms are evaluated, and must return a string, or @code{nil}.  The
 previous example could be generalized then: For all hosts except my
-local one connect via @code{ssh} first, and apply @code{sudo -u root}
-afterwards:
+local one connect via @command{ssh} first, and apply @command{sudo -u
+root} afterwards:
 
 @lisp
 (add-to-list 'tramp-default-proxies-alist
@@ -1571,7 +1579,7 @@
 
 
 @node Password handling
address@hidden Reusing passwords for several connections.
address@hidden Reusing passwords for several connections
 @cindex passwords
 
 Sometimes it is necessary to connect to the same remote host several
@@ -1645,7 +1653,7 @@
 
 
 @node Connection caching
address@hidden Reusing connection related information.
address@hidden Reusing connection related information
 @cindex caching
 
 @vindex tramp-persistency-file-name
@@ -1690,7 +1698,7 @@
 
 
 @node Remote Programs
address@hidden How @value{tramp} finds and uses programs on the remote machine.
address@hidden How @value{tramp} finds and uses programs on the remote machine
 
 @value{tramp} depends on a number of programs on the remote host in order to
 function, including @command{ls}, @command{test}, @command{find} and
@@ -1867,7 +1875,7 @@
 @value{tramp} does not know how to answer these questions.  There are
 two approaches for dealing with this problem.  One approach is to take
 care that the shell does not ask any questions when invoked from
address@hidden  You can do this by checking the @code{TERM}
address@hidden  You can do this by checking the @env{TERM}
 environment variable, it will be set to @code{dumb} when connecting.
 
 @vindex tramp-terminal-type
@@ -1898,9 +1906,9 @@
 
 @item Environment variables named like users in @file{.profile}
 
-If you have a user named frumple and set the variable @code{FRUMPLE} in
+If you have a user named frumple and set the variable @env{FRUMPLE} in
 your shell environment, then this might cause trouble.  Maybe rename
-the variable to @code{FRUMPLE_DIR} or the like.
+the variable to @env{FRUMPLE_DIR} or the like.
 
 This weird effect was actually reported by a @value{tramp} user!
 
@@ -1925,7 +1933,7 @@
 this line.
 
 Another example is the tilde (@code{~}) character, say when adding
address@hidden/bin} to @code{PATH}.  Many Bourne shells will not expand this
address@hidden/bin} to @env{PATH}.  Many Bourne shells will not expand this
 character, and since there is usually no directory whose name consists
 of the single character tilde, strange things will happen.
 
@@ -1960,10 +1968,10 @@
 shell}, this doesn't look nice.
 
 You can redefine the shell prompt by checking the environment variable
address@hidden, which is set by @value{tramp}, in your startup
-script @file{~/.emacs_SHELLNAME}. @code{SHELLNAME} might be the string
address@hidden, which is set by @value{tramp}, in your startup
+script @file{~/.emacs_SHELLNAME}. @env{SHELLNAME} might be the string
 @code{bash} or similar, in case of doubt you could set it the
-environment variable @code{ESHELL} in your @file{.emacs}:
+environment variable @env{ESHELL} in your @file{.emacs}:
 
 @lisp
 (setenv "ESHELL" "bash")
@@ -2177,7 +2185,7 @@
 you might encounter problems with @command{ssh-agent}.  Using this
 program, you can avoid typing the pass-phrase every time you log in.
 However, if you start @value{emacsname} from a desktop shortcut, then
-the environment variable @code{SSH_AUTH_SOCK} is not set and so
+the environment variable @env{SSH_AUTH_SOCK} is not set and so
 @value{emacsname} and thus @value{tramp} and thus @command{ssh} and
 @command{scp} started from @value{tramp} cannot communicate with
 @command{ssh-agent}.  It works better to start @value{emacsname} from
@@ -2215,6 +2223,7 @@
 * Filename Syntax::             @value{tramp} filename conventions.
 * Alternative Syntax::          URL-like filename syntax.
 * Filename completion::         Filename completion.
+* Ad-hoc multi-hops::           Declaring multiple hops in the file name.
 * Remote processes::            Integration with other @value{emacsname} 
packages.
 * Cleanup remote connections::  Cleanup remote connections.
 @end menu
@@ -2455,16 +2464,56 @@
 @end defopt
 
 
address@hidden Ad-hoc multi-hops
address@hidden Declaring multiple hops in the file name
address@hidden multi-hop, ad-hoc
address@hidden proxy hosts, ad-hoc
+
+Multiple hops are configured with the variable
address@hidden (@pxref{Multi-hops}).  However,
+sometimes it is desirable to reach a remote host immediately, without
+configuration changes.  This can be reached by an ad-hoc specification
+of the proxies.
+
+A proxy looks like a remote file name specification without the local
+file name part.  It is prepended to the target remote file name,
+separated by @samp{|}.  As an example, a remote file on
address@hidden@@remotehost}, passing the proxy @samp{bird@@bastion}, could
+be opened by
+
address@hidden
address@hidden @kbd{C-x C-f @address@hidden@@bastion|ssh, you,
address@hidden remotehost, /path}}
address@hidden C-f @address@hidden@@bastion|address@hidden@@address@hidden/path}
address@hidden example
+
+Multiple hops can be cascaded, separating all proxies by @samp{|}.
+The proxies can also contain the patterns @code{%h} or @code{%u}.
+
+The ad-hoc definition is added on the fly to
address@hidden  Therefore, during the lifetime of
+the @value{emacsname} session it is not necessary to enter this ad-hoc
+specification, again.  The remote file name @address@hidden, you,
+remotehost, /path}} would be sufficient from now on.
+
address@hidden tramp-save-ad-hoc-proxies
address@hidden tramp-save-ad-hoc-proxies
+This customer option controls whether ad-hoc definitions are kept
+persistently in @code{tramp-default-proxies-alist}.  That means, those
+definitions are available also for future @value{emacsname} sessions.
address@hidden defopt
+
+
 @node Remote processes
address@hidden Integration with other @value{emacsname} packages.
address@hidden Integration with other @value{emacsname} packages
 @cindex compile
 @cindex recompile
 
 @value{tramp} supports running processes on a remote host.  This
 allows to exploit @value{emacsname} packages without modification for
-remote file names.  It does not work for the @option{ftp} and
address@hidden methods.  Association of a pty, as specified in
address@hidden, is not supported.
+remote file names.  It does not work for the @option{ftp} method.
+Association of a pty, as specified in @code{start-file-process}, is
+not supported.
 
 @code{process-file} and @code{start-file-process} work on the remote
 host when the variable @code{default-directory} is remote:
@@ -2503,9 +2552,9 @@
 The environment for your program can be adapted by customizing
 @code{tramp-remote-process-environment}.  This variable is a list of
 strings.  It is structured like @code{process-environment}.  Each
-element is a string of the form ENVVARNAME=VALUE.  An entry
-ENVVARNAME= disables the corresponding environment variable, which
-might have been set in your init file like @file{~/.profile}.
+element is a string of the form @code{"ENVVARNAME=VALUE"}.  An entry
address@hidden"ENVVARNAME="} disables the corresponding environment variable,
+which might have been set in your init file like @file{~/.profile}.
 
 @noindent
 Adding an entry can be performed via @code{add-to-list}:
@@ -2517,7 +2566,7 @@
 Changing or removing an existing entry is not encouraged.  The default
 values are chosen for proper @value{tramp} work.  Nevertheless, if for
 example a paranoid system administrator disallows changing the
address@hidden environment variable, you can customize
address@hidden environment variable, you can customize
 @code{tramp-remote-process-environment}, or you can apply the
 following code in your @file{.emacs}:
 
@@ -2536,7 +2585,7 @@
 
 If you want to run a remote program, which shall connect the X11
 server you are using with your local host, you can set the
address@hidden environment variable on the remote host:
address@hidden environment variable on the remote host:
 
 @lisp
 (add-to-list 'tramp-remote-process-environment
@@ -2557,7 +2606,7 @@
 @subsection Running @code{shell} on a remote host
 @cindex shell
 
-Calling @code{M-x shell} in a buffer related to a remote host runs the
+Calling @kbd{M-x shell} in a buffer related to a remote host runs the
 local shell as defined in @option{shell-file-name}.  This might be
 also a valid path name for a shell to be applied on the remote host,
 but it will fail at least when your local and remote hosts belong to
@@ -2590,13 +2639,18 @@
 You will see the buffer @file{*Async Shell Command*}, containing the
 continuous output of the @command{tail} command.
 
address@hidden emacs
+A similar behaviour can be reached by @kbd{M-x auto-revert-tail-mode},
+if available.
address@hidden ifset
+
 
 @subsection Running @code{eshell} on a remote host
 @cindex eshell
 
 @value{tramp} is integrated into @file{eshell.el}.  That is, you can
 open an interactive shell on your remote host, and run commands there.
-After you have started @code{M-x eshell}, you could perform commands
+After you have started @kbd{M-x eshell}, you could perform commands
 like this:
 
 @example
@@ -2672,8 +2726,40 @@
 absolute file names, without any remote specification.
 
 
address@hidden Running remote processes on Windows hosts
address@hidden winexe
address@hidden powershell
+
+With the help of the @command{winexe} it is possible tu run processes
+on a remote Windows host.  @value{tramp} has implemented this for
address@hidden and @code{start-file-process}.
+
+The variable @code{tramp-smb-winexe-program} must contain the file
+name of your local @command{winexe} command.  On the remote host,
+Powershell V2.0 must be installed; it is used to run the remote
+process.
+
+In order to open a remote shell on the Windows host via @kbd{M-x
+shell}, you must set the variables @option{explicit-shell-file-name}
+and @option{explicit-*-args}.  If you want, for example, run
address@hidden, you must set:
+
address@hidden
+(setq explicit-shell-file-name "cmd"
+      explicit-cmd-args '("/q"))
address@hidden lisp
+
address@hidden
+In case of running @command{powershell} as remote shell, the settings are
+
address@hidden
+(setq explicit-shell-file-name "powershell"
+      explicit-powershell-args '("-file" "-"))
address@hidden lisp
+
+
 @node Cleanup remote connections
address@hidden Cleanup remote connections.
address@hidden Cleanup remote connections
 @cindex cleanup
 
 Sometimes it is useful to cleanup remote connections.  The following
@@ -2869,7 +2955,7 @@
 
 When the remote machine opens an echoing shell, there might be control
 characters in the welcome message.  @value{tramp} tries to suppress
-such echoes via the @code{stty -echo} command, but sometimes this
+such echoes via the @command{stty -echo} command, but sometimes this
 command is not reached, because the echoed output has confused
 @value{tramp} already.  In such situations it might be helpful to use
 the @option{sshx} or @option{scpx} methods, which allocate a pseudo tty.
@@ -2924,6 +3010,20 @@
 
 
 @item
+How can I use @samp{ControlPersist}?
+
+When @samp{ControlPersist} is set to @samp{yes}, the @option{scpc}
+method does not work.  You can use @option{scpx} instead with the
+following settings in @file{~/.ssh/config}:
+
address@hidden
+Host *
+     ControlMaster  auto
+     ControlPersist yes
address@hidden example
+
+
address@hidden
 File name completion does not work with @value{tramp}
 
 When you log in to the remote machine, do you see the output of
@@ -3385,7 +3485,7 @@
 emacsclient @trampfn{ssh, $(whoami), $(hostname --fqdn), $1}
 @end example
 
-Then you must set the environment variable @code{EDITOR} pointing to
+Then you must set the environment variable @env{EDITOR} pointing to
 that script:
 
 @example
@@ -3477,7 +3577,7 @@
 
 
 @node Localname deconstruction
address@hidden Breaking a localname into its components.
address@hidden Breaking a localname into its components
 
 @value{tramp} file names are somewhat different, obviously, to ordinary file
 names.  As such, the lisp functions @code{file-name-directory} and
@@ -3494,7 +3594,7 @@
 
 @ifset emacs
 @node External packages
address@hidden Integration with external Lisp packages.
address@hidden Integration with external Lisp packages
 @subsection Filename completion.
 
 While reading filenames in the minibuffer, @value{tramp} must decide

=== modified file 'doc/misc/trampver.texi'
--- a/doc/misc/trampver.texi    2012-01-19 07:21:25 +0000
+++ b/doc/misc/trampver.texi    2012-06-11 13:03:39 +0000
@@ -8,7 +8,7 @@
 @c In the Tramp CVS, the version number is auto-frobbed from
 @c configure.ac, so you should edit that file and run
 @c "autoconf && ./configure" to change the version number.
address@hidden trampver 2.2.3-24.1
address@hidden trampver 2.2.6-pre
 
 @c Other flags from configuration
 @set instprefix /usr/local


reply via email to

[Prev in Thread] Current Thread [Next in Thread]