When I run :CheckHealth in neovim, I obtain:

Python 3 provider (optional) ~
- pyenv: Path: /usr/share/pyenv/libexec/pyenv
- pyenv: Root: /home/USERNAME/.pyenv
- Using: g:python3_host_prog = "/home/USERNAME/.pyenv/versions/neovim/bin/python"
- Executable: /home/USERNAME/.pyenv/versions/neovim/bin/python
- Python version: 3.12.1
- pynvim version: 0.5.0
- OK Latest pynvim is installed.

Python virtualenv ~

Ruby provider (optional) ~
- Disabled (g:loaded_ruby_provider=0).

Node.js provider (optional) ~
- Disabled (g:loaded_node_provider=0).

Perl provider (optional) ~
- Disabled (g:loaded_perl_provider=0).

I have disabled Ruby, Node.js and Perl providers with:

vim.g.loaded_ruby_provider = 0
vim.g.loaded_node_provider = 0
vim.g.loaded_perl_provider = 0

in my init.lua, because they slowed down significantly nvim startup time.

I frequently code in Python, so I don't know whether I can disable that provider too.

  • What are providers?
  • What do they do?
  • Can I disable the Python provider as well?

1 Answer 1


Vim can embed other languages. It allows plugin author to write code in another language than VimScript.

If you don't plan to use plugins that are written in these languages you don't need these providers.

I'm aware of a small number of plugins that requires the Python provider.

I suspect that a number of Neovim plugins will rely on the Node.js provider (but this need to be confirmed).

I believe the ruby and perl provider are rarely used or only for ruby and perl specific plugins (but this need to be confirmed).

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.