blob: 8853b0bee1dd64de7ebb8faf07c4ec0f15e11cd9 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
|
#compdef nvram
local ret=1
local -a context line state state_descr tmp
local -A opt_args val_args
# Note: -x can only be used with -f/-p, but must be used first to have effect
_arguments -s : \
'(: -)-c[delete all NVRAM variables]' \
'(: -)-d[delete specified NVRAM variable]: :->variables-ro' \
'(: -)-f[set NVRAM variables from file]: :_files' \
'(: -)-p[print all NVRAM variables]' \
'(-c -d)-x[use XML format for input and output]' \
'(-)*: :->variables-rw' \
&& ret=0
[[ $state == variables-* ]] && {
tmp=( ${${(f)"$( _call_program variables $words[1] -p )"}%%[[:space:]]*} )
[[ $state == variables-rw ]] &&
tmp=( ${^tmp}'::NVRAM variable value' )
if (( $#tmp )); then
_values -w 'NVRAM variable' $tmp && ret=0
else
_message 'NVRAM variable' && ret=0
fi
}
return ret
|