about summary refs log tree commit diff
path: root/Completion/Unix/Command/_mail
diff options
context:
space:
mode:
Diffstat (limited to 'Completion/Unix/Command/_mail')
-rw-r--r--Completion/Unix/Command/_mail21
1 files changed, 3 insertions, 18 deletions
diff --git a/Completion/Unix/Command/_mail b/Completion/Unix/Command/_mail
index 82a3a59d0..90c75359d 100644
--- a/Completion/Unix/Command/_mail
+++ b/Completion/Unix/Command/_mail
@@ -1,24 +1,9 @@
-#compdef mail mailx Mail mush zmail nail
+#compdef mail mailx=mail Mail=mail mush zmail nail=mail
 
-local curcontext="$curcontext" state line expl suf
-
-_arguments -C -s \
+_arguments -s \
   '(-f -u)*-b[specify a BCC recipient]:BCC recipient:->userhost' \
   '(-f -u)*-c[specify a CC recipient]:CC recipient:->userhost' \
   '(-b -c -u -s *)-f+[specify mail folder]:mailbox:_mailboxes' \
   '(-f -u)-s+[specify a subject]:subject:' \
   "(-b -c -f -s *)-u+[read specified user's mail]:user:_users" \
-  '(-f -u)*:recipient:->userhost' && return 0
-
-if [[ "$state" = userhost ]]; then
-  if compset -P '*@'; then
-    _description hosts expl 'remote host name'
-    _hosts "$expl[@]" && return 0
-  else
-    compset -S '@*' || suf='@'
-    _description users expl 'login name'
-    _users "$expl[@]" -q -S "$suf" && return 0
-  fi
-fi
-
-return 1
+  "(-f -u)*:recipient:_email_addresses -n $service"