about summary refs log tree commit diff
path: root/Completion/Unix
diff options
context:
space:
mode:
Diffstat (limited to 'Completion/Unix')
-rw-r--r--Completion/Unix/Command/_cowsay28
1 files changed, 28 insertions, 0 deletions
diff --git a/Completion/Unix/Command/_cowsay b/Completion/Unix/Command/_cowsay
new file mode 100644
index 000000000..19e73811c
--- /dev/null
+++ b/Completion/Unix/Command/_cowsay
@@ -0,0 +1,28 @@
+#compdef cowsay cowthink
+
+local context state line
+typeset -A opt_args
+
+_arguments \
+  '-e:eye string:' \
+  '-f:cowfile:->cowfile' \
+  '-T:tongue string:' \
+  '-W:wrap column:' \
+  '-b[borg mode]' \
+  '-d[dead mode]' \
+  '-g[greedy mode]' \
+  '-h[help]' \
+  '-l[list]' \
+  '-n[no wordwrap]' \
+  '-p[paranoia mode]' \
+  '-s[stoned mode]' \
+  '-t[tired mode]' \
+  '-w[wired mode]' \
+  '-y[youthful mode]' \
+  ':message:' && return 0
+
+case "$state" in
+  (cowfile)
+  compadd ${=${(f)"$($service -l 2>/dev/null)"}:#*\:} || _files
+  ;;
+esac