doc: replace ":CheckHealth" with ":checkhealth"

This commit is contained in:
Justin M. Keyes
2017-10-15 20:31:12 +02:00
parent 5baeb4a49c
commit d214df4e9b
10 changed files with 51 additions and 67 deletions

View File

@@ -18,7 +18,7 @@ function! s:enhance_syntax() abort
syntax match healthBar "|" contained conceal syntax match healthBar "|" contained conceal
highlight link healthHelp Identifier highlight link healthHelp Identifier
" We do not care about markdown syntax errors in :CheckHealth output. " We do not care about markdown syntax errors in :checkhealth output.
highlight! link markdownError Normal highlight! link markdownError Normal
endfunction endfunction

View File

@@ -75,7 +75,7 @@ let s:prog = provider#ruby#Detect()
let s:plugin_path = expand('<sfile>:p:h') . '/script_host.rb' let s:plugin_path = expand('<sfile>:p:h') . '/script_host.rb'
if empty(s:prog) if empty(s:prog)
let s:err = 'Cannot find the neovim RubyGem. Try :CheckHealth' let s:err = 'Cannot find the neovim RubyGem. Try :checkhealth'
endif endif
call remote#host#RegisterClone('legacy-ruby-provider', 'ruby') call remote#host#RegisterClone('legacy-ruby-provider', 'ruby')

View File

@@ -5,50 +5,36 @@ Author: TJ DeVries <devries.timothyj@gmail.com>
Type <M-]> to see the table of contents. Type <M-]> to see the table of contents.
============================================================================== ==============================================================================
Introduction *healthcheck* *health.vim-intro* Introduction *health*
Troubleshooting user configuration problems is a time-consuming task that health.vim is a minimal framework to help with troubleshooting user
developers want to minimize. health.vim provides a simple framework for plugin configuration. Nvim ships with healthchecks for configuration, performance,
authors to hook into, and for users to invoke, to check and report the user's python support, ruby support, clipboard support, and more.
configuration and environment. Type this command to try it: >
:CheckHealth To run the healthchecks, use this command: >
:checkhealth
< <
For example, some users have broken or unusual Python setups, which breaks the Plugin authors are encouraged to write new healthchecks. |health-dev|
|:python| command. |:CheckHealth| detects several common Python configuration
problems and reports them. If the Neovim Python module is not installed, it
shows a warning: >
You have not installed the Neovim Python module
You might want to try `pip install Neovim`
<
Plugin authors are encouraged to add healthchecks, see |health.vim-dev|.
============================================================================== ==============================================================================
Commands and functions *health.vim-manual* Commands *health-commands*
Commands *:checkhealth* *:CheckHealth*
------------------------------------------------------------------------------ :checkhealth Run all healthchecks.
*:CheckHealth*
:CheckHealth Run all healthchecks and show the output in a new
tabpage. These healthchecks are included by default:
- python2
- python3
- ruby
- remote plugin
:CheckHealth {plugins} :checkhealth {plugins}
Run healthchecks for one or more plugins. E.g. to run Run healthcheck(s) for one or more plugins. E.g. to run
only the standard Nvim healthcheck: > only the standard Nvim healthcheck: >
:CheckHealth nvim :checkhealth nvim
< To run the healthchecks for the "foo" and "bar" plugins < To run the healthchecks for the "foo" and "bar" plugins
(assuming these plugins are on your 'runtimepath' and (assuming these plugins are on your 'runtimepath' and
they have implemented health#foo#check() and they have implemented health#foo#check() and
health#bar#check(), respectively): > health#bar#check(), respectively): >
:CheckHealth foo bar :checkhealth foo bar
< <
Functions ==============================================================================
------------------------------------------------------------------------------ Functions *health-functions*
health.vim functions are for creating new healthchecks. They mostly just do health.vim functions are for creating new healthchecks. They mostly just do
some layout and formatting, to give users a consistent presentation. some layout and formatting, to give users a consistent presentation.
@@ -59,51 +45,49 @@ health#report_start({name}) *health#report_start*
per section. per section.
health#report_info({msg}) *health#report_info* health#report_info({msg}) *health#report_info*
Displays an informational message. Reports an informational message.
health#report_ok({msg}) *health#report_ok* health#report_ok({msg}) *health#report_ok*
Displays a "success" message. Reports a "success" message.
health#report_warn({msg}, [{advice}]) *health#report_warn* health#report_warn({msg}, [{advice}]) *health#report_warn*
Displays a warning. {advice} is an optional List of suggestions. Reports a warning. {advice} is an optional List of suggestions.
health#report_error({msg}, [{advice}]) *health#report_error* health#report_error({msg}, [{advice}]) *health#report_error*
Displays an error. {advice} is an optional List of suggestions. Reports an error. {advice} is an optional List of suggestions.
health#{plugin}#check() *health.user_checker* health#{plugin}#check() *health.user_checker*
This is the form of a healthcheck definition. Call the above functions Healthcheck function for {plugin}. Called by |:checkhealth|
from this function, then |:CheckHealth| does the rest. Example: > automatically. Example: >
function! health#my_plug#check() abort function! health#my_plug#check() abort
silent call s:check_environment_vars() silent call s:check_environment_vars()
silent call s:check_python_configuration() silent call s:check_python_configuration()
endfunction endfunction
< <
The function will be found and called automatically when the user
invokes |:CheckHealth|.
All output will be captured from the healthcheck. Use the All output will be captured from the healthcheck. Use the
health#report_* functions so that your healthcheck has a format health#report_* functions so that your healthcheck has a format
consistent with the standard healthchecks. consistent with the standard healthchecks.
============================================================================== ==============================================================================
Create a healthcheck *health.vim-dev* Create a healthcheck *health-dev*
Healthchecks are functions that check the health of the system. Neovim has Healthchecks are functions that check the user environment, configuration,
built-in checkers, found in $VIMRUNTIME/autoload/health/. etc. Nvim has built-in healthchecks in $VIMRUNTIME/autoload/health/.
To add a new checker for your own plugin, simply define a To add a new healthcheck for your own plugin, simply define a
health#{plugin}#check() function in autoload/health/{plugin}.vim. health#{plugin}#check() function in autoload/health/{plugin}.vim.
|:CheckHealth| automatically finds and invokes such functions. |:checkhealth| automatically finds and invokes such functions.
If your plugin is named "jslint", then its healthcheck function must be > If your plugin is named "foo", then its healthcheck function must be >
health#jslint#check() health#foo#check()
defined in this file on 'runtimepath': > defined in this file on 'runtimepath': >
autoload/health/jslint.vim autoload/health/foo.vim
Here's a sample to get started: > Copy this sample code into autoload/health/foo.vim and replace "foo" with your
function! health#jslint#check() abort plugin name: >
function! health#foo#check() abort
call health#report_start('sanity checks') call health#report_start('sanity checks')
" perform arbitrary checks " perform arbitrary checks
" ... " ...
@@ -111,8 +95,8 @@ Here's a sample to get started: >
if looks_good if looks_good
call health#report_ok('found required dependencies') call health#report_ok('found required dependencies')
else else
call health#report_error('cannot find jslint', call health#report_error('cannot find foo',
\ ['npm install --save jslint']) \ ['npm install --save foo'])
endif endif
endfunction endfunction

