blob: e1a4b69db6c7c9a1f34bee6d2bd03d3c4f27940f (
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
31
32
33
34
35
36
37
38
|
#compdef scl
local curcontext="$curcontext" dashes ret=1
local -a state line force alts cmd
[[ $words[2] = deregister ]] &&
force=( '--force[deregister even SCL installed as packages]' )
_arguments -C $force \
'(- 1)'{-l,--list}'[list installed software collections or packages within a collection]' \
'(-l --list)1:action:(enable register deregister)' \
'(-)*:collections:->collections' && ret=0
if [[ -n $state ]]; then
(( $#line > 1 )) && curcontext="${curcontext%:*}-$line[1]:"
if [[ $line[1] = register ]]; then
_directories -P / -W /
return
fi
if (( ${dashes:=$words[(I)--]} )); then
shift dashes words
(( CURRENT -= dashes ))
_normal
return
fi
if [[ $CURRENT -gt 3 && $words[CURRENT] = - ]]; then
compadd - --
return
fi
[[ $line[1] = enable && $CURRENT -gt 3 ]] &&
cmd='command:command:_cmdstring'
_alternative 'collections:collection:compadd
$(_call_program collections ${words[1]} -l)' \
$cmd && ret=0
fi
return ret
|