diff options
Diffstat (limited to '')
-rw-r--r-- | completions/pydoc | 42 | ||||
-rw-r--r-- | completions/pydocstyle | 35 |
2 files changed, 77 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 diff --git a/completions/pydocstyle b/completions/pydocstyle new file mode 100644 index 0000000..acbf1ec --- /dev/null +++ b/completions/pydocstyle @@ -0,0 +1,35 @@ +# bash completion for pydocstyle -*- shell-script -*- + +_pydocstyle() +{ + local cur prev words cword split + _init_completion -s || return + + case $prev in + --help | --version | --match | --ignore-decorators | --select | --ignore | \ + --add-select | --add-ignore | -!(-*)h) + return + ;; + --config) + _filedir xml + return + ;; + --convention) + COMPREPLY=($(compgen -W "pep257 numpy" -- "$cur")) + return + ;; + esac + + $split && return + + if [[ $cur == -* ]]; then + COMPREPLY=($(compgen -W '$(_parse_help "$1")' -- "$cur")) + [[ ${COMPREPLY-} == *= ]] && compopt -o nospace + return + fi + + _filedir py +} && + complete -F _pydocstyle pydocstyle + +# ex: filetype=sh |