This repository has been archived by the owner on Aug 22, 2019. It is now read-only.
/
zif-completion.bash
executable file
·155 lines (147 loc) · 2.99 KB
/
zif-completion.bash
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
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
#
# bash completion support for Zif's console commands.
#
# Copyright (C) 2008 - 2010 James Bowes <jbowes@repl.ca>
# Copyright (C) 2010 Richard Hughes <richard@hughsie.com>
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
# 02110-1301 USA
__zif_commandlist="
clean
check
download
find-package
get-categories
get-depends
get-details
get-files
get-groups
get-packages
get-updates
get-upgrades
get-config-value
dep-conflicts
dep-obsoletes
dep-provides
dep-requires
help
history-import
history-list
history-package
install
local-install
manifest-check
manifest-dump
refresh-cache
remove
repo-disable
repo-enable
repo-list
resolve
search-category
search-details
search-file
search-group
search-name
update
update-details
upgrade
upgrade-distro
upgrade-distro-live
what-conflicts
what-obsoletes
what-provides
db-set
db-get
db-list
db-remove
downgrade
makecache
deplist
info
list
localinstall
repolist
search
provides
resolvedep
deptree
"
__zifcomp ()
{
local all c s=$'\n' IFS=' '$'\t'$'\n'
local cur="${COMP_WORDS[COMP_CWORD]}"
if [ $# -gt 2 ]; then
cur="$3"
fi
for c in $1; do
case "$c$4" in
*.) all="$all$c$4$s" ;;
*) all="$all$c$4 $s" ;;
esac
done
IFS=$s
COMPREPLY=($(compgen -P "$2" -W "$all" -- "$cur"))
return
}
_zif ()
{
local i c=1 command
while [ $c -lt $COMP_CWORD ]; do
i="${COMP_WORDS[c]}"
case "$i" in
--version|--help|--verbose|--nowait|-v|-n|-h|-?) ;;
*) command="$i"; break ;;
esac
c=$((++c))
done
if [ $c -eq $COMP_CWORD -a -z "$command" ]; then
case "${COMP_WORDS[COMP_CWORD]}" in
--*=*) COMPREPLY=() ;;
--*) __zifcomp "
--version
--offline
--verbose
--help
--config
--proxy
--background
--age
--skip-broken
--assume-yes
"
;;
-*) __zifcomp "
-v
-o
-h
-c
-b
-p
-a
-s
-y
-?
"
;;
*) __zifcomp "$__zif_commandlist" ;;
esac
return
fi
case "$command" in
*) COMPREPLY=() ;;
esac
}
complete -o default -o nospace -F _zif zif