blob: 6decb4111d5fac856fcba4b651b312d81183d70f (
plain)
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
|
#
# bash completion support for PackageKit's console commands.
#
# Copyright (C) 2007 James Bowes <jbowes@dangerouslyinc.com>
# Copyright (C) 2010 Richard Hughes <richard@hughsie.com>
#
# Licensed under the GNU General Public License Version 2
#
# 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.
#
# To use the completion:
# 1. Copy this file somewhere (e.g. ~/.pk-completion.sh).
# 2. Add the following line to your .bashrc:
# source ~/.git-completion.sh
__pkcon_commandlist="
accept-eula
get-roles
get-depends
get-details
get-distro-upgrades
get-files
get-filters
get-groups
get-packages
download
get-requires
get-time
get-transactions
get-update-detail
get-updates
get-categories
install
install-local
refresh
remove
repo-disable
repo-enable
repo-list
repo-set-data
resolve
search
update
upgrade-system
repair
"
__pkconcomp ()
{
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
}
_pkcon_search ()
{
local i c=1 command
while [ $c -lt $COMP_CWORD ]; do
i="${COMP_WORDS[c]}"
case "$i" in
name|details|group|file)
command="$i"
break
;;
esac
c=$((++c))
done
if [ $c -eq $COMP_CWORD -a -z "$command" ]; then
__pkconcomp "name details group file"
fi
return
}
_pkcon ()
{
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=() ;;
--*) __pkconcomp "
--version
--filter
--verbose
--help
--nowait
"
;;
-*) __pkconcomp "
-v
-n
-h
-?
--version
--verbose
--help
--filter
--nowait
"
;;
*) __pkconcomp "$__pkcon_commandlist" ;;
esac
return
fi
case "$command" in
search) _pkcon_search ;;
*) COMPREPLY=() ;;
esac
}
complete -o default -o nospace -F _pkcon pkcon
|