Blame completions/pydoc

Packit 8462d6
# pydoc completion                                         -*- shell-script -*-
Packit 8462d6
Packit 8462d6
_pydoc()
Packit 8462d6
{
Packit 8462d6
    local cur prev words cword
Packit 8462d6
    _init_completion || return
Packit 8462d6
Packit 8462d6
    case $prev in
Packit 8462d6
        -k|-p)
Packit 8462d6
            return
Packit 8462d6
            ;;
Packit 8462d6
        -w)
Packit 8462d6
            _filedir
Packit 8462d6
            return
Packit 8462d6
            ;;
Packit 8462d6
    esac
Packit 8462d6
Packit 8462d6
    if [[ "$cur" == -* ]]; then
Packit 8462d6
        COMPREPLY=( $( compgen -W \
Packit 8462d6
            '$( "$1" | command sed -e "s/^pydoc3\{0,1\} //" | _parse_help - )' \
Packit 8462d6
            -- "$cur" ) )
Packit 8462d6
        return
Packit 8462d6
    fi
Packit 8462d6
Packit 8462d6
    COMPREPLY=( $( compgen -W 'keywords topics modules' -- "$cur" ) )
Packit 8462d6
Packit 8462d6
    local python=python; [[ $1 == *3* ]] && python=python3
Packit 8462d6
    _xfunc python _python_modules $python
Packit 8462d6
Packit 8462d6
    # Note that we don't do "pydoc modules" as it is known to hang on
Packit 8462d6
    # some systems; _python_modules tends to work better and faster.
Packit 8462d6
    COMPREPLY+=( $( compgen -W \
Packit 8462d6
        '$( $1 keywords topics | command sed -e /^Here/d )' -- "$cur" ) )
Packit 8462d6
Packit 8462d6
    _filedir py
Packit 8462d6
} &&
Packit 8462d6
complete -F _pydoc pydoc pydoc3
Packit 8462d6
Packit 8462d6
# ex: filetype=sh