Post

Neovim Configuration Distributions

Introduction

Neovim refers to itself as “hyperextensible”. Much if not most of the ability to extend Neovim derives from its plugin architecture. There are hundreds of Neovim plugins, each with its own unique initialization and configuration, some with duplicate functionality. It can be difficult for a Neovim user to decide which plugins to use and how to configure each.

Fortunately, there exist many excellent pre-configured and user-extensible Neovim configuration distributions. However, there are so many good Neovim configuration distributions that it becomes difficult for a Neovim user to decide which distribution to use and how to tailor it for their use case.

Lazyman attempts to address this issue by providing several example configurations of many of the Neovim configuration distributions in an easy-to-install and easy-to-use manner. Try each distribution out, see how you like it, play with them, extend each to your liking, settle on one you like and adopt it for your use case(s).

Top Neovim configuration distributions

By far, the top 5 Neovim configuration distributions are AstroNvim, kickstart, LazyVim, LunarVim, and NvChad. That is not to say these are the “best” configuration distributions, simply that they are the most popular.

Each of these configuration distributions has value. They all provide excellent starting points for crafting your own custom configuration, they are all extensible and fairly easy to learn, and they all provide an out-of-the-box setup that can be used effectively without modification.

Distinguishing features of the top Neovim configuration distributions:

AstroNvim

kickstart

  • Minimal out-of-the-box setup
  • Easy to extend and widely used as a starting point
  • A good choice if your goal is hand-crafting your own config

LazyVim

  • Very well maintained by the author of lazy.nvim
  • Nice architecture, it’s a plugin with which you can import preconfigured plugins
  • Good documentation

LunarVim

  • Well maintained and mature
  • Custom installation processs installs LunarVim in an isolated location
  • Been around a while, large community, widespread presence on the web

NvChad

  • Really great base46 plugin enables easy theme/colorscheme management
  • Includes an impressive mappings cheatsheet
  • ui plugin and nvim-colorizer

Distributions included in Lazyman

Distributions not yet included in Lazyman

Lazyman included Neovim configuration distribution details

  • Abstract
  • AstroNvim
    • Neovimcraft description
    • Install all Lazyman AstroNvim configurations with lazyman -i astronvim -y
    • Lazyman AstroNvim configurations
      • ~/.config/nvim-AstroNvimPlus install with lazyman -a
      • ~/.config/nvim-AstroNvimStart install with lazyman -x AstroNvimStart
      • ~/.config/nvim-Kabin install with lazyman -x Kabin
      • ~/.config/nvim-Micah install with lazyman -x Micah
      • ~/.config/nvim-Normal install with lazyman -x Normal
      • ~/.config/nvim-Orhun install with lazyman -w Orhun
      • ~/.config/nvim-Spider install with lazyman -w Spider
  • CodeArt
  • CosmicNvim
  • Ecovim
  • kickstart
  • LazyVim
    • Neovimcraft description
    • Install all Lazyman LazyVim configurations with lazyman -i lazyvim -y
    • Lazyman LazyVim configurations
      • ~/.config/nvim-LazyVim install with lazyman -l
      • ~/.config/nvim-CatNvim install with lazyman -L CatNvim
      • ~/.config/nvim-Elijah install with lazyman -w Elijah
      • ~/.config/nvim-JustinNvim install with lazyman -w JustinNvim
      • ~/.config/nvim-JustinOhMy install with lazyman -x JustinOhMy
      • ~/.config/nvim-LazyIde install with lazyman -L LazyIde
      • ~/.config/nvim-Nv install with lazyman -L Nv
      • ~/.config/nvim-Traap install with lazyman -w Traap
      • ~/.config/nvim-Webdev install with lazyman -L Webdev
  • LunarVim
    • Neovimcraft description
    • Install all Lazyman LunarVim configurations with lazyman -i lunarvim -y
    • Lazyman LunarVim configurations
      • ~/.config/nvim-LunarVim install with lazyman -v
      • ~/.config/nvim-Daniel install with lazyman -w Daniel
      • ~/.config/nvim-JustinLvim install with lazyman -w JustinLvim
      • ~/.config/nvim-LunarIde install with lazyman -L LunarIde
      • ~/.config/nvim-LvimAdib install with lazyman -w LvimAdib
      • ~/.config/nvim-Shuvro install with lazyman -L Shuvro
  • LvimIde
    • Neovimcraft description (needs help)
    • Lazyman LvimIde configuration
      • ~/.config/nvim-LvimIde install with lazyman -L LvimIde
  • mini.nvim
  • NormalNvim
    • Neovimcraft description
    • NormalNvim is an enhanced fork of AstroNvim and serves as a sort of meta-distribution
    • Lazyman NormalNvim configuration
      • ~/.config/nvim-Normal install with lazyman -x Normal
  • NvChad
    • Neovimcraft description
    • Install all Lazyman NvChad configurations with lazyman -i nvchad -y
    • Lazyman NvChad configurations
      • ~/.config/nvim-NvChad install with lazyman -c
      • ~/.config/nvim-Cpp install with lazyman -L Cpp
      • ~/.config/nvim-Go install with lazyman -L Go
      • ~/.config/nvim-Python install with lazyman -L Python
      • ~/.config/nvim-Rust install with lazyman -L Rust
  • NvPak
  • SpaceVim
    • Lazyman SpaceVim configuration
      • ~/.config/nvim-SpaceVim install with lazyman -s

See also

This post is licensed under CC BY 4.0 by the author.