diff --git a/completions/Makefile.am b/completions/Makefile.am index 62d6188c..b009fbc9 100644 --- a/completions/Makefile.am +++ b/completions/Makefile.am @@ -129,6 +129,7 @@ bashcomp_DATA = abook \ procps \ protoc \ puppet \ + pwgen \ python \ qdbus \ qemu \ diff --git a/completions/pwgen b/completions/pwgen new file mode 100644 index 00000000..40bf376e --- /dev/null +++ b/completions/pwgen @@ -0,0 +1,34 @@ +have pwgen || return + +_pwgen() +{ + local cur prev words cword split + _init_completion -s || return + + case $prev in + -N|--num-passwords|-h|--help) + return + ;; + -H|--sha1) + _filedir + return + ;; + esac + + $split && return + + if [[ $cur == -* ]]; then + COMPREPLY=( $( compgen -W '$( _parse_help "$1" )' -- "$cur" ) ) + [[ $COMPREPLY == *= ]] && compopt -o nospace + return + fi +} && +complete -F _pwgen pwgen + +# Local variables: +# mode: shell-script +# sh-basic-offset: 4 +# sh-indent-comment: t +# indent-tabs-mode: nil +# End: +# ex: ts=4 sw=4 et filetype=sh diff --git a/test/completion/pwgen.exp b/test/completion/pwgen.exp new file mode 100644 index 00000000..bba75ecd --- /dev/null +++ b/test/completion/pwgen.exp @@ -0,0 +1 @@ +assert_source_completions pwgen diff --git a/test/lib/completions/pwgen.exp b/test/lib/completions/pwgen.exp new file mode 100644 index 00000000..b8882b68 --- /dev/null +++ b/test/lib/completions/pwgen.exp @@ -0,0 +1,20 @@ +proc setup {} { + save_env +} + + +proc teardown {} { + assert_env_unmodified +} + + +setup + + +assert_complete_any "pwgen -" + + +sync_after_int + + +teardown