summaryrefslogtreecommitdiff
path: root/completions/pylint
blob: b1d80918344953fee9eb4934cf7a2df3fcefb2f8 (plain)
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
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
# pylint(1) completion                                     -*- shell-script -*-

_pylint()
{
    local cur prev words cword split
    _init_completion -s || return

    local python=python; [[ $1 == *3* ]] && python=python3

    case $prev in
        --version|-h|--help|--long-help|--help-msg|--init-hook|--ignore|-e|\
        --enable|-d|--disable|--evaluation|--max-line-length|\
        --max-module-lines|--indent-string|--min-similarity-lines|--max-args|\
        --ignored-argument-names|--max-locals|--max-returns|--max-branchs|\
        --max-statements|--max-parents|--max-attributes|--min-public-methods|\
        --max-public-methods|--required-attributes|--bad-functions|\
        --module-rgx|--const-rgx|--class-rgx|--function-rgx|--method-rgx|\
        --attr-rgx|--argument-rgx|--variable-rgx|--inlinevar-rgx|--good-names|\
        --bad-names|--no-docstring-rgx|--dummy-variables-rgx|\
        --additional-builtins|--notes|--ignored-classes|--generated-members|\
        --overgeneral-exceptions|--ignore-iface-methods|\
        --defining-attr-methods|--valid-classmethod-first-arg|\
        --valid-metaclass-classmethod-first-arg)
            return
            ;;
        --rcfile)
            _filedir
            return
            ;;
        --persistent|-i|--include-ids|-s|--symbols|--files-output|-r|\
        --reports|--comment|--ignore-comments|--ignore-docstrings|\
        --ignore-imports|--init-import|--ignore-mixin-members|--zope)
            COMPREPLY=( $( compgen -W 'yes no' -- "$cur" ) )
            return
            ;;
        --load-plugins|--deprecated-modules)
            local prefix=; [[ $cur == *,* ]] && prefix="${cur%,*},"
            cur="${cur##*,}"
            _xfunc python _python_modules $python
            [[ ${#COMPREPLY[@]} -eq 1 ]] && COMPREPLY=( ${COMPREPLY/#/$prefix} )
            return
            ;;
        -f|--format)
            COMPREPLY=( $( compgen -W 'text parseable colorized msvs html' \
                -- "$cur" ) )
            return
            ;;
        --import-graph|--ext-import-graph|--int-import-graph)
            _filedir dot
            return
            ;;
    esac

    $split && return

    if [[ $cur == -* ]]; then
        COMPREPLY=( $( compgen -W \
            '$( _parse_help "$1" --long-help )' -- "$cur" ) )
        [[ $COMPREPLY == *= ]] && compopt -o nospace
        return
    fi

    _xfunc python _python_modules $python
    _filedir py
} &&
complete -F _pylint pylint pylint-2 pylint-3

# ex: filetype=sh