diff options
Diffstat (limited to '')
-rw-r--r-- | completions/mypy | 57 |
1 files changed, 57 insertions, 0 deletions
diff --git a/completions/mypy b/completions/mypy new file mode 100644 index 0000000..534d575 --- /dev/null +++ b/completions/mypy @@ -0,0 +1,57 @@ +# mypy completion -*- shell-script -*- + +_mypy() +{ + local cur prev words cword split + _init_completion -s || return + + [[ $cword -gt 2 && ${words[cword - 2]} == --shadow-file ]] && + prev=--shadow-file # hack; takes two args + + case $prev in + --help | --version | --python-version | --platform | --always-true | \ + --always-false | --find-occurrences | --package | --command | -!(-*)[hVpc]) + return + ;; + --config-file) + _filedir + return + ;; + --follow-imports) + COMPREPLY=($(compgen -W 'normal silent skip error' -- "$cur")) + return + ;; + --python-executable) + COMPREPLY=($(compgen -c -- "${cur:-py}")) + return + ;; + --*-dir | --*-report) + _filedir -d + return + ;; + --custom-typing | --module | -!(-*)m) + _xfunc python _python_modules + return + ;; + --shadow-file) + _filedir '@(py|pyi)' + return + ;; + --junit-xml) + _filedir xml + return + ;; + esac + + $split && return + + if [[ $cur == -* ]]; then + COMPREPLY=($(compgen -W '$(_parse_help "$1")' -- "$cur")) + return + fi + + _filedir '@(py|pyi)' +} && + complete -F _mypy mypy + +# ex: filetype=sh |