[Bash-completion-commits] [bash-completion] 02/02: modprobe: Try parsing help before using hardcoding option list
Ville Skyttä
scop-guest at moszumanska.debian.org
Mon Jun 9 06:40:59 UTC 2014
This is an automated email from the git hooks/post-receive script.
scop-guest pushed a commit to branch master
in repository bash-completion.
commit c6ec8f979bb6a6c6bdfeae75749a5be4c5145fdb
Author: Ville Skyttä <ville.skytta at iki.fi>
Date: Mon Jun 9 09:28:51 2014 +0300
modprobe: Try parsing help before using hardcoding option list
---
completions/modprobe | 26 ++++++++++++++++++--------
test/lib/completions/modprobe.exp | 4 ++--
2 files changed, 20 insertions(+), 10 deletions(-)
diff --git a/completions/modprobe b/completions/modprobe
index 10a4a1b..c4048de 100644
--- a/completions/modprobe
+++ b/completions/modprobe
@@ -2,10 +2,13 @@
_modprobe()
{
- local cur prev words cword
- _init_completion || return
+ local cur prev words cword split
+ _init_completion -s || return
case "$prev" in
+ -h|--help|-V|--version)
+ return
+ ;;
-C|--config)
_filedir
return
@@ -20,13 +23,20 @@ _modprobe()
;;
esac
+ $split && return
+
if [[ "$cur" == -* ]]; then
- COMPREPLY=( $( compgen -W '-a --all -b --use-blacklist -C --config -c
- --showconfig --dump-modversions -d --dirname --first-time
- --force-vermagic --force-modversion -f --force -i --ignore-install
- --ignore-remove -l --list -n --dry-run -q --quiet -R
- --resolve-alias -r --remove -S --set-version --show-depends -s
- --syslog -t --type -V --version -v --verbose' -- "$cur" ) )
+ COMPREPLY=( $( compgen -W '$( _parse_help "$1" )' -- "$cur" ) )
+ if [[ ! $COMPREPLY ]]; then
+ COMPREPLY=( $( compgen -W '-a --all -b --use-blacklist -C --config
+ -c --showconfig --dump-modversions -d --dirname --first-time
+ --force-vermagic --force-modversion -f --force -i
+ --ignore-install --ignore-remove -l --list -n --dry-run -q
+ --quiet -R --resolve-alias -r --remove -S --set-version
+ --show-depends -s --syslog -t --type -V --version -v
+ --verbose' -- "$cur" ) )
+ fi
+ [[ $COMPREPLY == *= ]] && compopt -o nospace
return
fi
diff --git a/test/lib/completions/modprobe.exp b/test/lib/completions/modprobe.exp
index a1cd698..4dccfec 100644
--- a/test/lib/completions/modprobe.exp
+++ b/test/lib/completions/modprobe.exp
@@ -11,8 +11,8 @@ proc teardown {} {
setup
-set test "--remov<TAB> should complete \"--remove\""
-assert_complete "--remove" "modprobe --remov" $test
+set test "--al<TAB> should complete \"--all\""
+assert_complete "--all" "modprobe --al" $test
sync_after_int
--
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/bash-completion/bash-completion.git
More information about the Bash-completion-commits
mailing list