diff options
author | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-15 16:24:27 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-15 16:24:27 +0000 |
commit | 6c18848a903eb3ee06dccd915859ce64195c257c (patch) | |
tree | ea0fe36eb5e6f40e0a1f765d44c4b0c0b2bfb089 /completions/pydoc | |
parent | Initial commit. (diff) | |
download | bash-completion-6c18848a903eb3ee06dccd915859ce64195c257c.tar.xz bash-completion-6c18848a903eb3ee06dccd915859ce64195c257c.zip |
Adding upstream version 1:2.11.upstream/1%2.11
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'completions/pydoc')
-rw-r--r-- | completions/pydoc | 42 |
1 files changed, 42 insertions, 0 deletions
diff --git a/completions/pydoc b/completions/pydoc new file mode 100644 index 0000000..e7b1178 --- /dev/null +++ b/completions/pydoc @@ -0,0 +1,42 @@ +# 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")) + + if [[ $cur != @(.|*/)* ]]; then + local python=python + [[ ${1##*/} == *3* ]] && python=python3 + _xfunc python _python_modules $python + fi + + # 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 |