about summary refs log tree commit diff
path: root/Completion/User/_rlogin
diff options
context:
space:
mode:
Diffstat (limited to 'Completion/User/_rlogin')
-rw-r--r--Completion/User/_rlogin12
1 files changed, 9 insertions, 3 deletions
diff --git a/Completion/User/_rlogin b/Completion/User/_rlogin
index 36ee7ffe8..03af65382 100644
--- a/Completion/User/_rlogin
+++ b/Completion/User/_rlogin
@@ -1,9 +1,15 @@
 #compdef rlogin rsh ssh
 
-if [[ CURRENT -eq 2 ]]; then
-  _hosts
+if [[ CURRENT -eq 2 ]];
+  if compset -P 1 '*@'; then
+   _hosts
+  else
+    local nm=${compstate[nmatches]}
+    _hosts
+    [[ nm -eq compstate[nmatches] ]] && compgen -S @ -u
+  fi
 elif [[ CURRENT -eq 3 ]]; then
   compadd - -l
 else
-  compgen -u
+  compgen -S @ -u
 fi