| author | Richard Hughes <richard@hughsie.com> |
| Sun Jun 29 10:55:17 2008 +0100 (2008-06-29) | |
| changeset 300 | 455eaa569767 |
| parent 261 | a87a4f1e5db7 |
| child 310 | 9a7691262ce6 |
| permissions | -rw-r--r-- |
| richard@261 | 1 |
__razor_commands () {
|
| richard@261 | 2 |
local IFS=$'\n' |
| jbowes@290 | 3 |
COMPREPLY=($(IFS=: compgen -S' ' -W "info:list-requires:list-provides:list-files:list-file-packages:list-package-files:what-requires:what-provides:import-yum:import-rpmdb:import-rpms:validate:update:diff:install:init:download" -- $1)) |
| richard@261 | 4 |
} |
| richard@261 | 5 |
|
| richard@261 | 6 |
__razor_packages () {
|
| richard@261 | 7 |
local IFS=$'\n' |
| richard@261 | 8 |
|
| richard@261 | 9 |
COMPREPLY=($(razor list --only-names "$1*" | while read p; do echo "$p "; done)) |
| richard@261 | 10 |
} |
| richard@261 | 11 |
|
| richard@261 | 12 |
__razor_upstream_packages () {
|
| richard@261 | 13 |
local IFS=$'\n' |
| richard@261 | 14 |
|
| richard@261 | 15 |
COMPREPLY=($(RAZOR_REPO=rawhide.repo razor list --only-names "$1*" | while read p; do echo "$p "; done)) |
| richard@261 | 16 |
} |
| richard@261 | 17 |
|
| richard@261 | 18 |
__razor_files() {
|
| richard@261 | 19 |
COMPREPLY=($(razor list-files "$1*")) |
| richard@261 | 20 |
} |
| richard@261 | 21 |
|
| richard@261 | 22 |
__razor_requires() {
|
| richard@261 | 23 |
COMPREPLY=($(compgen -W "$(razor list-requires)" -- $1)) |
| richard@261 | 24 |
} |
| richard@261 | 25 |
|
| richard@261 | 26 |
__razor_provides() {
|
| richard@261 | 27 |
COMPREPLY=($(compgen -W "$(razor list-provides)" -- $1)) |
| richard@261 | 28 |
} |
| richard@261 | 29 |
|
| richard@261 | 30 |
__razor() {
|
| richard@261 | 31 |
local cur="${COMP_WORDS[COMP_CWORD]}"
|
| richard@261 | 32 |
|
| richard@261 | 33 |
if [ $COMP_CWORD = 1 ]; then |
| richard@261 | 34 |
__razor_commands $cur |
| richard@261 | 35 |
else |
| richard@261 | 36 |
case "${COMP_WORDS[1]}" in
|
| richard@261 | 37 |
info|list-requires|list-provides|list-package-files) |
| richard@261 | 38 |
__razor_packages $cur ;; |
| richard@261 | 39 |
list-files|list-file-packages) __razor_files $cur ;; |
| richard@261 | 40 |
what-requires) __razor_requires $cur ;; |
| richard@261 | 41 |
what-provides) __razor_provides $cur ;; |
| richard@261 | 42 |
install|download) __razor_upstream_packages $cur ;; |
| richard@261 | 43 |
esac |
| richard@261 | 44 |
fi |
| richard@261 | 45 |
} |
| richard@261 | 46 |
|
| richard@261 | 47 |
complete -o nospace -F __razor razor |