summaryrefslogtreecommitdiff
path: root/Completion/AIX/Command
diff options
context:
space:
mode:
Diffstat (limited to 'Completion/AIX/Command')
-rw-r--r--Completion/AIX/Command/_lsdev38
1 files changed, 38 insertions, 0 deletions
diff --git a/Completion/AIX/Command/_lsdev b/Completion/AIX/Command/_lsdev
new file mode 100644
index 000000000..1bb1a8802
--- /dev/null
+++ b/Completion/AIX/Command/_lsdev
@@ -0,0 +1,38 @@
+#compdef lsdev
+
+local curcontext="${curcontext}" state line expl
+
+_arguments -C \
+ '(-P)-C[list info about device in customized devices object class]' \
+ '(-C -l)-P[list info about device in predefined object class]' \
+ '-c[specify a device class]:device class:->class' \
+ '-f[read flags from file]:files:_files' \
+ '-F[specify output format]:format:->columnname' \
+ '-H[display headers above columns]' \
+ '-h[display command usage]' \
+ '(-P)-l[specify device logical name]:device logical name' \
+ '-r[display set of values in a column]:columnname:->columnname' \
+ '(-P)-S[specify a device state]:device state:(Available Defined Stopped)' \
+ '-s[specify a device subclass]:device subclass:->subclass' \
+ '-t[specify a device type name]:device type name:->devtype' && return 0
+
+case $state in
+ class)
+ _wanted devclass expl 'device class names' \
+ compadd - $(lsdev ${words[(r)-[CP]]:--P} -r class)
+ ;;
+ subclass)
+ _wanted devsubclass expl 'device subclass names' \
+ compadd - $(lsdev ${words[(r)-[CP]]:--P} -r subclass)
+ ;;
+ devtype)
+ _wanted devtype expl 'device type names' \
+ compadd - $(lsdev ${words[(r)-[CP]]:--P} -r type)
+ ;;
+ columnname)
+ [[ $words[CURRENT-1] = -F ]] && compset -P '*[^a-zA-Z]'
+ _wanted devcolumnname expl 'column names' \
+ compadd - ${(s: :)words[(r)-C]:+name status location} \
+ class subclass description type
+ ;;
+esac