mirror of
https://github.com/crosstool-ng/crosstool-ng.git
synced 2024-12-30 01:28:53 +00:00
749b819c92
Add an action to list only the sample names. Use that for auto-completion.
34 lines
1.2 KiB
Plaintext
34 lines
1.2 KiB
Plaintext
# To be sourced
|
|
|
|
_ct-ng () {
|
|
local cur prev samples show_samples actions steps start_steps stop_steps ct_ng_opts vars
|
|
COMPREPLY=()
|
|
cur=$(_get_cword)
|
|
prev=${COMP_WORDS[COMP_CWORD-1]}
|
|
|
|
samples=$( "${COMP_WORDS[0]}" list-samples-short 2>/dev/null )
|
|
show_samples=$(echo "${samples}" |sed -r -e 's/(^| )/\1show-/g;')
|
|
build_samples=$(echo "${samples}" |sed -r -e 's/(^| )/\1build-/g;')
|
|
|
|
steps=$(${COMP_WORDS[0]} list-steps 2>/dev/null |awk '$1 == "-" { print $2; }')
|
|
start_steps=$(echo "${steps}" |sed -r -e 's/($| )/\1+/;')
|
|
stop_steps=$(echo "${steps}" |sed -r -e 's/(^| )/+\1/;')
|
|
|
|
actions='help menuconfig oldconfig saveconfig extractconfig
|
|
build build. build-all build-all.
|
|
wiki-samples list-samples list-samples-short list-steps
|
|
show-tuple show-all show-config
|
|
clean distclean updatetools
|
|
tarball version'
|
|
|
|
vars="RESTART= STOP= PREFIX= V="
|
|
|
|
ct_ng_opts="${samples} ${show_samples} ${build_samples}
|
|
${steps} ${start_steps} ${stop_steps}
|
|
${actions} ${vars}"
|
|
|
|
COMPREPLY=($(compgen -W "${ct_ng_opts}" -- "${cur}"))
|
|
return 0
|
|
}
|
|
complete -F _ct-ng ct-ng
|