Add bash completion script.
authorKristian Høgsberg <krh@redhat.com>
Tue, 23 Oct 2007 02:55:06 +0000 (22:55 -0400)
committerKristian Høgsberg <krh@redhat.com>
Tue, 23 Oct 2007 02:55:06 +0000 (22:55 -0400)
bash-completion.sh [new file with mode: 0644]

diff --git a/bash-completion.sh b/bash-completion.sh
new file mode 100644 (file)
index 0000000..ff6f274
--- /dev/null
@@ -0,0 +1,37 @@
+__razor_commands () {
+    COMPREPLY=($(compgen -W "list-requires list-provides list-files list-file-packages what-requires what-provides import-yum import-rpmdb validate update diff" -- $1))
+}
+
+__razor_packages () {
+    COMPREPLY=($(compgen -W "$(./razor list)" -- $1))
+}
+
+__razor_files() {
+    COMPREPLY=($(compgen -W "$(./razor list-files)" -- $1))
+}
+
+__razor_requires() {
+    echo requires
+    COMPREPLY=($(compgen -W "$(./razor list-requires)" -- $1))
+}
+
+__razor_provides() {
+    COMPREPLY=($(compgen -W "$(./razor list-provides)" -- $1))
+}
+
+__razor() {
+    local cur="${COMP_WORDS[COMP_CWORD]}"
+
+    if [ $COMP_CWORD = 1 ]; then
+       __razor_commands $cur
+    else
+       case "${COMP_WORDS[1]}" in
+           list-requires|list-provides) __razor_packages $cur ;;
+           list-files|list-file-packages) __razor_files $cur ;;
+           what-requires) __razor_requires $cur ;;
+           what-provides) __razor_provides $cur ;;
+       esac
+    fi
+}
+
+complete -F __razor razor