View File

@@ -20,7 +20,7 @@ Note: Only the Vim 7.3 API is supported; bindeval (Vim 7.4) is not.
PYTHON QUICKSTART ~ PYTHON QUICKSTART ~
If you used a package manager to install Nvim, you might already have the If you used a package manager to install Nvim, you might already have the
required `neovim` Python package. Run |:CheckHealth| to see if your system is required `neovim` Python package. Run |:checkhealth| to see if your system is
up-to-date. up-to-date.
Following are steps to install the package with Python's `pip` tool. Following are steps to install the package with Python's `pip` tool.
@@ -88,7 +88,7 @@ Ruby integration *provider-ruby*
Nvim supports the Vim legacy |ruby-vim| interface via external Ruby Nvim supports the Vim legacy |ruby-vim| interface via external Ruby
interpreters connected via |RPC|. interpreters connected via |RPC|.
Run |:CheckHealth| to see if your system is up-to-date. Run |:checkhealth| to see if your system is up-to-date.
RUBY QUICKSTART ~ RUBY QUICKSTART ~

View File

@@ -127,7 +127,7 @@ Variables:
|v:windowid| is always available (for use by external UIs) |v:windowid| is always available (for use by external UIs)
Commands: Commands:
|:CheckHealth| |:checkhealth|
|:drop| is available on all platforms |:drop| is available on all platforms
|:Man| is available by default, with many improvements such as completion |:Man| is available by default, with many improvements such as completion

View File

