X-Git-Url: http://koha-dev.rot13.org:8081/gitweb/?a=blobdiff_plain;f=debian%2Fkoha-common.bash-completion;h=b40ae47a3a7ea12a31f7715bdced74b647fde8e1;hb=7df314f0b27bdc70e02280aa12d0fac26f096411;hp=934e27949c2923e2248e7989e3fbb8047ba89996;hpb=fd0e8ff0adeff322c3defea0b4f6b29bde7ffa51;p=koha-ffzg.git diff --git a/debian/koha-common.bash-completion b/debian/koha-common.bash-completion index 934e27949c..b40ae47a3a 100644 --- a/debian/koha-common.bash-completion +++ b/debian/koha-common.bash-completion @@ -43,6 +43,21 @@ _build_substract_instances() echo "$substract" } +_koha_single_instance() +{ + local filter=$1 + + cur=${COMP_WORDS[COMP_CWORD]} + prev=${COMP_WORDS[COMP_CWORD-1]} + if [ $COMP_CWORD -eq 1 ]; then + COMPREPLY=( $( compgen -W "$(koha-list $filter)" $cur ) ) + else + COMPREPLY=() + fi + + return 0 +} + _koha_list_cmd() { local filter=$1 @@ -56,10 +71,11 @@ _koha_list_cmd() if [[ "$substract" != "" ]]; then instancelist=$( koha-list $filter | grep -v -x $substract ) else - instancelist=$( koha-list $filer ) + instancelist=$( koha-list $filter ) fi COMPREPLY=( $(compgen -W "$instancelist" -- $cur ) ) + return 0 } _koha_email_disable() @@ -82,20 +98,12 @@ _koha_sip_enabled_instances() return 0 } -# koha-*-sip autocomplete with sip-enabled instances -complete -F _koha_sip_enabled_instances koha-start-sip -complete -F _koha_sip_enabled_instances koha-restart-sip -complete -F _koha_sip_enabled_instances koha-stop-sip - _koha_sip_disabled() { _koha_list_cmd "--nosip" return 0 } -# koha-enable-sip autocompletes with sip-disabled instances -complete -F _koha_sip_disabled koha-enable-sip - _koha_disabled_instances() { _koha_list_cmd "--disabled" @@ -114,10 +122,8 @@ complete -F _koha_disabled_instances koha-enable # koha-disable autocompletes with enabled instances complete -F _koha_enabled_instances koha-disable -# koha-*-zebra autocomplete with enabled instances -complete -F _koha_enabled_instances koha-start-zebra -complete -F _koha_enabled_instances koha-restart-zebra -complete -F _koha_enabled_instances koha-stop-zebra +# koha-mysql autocompletes with a single instance name +complete -F _koha_single_instance koha-mysql _koha_list() { @@ -125,7 +131,7 @@ _koha_list() COMPREPLY=() _get_comp_words_by_ref cur - opts="--enabled --disabled --email --noemail --sip --nosip --help -h" + opts="--enabled --disabled --email --noemail --plack --noplack --sip --nosip --help -h" # Build a list of the already used option switches for (( i=0; i < ${#COMP_WORDS[@]}-1; i++ )); do @@ -139,6 +145,10 @@ _koha_list() substract="$substract -e --noemail"; ;; --noemail) substract="$substract -e --email"; ;; + --plack) + substract="$substract -e --noplack"; ;; + --noplack) + substract="$substract -e --plack"; ;; --sip) substract="$substract -e --nosip"; ;; --nosip) @@ -162,6 +172,167 @@ _koha_list() } complete -F _koha_list koha-list +_koha_plack_instances() +{ + _koha_list_cmd "--plack" + return 0 +} + +_koha_noplack_instances() +{ + _koha_list_cmd "--noplack" + return 0 +} + +_koha-plack() +{ + local cur opts substract + + COMPREPLY=() + _get_comp_words_by_ref cur + opts="--start --stop --restart --enable --disable --quiet -q --help -h" + + # Build a list of the already used option switches + for (( i=0; i < ${#COMP_WORDS[@]}-1; i++ )); do + if [[ ${COMP_WORDS[i]} == -* ]]; then + case ${COMP_WORDS[i]} in + --start) _koha_plack_instances ; return 0 ;; + --stop) _koha_plack_instances ; return 0 ;; + --restart) _koha_plack_instances ; return 0 ;; + --enable) _koha_noplack_instances ; return 0 ;; + --disable) _koha_plack_instances ; return 0 ;; + --help) COMPREPLY=() ; return 0 ;; # no more completions + -h) COMPREPLY=() ; return 0 ;; # no more completions + --quiet) # filter the other quiet switches and go on + substract="$substract -e -q"; ;; + -q) # filter the other quiet switches and go on + substract="$substract -e --quiet"; ;; + esac + substract="$substract -e ${COMP_WORDS[i]}" + fi + done + + if [[ "$substract" != "" ]]; then + opts=$( echo $opts | sed -e 's/ /\n/g' | grep -v -x $substract ) + fi + + COMPREPLY=( $(compgen -W "$opts" -- $cur ) ) + + return 0 +} +complete -F _koha-plack koha-plack + +_koha-indexer() +{ + local cur opts substract + + COMPREPLY=() + _get_comp_words_by_ref cur + opts="--start --stop --restart --quiet -q --help -h" + + # Build a list of the already used option switches + for (( i=0; i < ${#COMP_WORDS[@]}-1; i++ )); do + if [[ ${COMP_WORDS[i]} == -* ]]; then + case ${COMP_WORDS[i]} in + --start) _koha_list_cmd ; return 0 ;; + --stop) _koha_list_cmd ; return 0 ;; + --restart) _koha_list_cmd ; return 0 ;; + --help) COMPREPLY=() ; return 0 ;; # no more completions + -h) COMPREPLY=() ; return 0 ;; # no more completions + --quiet) # filter the other quiet switches and go on + substract="$substract -e -q"; ;; + -q) # filter the other quiet switches and go on + substract="$substract -e --quiet"; ;; + esac + substract="$substract -e ${COMP_WORDS[i]}" + fi + done + + if [[ "$substract" != "" ]]; then + opts=$( echo $opts | sed -e 's/ /\n/g' | grep -v -x $substract ) + fi + + COMPREPLY=( $(compgen -W "$opts" -- $cur ) ) + + return 0 +} +complete -F _koha-indexer koha-indexer + +_koha-zebra() +{ + local cur opts substract + + COMPREPLY=() + _get_comp_words_by_ref cur + opts="--start --stop --restart --status --quiet -q --help -h" + + # Build a list of the already used option switches + for (( i=0; i < ${#COMP_WORDS[@]}-1; i++ )); do + if [[ ${COMP_WORDS[i]} == -* ]]; then + case ${COMP_WORDS[i]} in + --start) _koha_list_cmd ; return 0 ;; + --stop) _koha_list_cmd ; return 0 ;; + --restart) _koha_list_cmd ; return 0 ;; + --status) _koha_list_cmd ; return 0 ;; + --help) COMPREPLY=() ; return 0 ;; # no more completions + -h) COMPREPLY=() ; return 0 ;; # no more completions + --quiet) # filter the other quiet switches and go on + substract="$substract -e -q"; ;; + -q) # filter the other quiet switches and go on + substract="$substract -e --quiet"; ;; + esac + substract="$substract -e ${COMP_WORDS[i]}" + fi + done + + if [[ "$substract" != "" ]]; then + opts=$( echo $opts | sed -e 's/ /\n/g' | grep -v -x $substract ) + fi + + COMPREPLY=( $(compgen -W "$opts" -- $cur ) ) + + return 0 +} +complete -F _koha-zebra koha-zebra + +_koha-sip() +{ + local cur opts substract + + COMPREPLY=() + _get_comp_words_by_ref cur + opts="--start --stop --restart --status --enable --verbose -v --help -h" + + # Build a list of the already used option switches + for (( i=0; i < ${#COMP_WORDS[@]}-1; i++ )); do + if [[ ${COMP_WORDS[i]} == -* ]]; then + case ${COMP_WORDS[i]} in + --start) _koha_sip_enabled_instances ; return 0 ;; + --stop) _koha_sip_enabled_instances ; return 0 ;; + --restart) _koha_sip_enabled_instances ; return 0 ;; + --status) _koha_sip_enabled_instances ; return 0 ;; + --enable) _koha_sip_disabled ; return 0 ;; + --help) COMPREPLY=() ; return 0 ;; # no more completions + -h) COMPREPLY=() ; return 0 ;; # no more completions + --verbose) # filter the other quiet switches and go on + substract="$substract -e -q"; ;; + -v) # filter the other quiet switches and go on + substract="$substract -e --verbose"; ;; + esac + substract="$substract -e ${COMP_WORDS[i]}" + fi + done + + if [[ "$substract" != "" ]]; then + opts=$( echo $opts | sed -e 's/ /\n/g' | grep -v -x $substract ) + fi + + COMPREPLY=( $(compgen -W "$opts" -- $cur ) ) + + return 0 +} +complete -F _koha-sip koha-sip + # Local variables: # mode: shell-script # sh-basic-offset: 4