summaryrefslogtreecommitdiff
path: root/Completion/User/_archie
diff options
context:
space:
mode:
Diffstat (limited to 'Completion/User/_archie')
-rw-r--r--Completion/User/_archie30
1 files changed, 30 insertions, 0 deletions
diff --git a/Completion/User/_archie b/Completion/User/_archie
new file mode 100644
index 000000000..92551156e
--- /dev/null
+++ b/Completion/User/_archie
@@ -0,0 +1,30 @@
+#compdef archie
+
+local state line
+typeset -A opt_args
+
+_arguments -s \
+ '-D[debug level]' \
+ '-v[print version]' \
+ '-V[verbose mode]' \
+ '-O[specifies offset]:offset:' \
+ '-a[list matches as Alex filenames]' \
+ '-c[case sensitive substring search]' \
+ '-e[exact string match (default)]' \
+ '-r[regular expression search]' \
+ '-s[case insensitive substring search]' \
+ '-l[list one match per line]' \
+ '-t[sort inverted by date]' \
+ '-m[specifies maximum number of hits to return (default 95)]:hits to return:' \
+ '-o[specifies file to store results in]:file to store:' \
+ '-h[specifies server host]:server host:->serverhost' \
+ '-L[list known servers and current default]' \
+ '-N-[specifies query niceness level (0-35765)]:niceness level:' \
+ ':string:'
+
+case "$state" in
+serverhost)
+ : ${(A)archie_servers:=${(M)$(archie -L):#archie.*}}
+ compadd $archie_servers
+ ;;
+esac