data/razor.sh
changeset 286 f9344e30a3b9
child 290 f2461ae87dde
     1.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     1.2 +++ b/data/razor.sh	Thu Jun 26 09:21:14 2008 -0400
     1.3 @@ -0,0 +1,47 @@
     1.4 +__razor_commands () {
     1.5 +    local IFS=$'\n'
     1.6 +    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:validate:update:diff:install:init:download" -- $1))
     1.7 +}
     1.8 +
     1.9 +__razor_packages () {
    1.10 +    local IFS=$'\n'
    1.11 +
    1.12 +    COMPREPLY=($(razor list --only-names "$1*" | while read p; do echo "$p "; done))
    1.13 +}
    1.14 +
    1.15 +__razor_upstream_packages () {
    1.16 +    local IFS=$'\n'
    1.17 +
    1.18 +    COMPREPLY=($(RAZOR_REPO=rawhide.repo razor list --only-names "$1*" | while read p; do echo "$p "; done))
    1.19 +}
    1.20 +
    1.21 +__razor_files() {
    1.22 +    COMPREPLY=($(razor list-files "$1*"))
    1.23 +}
    1.24 +
    1.25 +__razor_requires() {
    1.26 +    COMPREPLY=($(compgen -W "$(razor list-requires)" -- $1))
    1.27 +}
    1.28 +
    1.29 +__razor_provides() {
    1.30 +    COMPREPLY=($(compgen -W "$(razor list-provides)" -- $1))
    1.31 +}
    1.32 +
    1.33 +__razor() {
    1.34 +    local cur="${COMP_WORDS[COMP_CWORD]}"
    1.35 +
    1.36 +    if [ $COMP_CWORD = 1 ]; then
    1.37 +	__razor_commands $cur
    1.38 +    else
    1.39 +	case "${COMP_WORDS[1]}" in
    1.40 +	    info|list-requires|list-provides|list-package-files)
    1.41 +		__razor_packages $cur ;;
    1.42 +	    list-files|list-file-packages) __razor_files $cur ;;
    1.43 +	    what-requires) __razor_requires $cur ;;
    1.44 +	    what-provides) __razor_provides $cur ;;
    1.45 +	    install|download) __razor_upstream_packages $cur ;;
    1.46 +	esac
    1.47 +    fi
    1.48 +}
    1.49 +
    1.50 +complete -o nospace -F __razor razor