1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39
|
# pydoc completion -*- shell-script -*-
_pydoc()
{
local cur prev words cword
_init_completion || return
case $prev in
-k|-p)
return
;;
-w)
_filedir
return
;;
esac
if [[ "$cur" == -* ]]; then
COMPREPLY=( $( compgen -W \
'$( "$1" | command sed -e "s/^pydoc3\{0,1\} //" | _parse_help - )' \
-- "$cur" ) )
return
fi
COMPREPLY=( $( compgen -W 'keywords topics modules' -- "$cur" ) )
local python=python; [[ $1 == *3* ]] && python=python3
_xfunc python _python_modules $python
# Note that we don't do "pydoc modules" as it is known to hang on
# some systems; _python_modules tends to work better and faster.
COMPREPLY+=( $( compgen -W \
'$( $1 keywords topics | command sed -e /^Here/d )' -- "$cur" ) )
_filedir py
} &&
complete -F _pydoc pydoc pydoc3
# ex: filetype=sh
|