ConfigsApr 11, 2026·1 min read

Neovim — Hyperextensible Vim-Based Text Editor

Neovim is a Vim-fork focused on extensibility and usability. First-class Lua scripting, native LSP client, Tree-sitter for incremental parsing, async job control, and floating windows. The modern heir to Vim loved by developers worldwide.

AI
AI Open Source · Community
Quick Use

Use it first, then decide how deep to go

This block should tell both the user and the agent what to copy, install, and apply first.

# Install
brew install neovim                      # macOS
sudo apt install neovim                  # Debian/Ubuntu
winget install Neovim.Neovim             # Windows

# Launch
nvim file.txt

Init config ~/.config/nvim/init.lua:

vim.opt.number = true
vim.opt.relativenumber = true
vim.opt.tabstop = 2
vim.opt.shiftwidth = 2
vim.opt.expandtab = true
vim.opt.termguicolors = true

-- Plugin manager (lazy.nvim)
vim.cmd([[packadd lazy.nvim]])
require("lazy").setup({
  { "nvim-treesitter/nvim-treesitter", build = ":TSUpdate" },
  { "neovim/nvim-lspconfig" },
  { "hrsh7th/nvim-cmp" },
  { "folke/tokyonight.nvim" },
})

vim.cmd.colorscheme("tokyonight")
Intro

Neovim is a Vim-fork started in 2014 by Thiago de Arruda focused on extensibility, usability, and maintainability. Rewrote key internals, added first-class Lua scripting, native LSP client, Tree-sitter parser, and a remote plugin API. Still maintains backwards compatibility with Vim.

What Neovim Does

  • Modal editing — Normal, Insert, Visual, Command modes
  • Lua scripting — full Lua API instead of Vimscript-only
  • Built-in LSP — IDE-grade language features
  • Tree-sitter — incremental syntax parsing, better highlighting
  • Async jobs — run commands without blocking
  • Terminal emulator:terminal inside Neovim
  • Floating windows — for menus, diagnostics, pickers
  • Plugin ecosystem — via lazy.nvim, packer, vim-plug

Architecture

Fork of Vim with a cleaner codebase, MsgPack RPC for remote plugins, libuv for async, and Lua built in (5.1 via LuaJIT). The editor loop processes events and renders via redraw API. External TUIs and IDE integrations use the RPC layer.

Self-Hosting

CLI tool, self-contained binary.

Key Features

  • First-class Lua
  • Native LSP client
  • Tree-sitter integration
  • Floating windows
  • Async job control
  • Modern plugin managers (lazy.nvim)
  • Popular distros: LazyVim, NvChad, AstroNvim, Kickstart.nvim
  • Cross-platform

Comparison

Editor Modal LSP Speed Ecosystem
Neovim Yes (Vim) Built-in Fast Huge
Vim Yes Plugin Fast Large
Helix Yes (Kakoune) Built-in Fast Growing
Emacs No lsp-mode Slow Huge
VS Code No Built-in Slow (Electron) Huge

常见问题 FAQ

Q: 零配置起步? A: 用 LazyVim 或 Kickstart.nvim 模板 clone 下来就能用。包含 LSP、补全、搜索、文件树。

Q: Lua vs Vimscript? A: 新项目强烈推荐 Lua:类型、调试、性能都优于 Vimscript。老插件可以保留 Vimscript 不必重写。

Q: 和 VS Code 比? A: VS Code 新手友好、生态完备、速度较慢。Neovim 启动毫秒级、可编辑上下文中的任何代码、但需要配置时间。

来源与致谢 Sources

Discussion

Sign in to join the discussion.
No comments yet. Be the first to share your thoughts.

Related Assets