← All open source projects

Neovim

neovim/neovim

Neovim is a Vim fork focused on extensibility, Lua configuration, built-in LSP, terminal UI, and a modern editor architecture.

Forks 6,914
Author neovim
Language Vim Script
License NOASSERTION
Synced 2026-06-09

What it is

Neovim appeared from the desire to evolve Vim faster and make the editor easier to extend. It keeps the essentials: modes, commands, speed, and keyboard-first editing. Internally it focuses on a more open architecture, APIs, and integration with modern development tools.

For many users, Neovim is not just an editor but a configurable environment. Lua configuration, plugins, built-in LSP client, treesitter, terminal buffers, and remote APIs make it possible to build a workspace for a specific language and style.

What is inside and how people use it

The repository contains the editor core, API implementation, terminal UI, tests, documentation, and build infrastructure. The project remains compatible with much of the Vim world while forming its own plugin ecosystem.

Lua configuration

This example shows the modern Neovim configuration style through Lua: options and shortcuts are declared programmatically.

Language: Plain text
vim.opt.number = true
vim.opt.relativenumber = true
vim.opt.expandtab = true
vim.opt.shiftwidth = 2

vim.keymap.set('n', '<leader>w', '<cmd>write<cr>', {
  desc = 'Save current file'
})

A typical scenario is a developer who wants a fast terminal editor that starts instantly, works over SSH, and still supports completion, diagnostics, code navigation, and Git integration. Neovim fills that space better than a basic editor and lighter than a heavy IDE.

Strengths and limitations

The strength is depth of configuration and speed. Neovim suits users willing to invest in their own setup and wanting an editor that works locally, remotely, and in the terminal.

The limitation is the same depth. A good Neovim setup takes time, plugin understanding, and configuration maintenance. For someone who wants a ready-made environment with little setup, it can be tiring.