Zsh Mailing List Archive
Messages sorted by: Reverse Date, Date, Thread, Author

trivial patch to _rlogin to make rcp complete more like scp

If you say 

scp file hostTAB

where host is something that unambiguously completes to a host, scp
adds a colon to the end of the host.  If you then hit space, the colon

If you do the same with rcp, the colon disappears after a space.  The
same thing goes with user@.

I think that keeping the colon is the Right Thing (TM) since it
actually means something.  I often do scp file host: just to copy the
file to my top level home directory.  I do the same thing with rcp but
I have to retype the : to keep it from vanishing.

I'm not convinced that this is the right behavior with the @.  In any
case, this patch takes the -q's off of the _alternative call to
prevent this behavior in _rlogin for rcp.  I went ahead and did it for
the @ case as well so that rcp would be consistent with scp, but it
would also have been reasonable to change _scp to add the -q for the @

The only way I could figure this out was to do a careful comparison
between the _rlogin and _ssh code.  The -q flag to _alternative seems
to be either missing from the documentation or very well hidden.

This patch is relative to the current CVS....

I think I may end too many sentences with strings of four dots....



--- _rlogin.qdist	Sat Nov 18 10:05:13 2000
+++ _rlogin	Sat Nov 18 10:25:02 2000
@@ -40,12 +40,12 @@
       if compset -P '*:'; then
 	_files && ret=0
       elif compset -P '*@'; then
-        _wanted hosts expl host _rlogin_hosts -S: -q && ret=0
+        _wanted hosts expl host _rlogin_hosts -S: && ret=0
         _alternative \
 	    'files:: _files' \
-	    'hosts:: _rlogin_all_hosts -qS:' \
-	    'users:: _rlogin_users -qS@' && ret=0
+	    'hosts:: _rlogin_all_hosts -S:' \
+	    'users:: _rlogin_users -S@' && ret=0
     return ret

Messages sorted by: Reverse Date, Date, Thread, Author