@@ -5535,7 +5535,7 @@ int get_default_register_name(void)
static yankreg_T *adjust_clipboard_name(int *name, bool quiet, bool writing) static yankreg_T *adjust_clipboard_name(int *name, bool quiet, bool writing)
{ {
#define MSG_NO_CLIP "clipboard: No provider. " \ #define MSG_NO_CLIP "clipboard: No provider. " \
"Try \":CheckHealth\" or \":h clipboard\"." "Try \":checkhealth\" or \":h clipboard\"."
yankreg_T *target = NULL; yankreg_T *target = NULL;
bool explicit_cb_reg = (*name == '*' || *name == '+'); bool explicit_cb_reg = (*name == '*' || *name == '+');

View File

@@ -1365,7 +1365,7 @@ void intro_message(int colon)
N_("https://neovim.io/community"), N_("https://neovim.io/community"),
"", "",
N_("type :help nvim<Enter> if you are new! "), N_("type :help nvim<Enter> if you are new! "),
N_("type :CheckHealth<Enter> to optimize Nvim"), N_("type :checkhealth<Enter> to optimize Nvim"),
N_("type :q<Enter> to exit "), N_("type :q<Enter> to exit "),
N_("type :help<Enter> for help "), N_("type :help<Enter> for help "),
"", "",

View File

@@ -100,7 +100,7 @@ describe('clipboard', function()
^ | ^ |
~ | ~ |
~ | ~ |
clipboard: No provider. Try ":CheckHealth" or ":h clipboard". | clipboard: No provider. Try ":checkhealth" or ":h clipboard". |
]], nil, {{bold = true, foreground = Screen.colors.Blue}}) ]], nil, {{bold = true, foreground = Screen.colors.Blue}})
end) end)
@@ -112,7 +112,7 @@ describe('clipboard', function()
feed_command('redir @+> | bogus_cmd | redir END') feed_command('redir @+> | bogus_cmd | redir END')
screen:expect([[ screen:expect([[
~ | ~ |
clipboard: No provider. Try ":CheckHealth" or ":h clipboard". | clipboard: No provider. Try ":checkhealth" or ":h clipboard". |
E492: Not an editor command: bogus_cmd | redir END | E492: Not an editor command: bogus_cmd | redir END |
Press ENTER or type command to continue^ | Press ENTER or type command to continue^ |
]], nil, {{bold = true, foreground = Screen.colors.Blue}}) ]], nil, {{bold = true, foreground = Screen.colors.Blue}})
@@ -132,7 +132,7 @@ describe('clipboard', function()
^ | ^ |
~ | ~ |
~ | ~ |
clipboard: No provider. Try ":CheckHealth" or ":h clipboard". | clipboard: No provider. Try ":checkhealth" or ":h clipboard". |
]], nil, {{bold = true, foreground = Screen.colors.Blue}}) ]], nil, {{bold = true, foreground = Screen.colors.Blue}})
end) end)

View File

@@ -68,7 +68,7 @@ describe('health.vim', function()
describe(":checkhealth", function() describe(":checkhealth", function()
it("concatenates multiple reports", function() it("concatenates multiple reports", function()
command("CheckHealth success1 success2") command("checkhealth success1 success2")
helpers.expect([[ helpers.expect([[
health#success1#check health#success1#check
@@ -87,7 +87,7 @@ describe('health.vim', function()
end) end)
it("gracefully handles broken healthcheck", function() it("gracefully handles broken healthcheck", function()
command("CheckHealth broken") command("checkhealth broken")
helpers.expect([[ helpers.expect([[
health#broken#check health#broken#check
@@ -111,7 +111,7 @@ describe('health.vim', function()
Bar = { foreground=Screen.colors.Purple }, Bar = { foreground=Screen.colors.Purple },
Bullet = { bold=true, foreground=Screen.colors.Brown }, Bullet = { bold=true, foreground=Screen.colors.Brown },
}) })
command("CheckHealth foo success1") command("checkhealth foo success1")
command("1tabclose") command("1tabclose")
command("set laststatus=0") command("set laststatus=0")
screen:expect([[ screen:expect([[
@@ -129,7 +129,7 @@ describe('health.vim', function()
end) end)
it("gracefully handles invalid healthcheck", function() it("gracefully handles invalid healthcheck", function()
command("CheckHealth non_existent_healthcheck") command("checkhealth non_existent_healthcheck")
helpers.expect([[ helpers.expect([[
health#non_existent_healthcheck#check health#non_existent_healthcheck#check

View File

@@ -16,7 +16,7 @@ do
clear() clear()
if missing_provider('ruby') then if missing_provider('ruby') then
pending( pending(
"Cannot find the neovim RubyGem. Try :CheckHealth", "Cannot find the neovim RubyGem. Try :checkhealth",
function() end) function() end)
return return
end end