diff options
| author | Michael Albinus | 2009-06-22 21:39:28 +0000 |
|---|---|---|
| committer | Michael Albinus | 2009-06-22 21:39:28 +0000 |
| commit | c0de5d043e61e0f5af204229649b3ec09abcb97e (patch) | |
| tree | 8ddf5139aa133e4121f05fd86b6a6159636ffc88 | |
| parent | e3610693bc678479a056dcbcc4afcc20902a57df (diff) | |
| download | emacs-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.texi | 104 |
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 |
| 465 | Support of gateways exists since April 2007. | 465 | Support of gateways exists since April 2007. |
| 466 | @end ifset | 466 | @end ifset |
| 467 | @ifset emacsgvfs | ||
| 468 | GVFS integration started in February 2009. | ||
| 469 | @end ifset | ||
| 467 | 470 | ||
| 468 | In December 2001, @value{tramp} has been added to the XEmacs package | 471 | In December 2001, @value{tramp} has been added to the XEmacs package |
| 469 | repository. Being part of the GNU Emacs repository happened in June | 472 | repository. Being part of the GNU Emacs repository happened in June |
| @@ -854,11 +857,11 @@ identical to the @option{scp} method. | |||
| 854 | 857 | ||
| 855 | While @command{rsync} performs much better than @command{scp} when | 858 | While @command{rsync} performs much better than @command{scp} when |
| 856 | transferring files that exist on both hosts, this advantage is lost if | 859 | transferring files that exist on both hosts, this advantage is lost if |
| 857 | the file exists only on one side of the connection. | 860 | the file exists only on one side of the connection. A file can exists |
| 858 | 861 | on both the remote and local host, when you copy a file from/to a | |
| 859 | The @command{rsync} based method may be considerably faster than the | 862 | remote 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 | 863 | a file there), this is not the case, because on the local side |
| 861 | files to the local machine is no faster than with a direct copy. | 864 | temporary files are used. |
| 862 | 865 | ||
| 863 | This method supports the @samp{-p} hack. | 866 | This method supports the @samp{-p} hack. |
| 864 | 867 | ||
| @@ -1025,8 +1028,45 @@ file names like @file{//melancholia/daniel$$/.emacs}. The only | |||
| 1025 | disadvantage is that there's no possibility to specify another user | 1028 | disadvantage is that there's no possibility to specify another user |
| 1026 | name. | 1029 | name. |
| 1027 | 1030 | ||
| 1031 | @ifset emacsgvfs | ||
| 1032 | @item @option{dav} | ||
| 1033 | @cindex method dav | ||
| 1034 | @cindex dav method | ||
| 1035 | |||
| 1036 | This method provides access to WebDAV files and directories. It is | ||
| 1037 | available on systems only which run GVFS | ||
| 1038 | @uref{http://en.wikipedia.org/wiki/GVFS}. Via GVFS, the remote | ||
| 1039 | filesystem is mounted locally through FUSE. @value{tramp} uses | ||
| 1040 | internally this local mounted directory. | ||
| 1041 | |||
| 1042 | The communication with GVFS is implemented via D-Bus messages. | ||
| 1043 | Therefore, your @value{emacsname} must have D-Bus integration. | ||
| 1044 | |||
| 1045 | There exists also the external method @option{davs}, which uses SSL | ||
| 1046 | encryption for the access. | ||
| 1047 | |||
| 1048 | Both methods support the port number specification as discussed above. | ||
| 1049 | |||
| 1050 | @item @option{obex} | ||
| 1051 | @cindex method obex | ||
| 1052 | @cindex obex method | ||
| 1053 | |||
| 1054 | OBEX is an FTP-like access protocol for simple devices, like cell | ||
| 1055 | phones. Like @option{dav} and @option{davs}, it uses GVFS for | ||
| 1056 | mounting 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 | ||
| 1063 | This customer option, a list, defines the external methods, which | ||
| 1064 | shall 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 | |||
| 1346 | has been reached so far. @code{sudo -u root}, applied on your local | 1386 | has been reached so far. @code{sudo -u root}, applied on your local |
| 1347 | host, wouldn't be useful here. | 1387 | host, wouldn't be useful here. |
| 1348 | 1388 | ||
| 1389 | @var{host}, @var{user} and @var{proxy} can also be Lisp forms. These | ||
| 1390 | forms are evaluated, and must return a string, or @code{nil}. The | ||
| 1391 | previous example could be generalized then: For all hosts except my | ||
| 1392 | local one connect via @code{ssh} first, and apply @code{sudo -u root} | ||
| 1393 | afterwards: | ||
| 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 | |||
| 1349 | This is the recommended configuration to work as @samp{root} on remote | 1402 | This is the recommended configuration to work as @samp{root} on remote |
| 1350 | Ubuntu hosts. | 1403 | Ubuntu hosts. |
| 1351 | 1404 | ||
| @@ -1640,6 +1693,9 @@ available, they are used to improve the performance and accuracy of | |||
| 1640 | remote file access. | 1693 | remote 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 | ||
| 1643 | When @value{tramp} connects to the remote machine, it searches for the | 1699 | When @value{tramp} connects to the remote machine, it searches for the |
| 1644 | programs that it can use. The variable @code{tramp-remote-path} | 1700 | programs that it can use. The variable @code{tramp-remote-path} |
| 1645 | controls the directories searched on the remote machine. | 1701 | controls 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 | ||
| 1730 | Another possibility is to reuse the path settings of your remote | ||
| 1731 | account, when you log in. Usually, these settings are overwritten, | ||
| 1732 | because they might not be useful for @value{tramp}. The place holder | ||
| 1733 | @code{tramp-own-remote-path} preserves these settings. You can | ||
| 1734 | activate 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 |
| 1675 | location. The changed remote search path wouldn't affect these | 1742 | location. The changed remote search path wouldn't affect these |
| 1676 | settings. In order to force @value{tramp} to recompute these values, | 1743 | settings. 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 | |||
| 2379 | integrate them as well. @xref{Bug Reports}. | 2446 | integrate them as well. @xref{Bug Reports}. |
| 2380 | 2447 | ||
| 2381 | 2448 | ||
| 2449 | @subsection Running remote programs that create local X11 windows | ||
| 2450 | |||
| 2451 | If you want to run a remote program, which shall connect the X11 | ||
| 2452 | server 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 | ||
| 2462 | name, which can be interpreted on the remote host; otherwise you might | ||
| 2463 | use a fixed host name. Strings like @code{:0} cannot be used properly | ||
| 2464 | on the remote host. | ||
| 2465 | |||
| 2466 | Another trick might be that you put @code{ForwardX11 yes} or | ||
| 2467 | @code{ForwardX11Trusted yes} to your @file{~/.ssh/config} file for | ||
| 2468 | that 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 | |||
| 2598 | disabling VC. This can be achieved by | 2687 | disabling 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 | ||
| 2604 | Disable excessive traces. The default trace level of @value{tramp}, | 2696 | Disable excessive traces. The default trace level of @value{tramp}, |