From a0706fe568012549772c6700ee3bfdee826cfb26 Mon Sep 17 00:00:00 2001 From: Evax Software Date: Fri, 8 Apr 2011 15:21:43 +0200 Subject: Add a bash_completion script for kerl --- bash_completion/kerl | 72 ++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 72 insertions(+) create mode 100644 bash_completion/kerl (limited to 'bash_completion') diff --git a/bash_completion/kerl b/bash_completion/kerl new file mode 100644 index 0000000..0d1860a --- /dev/null +++ b/bash_completion/kerl @@ -0,0 +1,72 @@ +# bash_completion for kerl + +_kerl() +{ + local cur prev + _get_comp_words_by_ref cur prev + + case $prev in + kerl) + COMPREPLY=( $( compgen -W "build install update list delete active status" -- "$cur" ) ) + ;; + list) + COMPREPLY=( $( compgen -W "releases builds installations" -- "$cur" ) ) + ;; + build) + if [ "$COMP_CWORD" -eq 2 ]; then + if [ -f "$HOME/.kerl/otp_releases" ]; then + RELEASES=`cat "$HOME/.kerl/otp_releases"` + fi + COMPREPLY=( $( compgen -W "git $RELEASES" -- "$cur") ) + else + if [ -f "$HOME/.kerl/otp_builds" ]; then + BUILDS=`cat "$HOME/.kerl/otp_builds" | cut -d "," -f 2` + fi + COMPREPLY=( $( compgen -W "$BUILDS" -- "$cur") ) + fi + ;; + installation) + if [ -f "$HOME/.kerl/otp_installations" ]; then + PATHS=`cat "$HOME/.kerl/otp_installations" | cut -d " " -f 2` + fi + COMPREPLY=( $( compgen -W "$PATHS" -- "$cur") ) + ;; + install) + if [ -f "$HOME/.kerl/otp_builds" ]; then + BUILDS=`cat "$HOME/.kerl/otp_builds" | cut -d "," -f 2` + fi + COMPREPLY=( $( compgen -W "$BUILDS" -- "$cur") ) + ;; + delete) + COMPREPLY=( $( compgen -W "build installation $words" -- "$cur") ) + ;; + update) + COMPREPLY=( $( compgen -W "releases agner" -- "$cur") ) + ;; + agner) + if [ "$COMP_CWORD" -eq 3 ]; then + if [ -f "$HOME/.kerl/otp_builds" ]; then + BUILDS=`cat "$HOME/.kerl/otp_builds" | cut -d "," -f 2` + fi + fi + COMPREPLY=( $( compgen -W "$BUILDS" -- "$cur") ) + ;; + *) + if [ "$COMP_CWORD" -eq 3 ]; then + if [ -f "$HOME/.kerl/otp_builds" ]; then + BUILDS=`cat "$HOME/.kerl/otp_builds" | cut -d "," -f 2` + fi + if [ -n "$BUILDS" ]; then + for b in $BUILDS; do + if [ "$prev" = "$b" ]; then + _filedir + return 0 + fi + done + fi + fi + ;; + esac +} +complete -F _kerl kerl + -- cgit v1.2.3