ct-ng.comp
author "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
Sun Aug 30 19:33:48 2009 +0200 (2009-08-30)
changeset 1497 1b90f0b34c80
parent 1025 fc64f85e41cc
child 1683 09ae4c09ba83
permissions -rw-r--r--
config: move down companion libraries sub-menu

Move the companion libraries sub-menu down the main menu.
That way, the user does not need to go back and forth in the menu
to change options set by the different components that select the
companion libraries (binutils, gcc, gdb).
     1 # To be sourced
     2 
     3 _ct-ng () {
     4     local cur prev samples show_samples actions steps start_steps stop_steps ct_ng_opts vars
     5     COMPREPLY=()
     6     cur=$(_get_cword)
     7     prev=${COMP_WORDS[COMP_CWORD-1]}
     8 
     9     samples=$(${COMP_WORDS[0]} list-samples 2>/dev/null)
    10     show_samples=$(echo "${samples}" |sed -r -e 's/(^| )/\1show-/g;')
    11     build_samples=$(echo "${samples}" |sed -r -e 's/(^| )/\1build-/g;')
    12 
    13     steps=$(${COMP_WORDS[0]} list-steps 2>/dev/null |awk '$1 == "-" { print $2; }')
    14     start_steps=$(echo "${steps}" |sed -r -e 's/($| )/\1+/;')
    15     stop_steps=$(echo "${steps}" |sed -r -e 's/(^| )/+\1/;')
    16 
    17     actions='help menuconfig oldconfig saveconfig
    18              build build. build-all build-all.
    19              list-samples list-steps show-tuple
    20              clean distclean wiki-samples updatetools
    21              tarball version'
    22 
    23     vars="RESTART= STOP="
    24 
    25     ct_ng_opts="${samples} ${show_samples} ${build_samples}
    26                 ${steps} ${start_steps} ${stop_steps}
    27                 ${actions} ${vars}"
    28 
    29     COMPREPLY=($(compgen -W "${ct_ng_opts}" -- "${cur}"))
    30     return 0
    31 }
    32 complete -F _ct-ng ct-ng