diff options
author | Florian Walch <florian@fwalch.com> | 2015-06-04 19:43:12 +0300 |
---|---|---|
committer | Florian Walch <florian@fwalch.com> | 2015-06-09 10:29:46 +0300 |
commit | cfa278c72ed0ce48ce075f7f0230379a2566a458 (patch) | |
tree | 67219355878d993461ec38f58ff05e2f944b8166 | |
parent | 4dc3c84c5a9c10f720e0a5d8c4269b11e0c81b98 (diff) | |
download | rneovim-cfa278c72ed0ce48ce075f7f0230379a2566a458.tar.gz rneovim-cfa278c72ed0ce48ce075f7f0230379a2566a458.tar.bz2 rneovim-cfa278c72ed0ce48ce075f7f0230379a2566a458.zip |
provider/pythonx: Merge s:check_version() and s:check_interpreter().
-rw-r--r-- | runtime/autoload/provider/pythonx.vim | 38 |
1 files changed, 14 insertions, 24 deletions
diff --git a/runtime/autoload/provider/pythonx.vim b/runtime/autoload/provider/pythonx.vim index b08a6dbf91..669ae47a39 100644 --- a/runtime/autoload/provider/pythonx.vim +++ b/runtime/autoload/provider/pythonx.vim @@ -13,7 +13,7 @@ function! provider#pythonx#Detect(major_ver) abort let skip = exists(skip_var) ? {skip_var} : 0 if exists(host_var) " Disable auto detection. - let [result, err, _] = s:check_interpreter({host_var}, a:major_ver, skip) + let [result, err] = s:check_interpreter({host_var}, a:major_ver, skip) if result return [{host_var}, err] endif @@ -27,12 +27,9 @@ function! provider#pythonx#Detect(major_ver) abort let errors = [] for prog in map(prog_suffixes, "'python' . v:val") - let [result, err, prog_ver] = s:check_interpreter(prog, a:major_ver, skip) + let [result, err] = s:check_interpreter(prog, a:major_ver, skip) if result - let [result, err] = s:check_version(prog, prog_ver, a:major_ver, skip) - if result - return [prog, err] - endif + return [prog, err] endif " Accumulate errors in case we don't find @@ -45,26 +42,13 @@ function! provider#pythonx#Detect(major_ver) abort \ . ":\n" . join(errors, "\n")] endfunction -function! s:check_version(prog, prog_ver, major_ver, skip) abort - if a:skip - return [1, ''] - endif - - let min_version = (a:major_ver == 2) ? '2.6' : '3.3' - if a:prog_ver =~ '^' . a:major_ver && a:prog_ver >= min_version - return [1, ''] - endif - return [0, a:prog . ' is Python ' . prog_ver . ' and cannot provide Python ' - \ . a:major_ver . '.'] -endfunction - function! s:check_interpreter(prog, major_ver, skip) abort if !executable(a:prog) - return [0, a:prog . ' does not exist or is not executable.', ''] + return [0, a:prog . ' does not exist or is not executable.'] endif if a:skip - return [1, '', ''] + return [1, ''] endif " Try to load neovim module, and output Python version. @@ -77,8 +61,14 @@ function! s:check_interpreter(prog, major_ver, skip) abort \ ) if v:shell_error return [0, a:prog . ' does have not have the neovim module installed. ' - \ . 'See ":help nvim-python".', prog_ver] + \ . 'See ":help nvim-python".'] + endif + + let min_version = (a:major_ver == 2) ? '2.6' : '3.3' + if prog_ver =~ '^' . a:major_ver && prog_ver >= min_version + return [1, ''] endif - return [1, '', prog_ver] -endfunction + return [0, a:prog . ' is Python ' . prog_ver . ' and cannot provide Python ' + \ . a:major_ver . '.'] +endfunction |