Learn Vim at your own pace with my self-study Core Vim Course.

Learn more

Learn Vim at your own pace with my self-study Core Vim Course.

CheckHealth in Neovim


Run time:

Neovim’s :checkhealth command can diagnose problems with your configuration. In this video, we’ll run this command and follow its suggestions to enable features such as python integration and ruby integration.


The :checkhealth command runs a series of diagnostic tests to check the health of your Neovim installation. If it uncovers any problems, it usually offers suggestions on how to fix them, or where to go to learn more.

Optional features in Vim and Neovim

Vim and Neovim have different ways of enabling optional features. Simply put: Vim can enable optional features at compile time, whereas Neovim can enable optional features at runtime.

When you compile Vim, you can use the --with-features flag to specify a tiny, small, normal, big, or huge feature set. Look up :help +feature-list to find out which features are included in each type of build.

Neovim always builds using the equivalent of a huge feature set. Instead, Neovim uses providers, which make it possible to dynamically enable functionality when the necessary tools are available in the environment. Currently Neovim ships with providers for clipboard support, python integration, and ruby integration.

For example, take clipboard support on OS X. The version of Vim that ships with OS X was compiled without clipboard support. If you want Vim with clipboard support on OS X, then you either have to recompile or reinstall Vim. With Neovim, you simply have to make sure that pbcopy and pbpaste are available and the clipboard feature works automatically.

:CheckHealth or :checkhealth

The :CheckHealth command has been available since version 0.1.5 of Neovim. With Neovim version 0.2.1 and newer, you can use :checkhealth (as well as :CheckHealth). This screencast was recorded using version 0.1.7 of Neovim, so you’ll see me using :CheckHealth, because it was the only option at the time.

Remember: user-defined commands always have to begin with a capital letter, while commands that start with a lowercase letter are always built-in commands.

Further reading


Level-up your Vim


Boost your productivity with a Vim training class. Join a public class, or book a private session for your team.

Drew hosted a private Vim session for the shopify team that was one of the best workshops I have ever attended.

John Duff, Director of Engineering at Shopify


Make yourself a faster and more efficient developer with the help of these publications, including Practical Vim (Pragmatic Bookshelf 2012), which has over 50 five-star reviews on Amazon.

After reading it, I've switched to vim as my default editor on a daily basis with no regrets. ★★★★★

Javier Collado

Learn to use Vim efficiently in your Ruby projects

In association with thoughtbot, one of the most well respected Rails consultancies in the world, I've produced a series of screencasts on how to make navigating your Ruby projects with Vim ultra-efficient. Along the way, you’ll also learn how to make Ruby blocks a first-class text object in Vim. This lets you edit Ruby code at a higher level of abstraction. Available to buy from thoughtbot..