author | "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr> |
Fri Apr 30 22:26:52 2010 +0200 (2010-04-30) | |
branch | 1.7 |
changeset 1945 | d4fbfbed3a28 |
parent 1829 | bf1f86bdd79f |
child 2053 | 2238f1167eaa |
permissions | -rw-r--r-- |
yann@835 | 1 |
# To be sourced |
yann@835 | 2 |
|
yann@835 | 3 |
_ct-ng () { |
yann@835 | 4 |
local cur prev samples show_samples actions steps start_steps stop_steps ct_ng_opts vars |
yann@835 | 5 |
COMPREPLY=() |
yann@835 | 6 |
cur=$(_get_cword) |
yann@835 | 7 |
prev=${COMP_WORDS[COMP_CWORD-1]} |
yann@835 | 8 |
|
yann@1876 | 9 |
samples=$( "${COMP_WORDS[0]}" list-samples 2>/dev/null \ |
yann@1876 | 10 |
|tail -n +2 |sed -e '/^ /d; s/ .*//;' \ |
yann@1829 | 11 |
) |
yann@835 | 12 |
show_samples=$(echo "${samples}" |sed -r -e 's/(^| )/\1show-/g;') |
yann@1025 | 13 |
build_samples=$(echo "${samples}" |sed -r -e 's/(^| )/\1build-/g;') |
yann@835 | 14 |
|
yann@918 | 15 |
steps=$(${COMP_WORDS[0]} list-steps 2>/dev/null |awk '$1 == "-" { print $2; }') |
yann@934 | 16 |
start_steps=$(echo "${steps}" |sed -r -e 's/($| )/\1+/;') |
yann@835 | 17 |
stop_steps=$(echo "${steps}" |sed -r -e 's/(^| )/+\1/;') |
yann@835 | 18 |
|
yann@1803 | 19 |
actions='help menuconfig oldconfig saveconfig extractconfig |
yann@1025 | 20 |
build build. build-all build-all. |
yann@1788 | 21 |
list-samples list-steps show-tuple show-all show-config |
yann@1025 | 22 |
clean distclean wiki-samples updatetools |
yann@932 | 23 |
tarball version' |
yann@835 | 24 |
|
yann@1876 | 25 |
vars="RESTART= STOP= PREFIX= V=" |
yann@835 | 26 |
|
yann@1025 | 27 |
ct_ng_opts="${samples} ${show_samples} ${build_samples} |
yann@835 | 28 |
${steps} ${start_steps} ${stop_steps} |
yann@835 | 29 |
${actions} ${vars}" |
yann@835 | 30 |
|
yann@835 | 31 |
COMPREPLY=($(compgen -W "${ct_ng_opts}" -- "${cur}")) |
yann@835 | 32 |
return 0 |
yann@835 | 33 |
} |
yann@835 | 34 |
complete -F _ct-ng ct-ng |