summaryrefslogtreecommitdiff
path: root/Completion/Unix/Command/_sysctl
diff options
context:
space:
mode:
authorOliver Kiddle <opk@zsh.org>2016-07-17 12:37:29 +0200
committerOliver Kiddle <opk@zsh.org>2016-07-17 12:37:29 +0200
commit9991707b6bbdfe8940b2098128d85f61a966d758 (patch)
tree7e841073d3546ef999affafdda26fa210ea9a91f /Completion/Unix/Command/_sysctl
parent52f46cca751cc40db978b88dd6379866cad30b15 (diff)
downloadzsh-9991707b6bbdfe8940b2098128d85f61a966d758.tar.gz
zsh-9991707b6bbdfe8940b2098128d85f61a966d758.zip
38868: update completions for new options on FreeBSD
Diffstat (limited to 'Completion/Unix/Command/_sysctl')
-rw-r--r--Completion/Unix/Command/_sysctl22
1 files changed, 20 insertions, 2 deletions
diff --git a/Completion/Unix/Command/_sysctl b/Completion/Unix/Command/_sysctl
index 9d9e8b968..cf88c3dc1 100644
--- a/Completion/Unix/Command/_sysctl
+++ b/Completion/Unix/Command/_sysctl
@@ -1,21 +1,39 @@
#compdef sysctl
+local -a args
+
case $OSTYPE in
+ freebsd<10->.*)
+ args+=(
+ '-f+[specify file of name/value pairs to process first]:file:_files'
+ '-T[display only variables that are setable via loader]'
+ '-W[display only writable variables that are not statistical]'
+ )
+ ;|
+ dragonfly*|freebsd<8->.*)
+ args+=( "-i[silently exit if variable doesn't exist]" )
+ ;|
*freebsd<5->.*|freebsd4.[4-9]*)
local -a sysctlvars
sysctlvars=( $(_call_program sysctl-variables sysctl -aN) )
- _arguments -s -A "-*" \
+ _arguments -s -S -A "-*" $args \
+ '(-a -o *)-A[equivalent to -o -a (for compatibility)]' \
'(*)-a[list all]' \
'-b[binary output]' \
+ '-d[print the description of the variable instead of its value]' \
+ '(-N -n)-e[separate name and value with =]' \
+ '-h[format output for human readability]' \
'(-n)-N[show only variable names]' \
'(-N)-n[show only variable values]' \
'(-x)-o[show opaques as well (values suppressed)]' \
+ '-q[suppress some warnings]' \
+ '(* -o)-X[equivalent to -x -a (for compatibility)]' \
'(-o)-x[show opaques as well (entire values)]' \
'(-a)*:sysctl variable:_multi_parts -i . sysctlvars'
;;
freebsd[0-4].*|darwin*|dragonfly*)
: ${(A)_cache_sysctlvars:=${${$(sysctl -A 2>/dev/null):#[^a-z]*}%%:*}}
- _arguments -s -A "-*" \
+ _arguments -s -A "-*" $args \
'(-w -X *)-a[list all]' \
'(-w -X *)-A[show all opaques (values suppressed)]' \
'(-w)-b[binary output]' \