aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMichael Albinus2009-06-22 21:39:28 +0000
committerMichael Albinus2009-06-22 21:39:28 +0000
commitc0de5d043e61e0f5af204229649b3ec09abcb97e (patch)
tree8ddf5139aa133e4121f05fd86b6a6159636ffc88
parente3610693bc678479a056dcbcc4afcc20902a57df (diff)
downloademacs-c0de5d043e61e0f5af204229649b3ec09abcb97e.tar.gz
emacs-c0de5d043e61e0f5af204229649b3ec09abcb97e.zip
* tramp.texi (History): Add GVFS support.
(External methods): Precise `rsync' description. Add `dav', `davs' and `obex' methods. Add 'tramp-gvfs-methods' option. (Multi-hops): Cells of `tramp-default-proxies-alist' can also be Lisp forms. (Remote Programs): Introduce `tramp-own-remote-path'. (Remote processes): New subsection "Running remote programs that create local X11 windows". (Frequently Asked Questions): Improve code for disabling vc.
-rw-r--r--doc/misc/tramp.texi104
1 files changed, 98 insertions, 6 deletions
diff --git a/doc/misc/tramp.texi b/doc/misc/tramp.texi
index 00b5f4ca909..c12a8798993 100644
--- a/doc/misc/tramp.texi
+++ b/doc/misc/tramp.texi
@@ -464,6 +464,9 @@ introduced in December 2005.
464@ifset emacsgw 464@ifset emacsgw
465Support of gateways exists since April 2007. 465Support of gateways exists since April 2007.
466@end ifset 466@end ifset
467@ifset emacsgvfs
468GVFS integration started in February 2009.
469@end ifset
467 470
468In December 2001, @value{tramp} has been added to the XEmacs package 471In December 2001, @value{tramp} has been added to the XEmacs package
469repository. Being part of the GNU Emacs repository happened in June 472repository. Being part of the GNU Emacs repository happened in June
@@ -854,11 +857,11 @@ identical to the @option{scp} method.
854 857
855While @command{rsync} performs much better than @command{scp} when 858While @command{rsync} performs much better than @command{scp} when
856transferring files that exist on both hosts, this advantage is lost if 859transferring files that exist on both hosts, this advantage is lost if
857the file exists only on one side of the connection. 860the file exists only on one side of the connection. A file can exists
858 861on both the remote and local host, when you copy a file from/to a
859The @command{rsync} based method may be considerably faster than the 862remote host. When you just open a file from the remote host (or write
860@command{rcp} based methods when writing to the remote system. Reading 863a file there), this is not the case, because on the local side
861files to the local machine is no faster than with a direct copy. 864temporary files are used.
862 865
863This method supports the @samp{-p} hack. 866This method supports the @samp{-p} hack.
864 867
@@ -1025,8 +1028,45 @@ file names like @file{//melancholia/daniel$$/.emacs}. The only
1025disadvantage is that there's no possibility to specify another user 1028disadvantage is that there's no possibility to specify another user
1026name. 1029name.
1027 1030
1031@ifset emacsgvfs
1032@item @option{dav}
1033@cindex method dav
1034@cindex dav method
1035
1036This method provides access to WebDAV files and directories. It is
1037available on systems only which run GVFS
1038@uref{http://en.wikipedia.org/wiki/GVFS}. Via GVFS, the remote
1039filesystem is mounted locally through FUSE. @value{tramp} uses
1040internally this local mounted directory.
1041
1042The communication with GVFS is implemented via D-Bus messages.
1043Therefore, your @value{emacsname} must have D-Bus integration.
1044
1045There exists also the external method @option{davs}, which uses SSL
1046encryption for the access.
1047
1048Both methods support the port number specification as discussed above.
1049
1050@item @option{obex}
1051@cindex method obex
1052@cindex obex method
1053
1054OBEX is an FTP-like access protocol for simple devices, like cell
1055phones. Like @option{dav} and @option{davs}, it uses GVFS for
1056mounting remote files and directories via FUSE. Until now
1057@value{tramp} supports only OBEX over Bluetooth.
1058@end ifset
1028@end table 1059@end table
1029 1060
1061@ifset emacsgvfs
1062@defopt tramp-gvfs-methods
1063This customer option, a list, defines the external methods, which
1064shall be used with GVFS. Per default, these are @option{dav},
1065@option{davs} and @option{obex}. Other possible values are
1066@option{ftp}, @option{sftp} and @option{smb}.
1067@end defopt
1068@end ifset
1069
1030 1070
1031@ifset emacsgw 1071@ifset emacsgw
1032@node Gateway methods 1072@node Gateway methods
@@ -1346,6 +1386,19 @@ important to know that the given method is applied on the host which
1346has been reached so far. @code{sudo -u root}, applied on your local 1386has been reached so far. @code{sudo -u root}, applied on your local
1347host, wouldn't be useful here. 1387host, wouldn't be useful here.
1348 1388
1389@var{host}, @var{user} and @var{proxy} can also be Lisp forms. These
1390forms are evaluated, and must return a string, or @code{nil}. The
1391previous example could be generalized then: For all hosts except my
1392local one connect via @code{ssh} first, and apply @code{sudo -u root}
1393afterwards:
1394
1395@lisp
1396(add-to-list 'tramp-default-proxies-alist
1397 '(nil "\\`root\\'" "@trampfn{ssh, , %h,}"))
1398(add-to-list 'tramp-default-proxies-alist
1399 '((regexp-quote (system-name)) nil nil))
1400@end lisp
1401
1349This is the recommended configuration to work as @samp{root} on remote 1402This is the recommended configuration to work as @samp{root} on remote
1350Ubuntu hosts. 1403Ubuntu hosts.
1351 1404
@@ -1640,6 +1693,9 @@ available, they are used to improve the performance and accuracy of
1640remote file access. 1693remote file access.
1641 1694
1642@vindex tramp-remote-path 1695@vindex tramp-remote-path
1696@vindex tramp-default-remote-path
1697@vindex tramp-own-remote-path
1698@defopt tramp-remote-path
1643When @value{tramp} connects to the remote machine, it searches for the 1699When @value{tramp} connects to the remote machine, it searches for the
1644programs that it can use. The variable @code{tramp-remote-path} 1700programs that it can use. The variable @code{tramp-remote-path}
1645controls the directories searched on the remote machine. 1701controls the directories searched on the remote machine.
@@ -1671,6 +1727,17 @@ as:
1671(add-to-list 'tramp-remote-path "/usr/local/perl/bin") 1727(add-to-list 'tramp-remote-path "/usr/local/perl/bin")
1672@end lisp 1728@end lisp
1673 1729
1730Another possibility is to reuse the path settings of your remote
1731account, when you log in. Usually, these settings are overwritten,
1732because they might not be useful for @value{tramp}. The place holder
1733@code{tramp-own-remote-path} preserves these settings. You can
1734activate it via
1735
1736@lisp
1737(add-to-list 'tramp-remote-path 'tramp-own-remote-path)
1738@end lisp
1739@end defopt
1740
1674@value{tramp} caches several information, like the Perl binary 1741@value{tramp} caches several information, like the Perl binary
1675location. The changed remote search path wouldn't affect these 1742location. The changed remote search path wouldn't affect these
1676settings. In order to force @value{tramp} to recompute these values, 1743settings. In order to force @value{tramp} to recompute these values,
@@ -2379,6 +2446,28 @@ out-of-the-box on a remote host, please let us know. We will try to
2379integrate them as well. @xref{Bug Reports}. 2446integrate them as well. @xref{Bug Reports}.
2380 2447
2381 2448
2449@subsection Running remote programs that create local X11 windows
2450
2451If you want to run a remote program, which shall connect the X11
2452server you are using with your local host, you can set the
2453@var{$DISPLAY} environment variable on the remote host:
2454
2455@lisp
2456(add-to-list 'tramp-remote-process-environment
2457 (format "DISPLAY=%s" (getenv "DISPLAY")))
2458@end lisp
2459
2460@noindent
2461@code{(getenv "DISPLAY")} shall return a string containing a host
2462name, which can be interpreted on the remote host; otherwise you might
2463use a fixed host name. Strings like @code{:0} cannot be used properly
2464on the remote host.
2465
2466Another trick might be that you put @code{ForwardX11 yes} or
2467@code{ForwardX11Trusted yes} to your @file{~/.ssh/config} file for
2468that host.
2469
2470
2382@subsection Running shell-command on a remote host 2471@subsection Running shell-command on a remote host
2383@cindex shell-command 2472@cindex shell-command
2384 2473
@@ -2598,7 +2687,10 @@ under version control, a lot of check operations can be avoided by
2598disabling VC. This can be achieved by 2687disabling VC. This can be achieved by
2599 2688
2600@lisp 2689@lisp
2601(setq vc-handled-backends nil) 2690(setq vc-ignore-dir-regexp
2691 (format "\\(%s\\)\\|\\(%s\\)"
2692 vc-ignore-dir-regexp
2693 tramp-file-name-regexp))
2602@end lisp 2694@end lisp
2603 2695
2604Disable excessive traces. The default trace level of @value{tramp}, 2696Disable excessive traces. The default trace level of @value{tramp},