NeoVim

NeoVim is a refactor of Vim that replaces the monolithic architecture with an event-driven core, a MsgPack RPC API, and first-class Lua scripting. It ships with built-in LSP client, tree-sitter integration, and (as of 0.12) a built-in package manager.

Overview

  • Repo: github.com/neovim/neovim
  • Language: C core, Lua runtime, generated code via Lua scripts
  • Config: ~/.config/nvim/init.lua (or init.vim)
  • Install: brew install neovim / apt install neovim / build from source
  • Current version: 0.12 (dev), 0.11 (stable)
  • Source explored: _repos/neovim-neovim/

Contents

Concepts

  • Architecture - Event loop, UI protocol, RPC, and the C/Lua bridge
  • Lua API - The vim.* namespace, lazy loading, module structure
  • Plugin System - Built-in package manager, runtimepath, vim.pack.add()

Quickstart

Deep Dives

Notes

Resources