summaryrefslogtreecommitdiff
path: root/Completion/Unix/Command/_mail
diff options
context:
space:
mode:
authorOliver Kiddle <opk@users.sourceforge.net>2001-04-13 18:42:13 +0000
committerOliver Kiddle <opk@users.sourceforge.net>2001-04-13 18:42:13 +0000
commitd7417bdc0e500fff5f6890c3ee1f70dff54c3f18 (patch)
treee6ac600aaa0d17e38a2515ee474bb4f92541a94d /Completion/Unix/Command/_mail
parent25b8a1a4b1fe09ab4ee0a12ff94d4162352ef9e1 (diff)
downloadzsh-d7417bdc0e500fff5f6890c3ee1f70dff54c3f18.tar.gz
zsh-d7417bdc0e500fff5f6890c3ee1f70dff54c3f18.zip
add completion for common MUAs and a couple of minor fixes (13982)
Diffstat (limited to 'Completion/Unix/Command/_mail')
-rw-r--r--Completion/Unix/Command/_mail24
1 files changed, 24 insertions, 0 deletions
diff --git a/Completion/Unix/Command/_mail b/Completion/Unix/Command/_mail
new file mode 100644
index 000000000..7194ebac8
--- /dev/null
+++ b/Completion/Unix/Command/_mail
@@ -0,0 +1,24 @@
+#compdef mail mailx Mail mush zmail
+
+local curcontext="$curcontext" state line expl suf
+
+_arguments -C -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