diff options
author | dundargoc <33953936+dundargoc@users.noreply.github.com> | 2022-03-16 09:36:26 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-03-16 09:36:26 +0100 |
commit | 33ada232c7566bd303579683dd5b769fe705462b (patch) | |
tree | c2ade760474b33749a2fca17acc04703986af2da | |
parent | 5a8bf31d328ecdb79453bf1eb22ff10aabbe0422 (diff) | |
download | rneovim-33ada232c7566bd303579683dd5b769fe705462b.tar.gz rneovim-33ada232c7566bd303579683dd5b769fe705462b.tar.bz2 rneovim-33ada232c7566bd303579683dd5b769fe705462b.zip |
fix(checkhealth): make provider checkhealth output more consistent (#17722)
Change missing provider plugins from errors to warnings for python and
perl. Also give proper advice under the ADVICE section instead of just
the errors.
-rw-r--r-- | runtime/autoload/health/provider.vim | 18 | ||||
-rw-r--r-- | runtime/autoload/provider/pythonx.vim | 4 |
2 files changed, 14 insertions, 8 deletions
diff --git a/runtime/autoload/health/provider.vim b/runtime/autoload/health/provider.vim index 2f35179338..7325220aa4 100644 --- a/runtime/autoload/health/provider.vim +++ b/runtime/autoload/health/provider.vim @@ -312,7 +312,10 @@ function! s:check_python() abort " No Python executable could `import neovim`, or host_prog_var was used. if !empty(pythonx_errors) - call health#report_error('Python provider error:', pythonx_errors) + call health#report_warn(pythonx_errors, ["See :help provider-python for more information.", + \ "You may disable this provider (and warning) by adding `let g:loaded_python3_provider = 0` to your init.vim" + \]) +"If you wish to disable the Python provider (and this warning), then " elseif !empty(pyname) && empty(python_exe) if !exists('g:'.host_prog_var) @@ -573,7 +576,8 @@ function! s:check_ruby() abort \ ['Run `gem install neovim` to ensure the neovim RubyGem is installed.', \ 'Run `gem environment` to ensure the gem bin directory is in $PATH.', \ 'If you are using rvm/rbenv/chruby, try "rehashing".', - \ 'See :help g:ruby_host_prog for non-standard gem installations.']) + \ 'See :help g:ruby_host_prog for non-standard gem installations.', + \ "You may disable this provider (and warning) by adding `let g:loaded_ruby_provider = 0` to your init.vim"]) return endif call health#report_info('Host: '. host) @@ -634,7 +638,8 @@ function! s:check_node() abort if empty(host) call health#report_warn('Missing "neovim" npm (or yarn) package.', \ ['Run in shell: npm install -g neovim', - \ 'Run in shell (if you use yarn): yarn global add neovim']) + \ 'Run in shell (if you use yarn): yarn global add neovim', + \ "You may disable this provider (and warning) by adding `let g:loaded_node_provider = 0` to your init.vim"]) return endif call health#report_info('Nvim node.js host: '. host) @@ -683,10 +688,11 @@ function! s:check_perl() abort return endif - let [perl_exec, perl_errors] = provider#perl#Detect() + let [perl_exec, perl_warnings] = provider#perl#Detect() if empty(perl_exec) - if !empty(perl_errors) - call health#report_error('perl provider error:', perl_errors) + if !empty(perl_warnings) + call health#report_warn(perl_warnings,["See :help provider-perl for more information." , + \ "You may disable this provider (and warning) by adding `let g:loaded_node_provider = 0` to your init.vim"]) else call health#report_warn('No usable perl executable found') endif diff --git a/runtime/autoload/provider/pythonx.vim b/runtime/autoload/provider/pythonx.vim index 5b299b322c..048f898e62 100644 --- a/runtime/autoload/provider/pythonx.vim +++ b/runtime/autoload/provider/pythonx.vim @@ -56,7 +56,7 @@ function! provider#pythonx#DetectByModule(module, major_version) abort endfor " No suitable Python executable found. - return ['', 'provider/pythonx: Could not load Python '.a:major_version.":\n".join(errors, "\n")] + return ['', 'Could not load Python '.a:major_version.":\n".join(errors, "\n")] endfunction " Returns array: [prog_exitcode, prog_version] @@ -99,7 +99,7 @@ function! provider#pythonx#CheckForModule(prog, module, major_version) abort endif if prog_exitcode == 2 - return [0, prog_path.' does not have the "' . a:module . '" module. :help provider-python'] + return [0, prog_path.' does not have the "' . a:module . '" module.'] elseif prog_exitcode == 127 " This can happen with pyenv's shims. return [0, prog_path . ' does not exist: ' . prog_version] |