Why aren't there more plugins written in python?

This page summarizes the projects mentioned and recommended in the original post on /r/neovim

Our great sponsors
  • WorkOS - The modern identity platform for B2B SaaS
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • SaaSHub - Software Alternatives and Reviews
  • ultisnips

    UltiSnips - The ultimate snippet solution for Vim. Send pull requests to SirVer/ultisnips!

  • For me it's about extra dependencies. It's not enough to just have Neovim, you also need Python and the pynvim package, plus whatever Python dependencies the plugin might have. It used to be a tradeoff worth it before we had built-in Lua, but now it doesn't really matter. The last everyday Python plugin I have is UltiSnips and I am currently evaluating nvim-snippy as a replacement.

  • kok.nvim

    Fast as FUCK nvim completion. SQLite, concurrent scheduler, hundreds of hours of optimization.

  • There are some like https://github.com/SirVer/ultisnips and https://github.com/ms-jpq/coq_nvim. Speed is not really an issue, I guess people just prefer to have fewer dependencies and use lua which is already bundled in neovim.

  • WorkOS

    The modern identity platform for B2B SaaS. The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.

    WorkOS logo
  • nvim-snippy

    Snippet plugin for Neovim written in Lua

  • For me it's about extra dependencies. It's not enough to just have Neovim, you also need Python and the pynvim package, plus whatever Python dependencies the plugin might have. It used to be a tradeoff worth it before we had built-in Lua, but now it doesn't really matter. The last everyday Python plugin I have is UltiSnips and I am currently evaluating nvim-snippy as a replacement.

  • With that said, there is still a use for remote plugins: if you really need a libraries from that ecosystem, and you would have those libraries anyway, then there is no harm done. I have a plugin called pycodestyle.nvim which makes your Pycodestyle linter configuration available in Neovim. That way I can use my linter settings as my editor settings per project, no need to keep separate settings in sync. If I want to use that plugin I need Pycodestyle installed anyway, and if Pycodestyle is not available to plugin stays dormant.

NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts