VimSenseiStartarrow_forward
/ concepts guide·5 min read·beginner

Why also use Neovim?

You just learned Vim. Why are we switching engines for Row 2? Short version — Vim is your everywhere editor, Neovim is your IDE. They're the same muscle memory, two different jobs. Here's the case for keeping both.

/ 01

Vim and Neovim, not Vim vs. Neovim

Most "Vim or Neovim?" articles frame this as a fight. It isn't. They're the same muscle memory — every motion, operator, text object, register, macro, and command-line trick you learned in Row 1 works identically in both. Switching between them is a no-op for your hands.

What changes is the role each one plays in your day:

  • Vim is the editor that's already installed on every machine you'll ever SSH into. Servers, Docker containers, a fresh OS install, a teammate's laptop, a vimtutor session at 2am. You don't configure it, you don't install plugins to it — you open it, edit the file, leave.
  • Neovim is the editor you build into a real IDE. It's where you spend your day in your own codebase, with LSP, fuzzy finding, file tree, git integration, and a config you own.
/ 02

What Neovim adds

Neovim is a fork of Vim that started in 2014 with a specific bet: modernize the things Vim couldn't ship without breaking decades of muscle memory. The changes that matter for an IDE setup:

  • Async I/O. In Vim, a plugin running a slow command (lint, type-check, search) can block your keystrokes. Neovim runs that work on a background event loop — the editor stays responsive while your LSP thinks.
  • Lua as a first-class config language. Vim configures in Vimscript, which is fine for set number but punishing for anything structured. Neovim accepts Lua tables, functions, and modules — your init.lua reads like normal code.
  • A built-in LSP client. Neovim ships with the protocol baked in. Plugins like nvim-lspconfig are just thin wiring; the heavy lifting is core. In Vim you'd reach for a third-party plugin (and a different one every two years).
  • Tree-sitter. Real syntax trees, not regex highlighting. This unlocks accurate folds, structural text objects, and faster, more reliable highlighting on large files.
  • A plugin ecosystem that assumes all of the above. The most active modern plugins — lazy.nvim, telescope.nvim, mason.nvim, nvim-treesitter — target Neovim only. Following any 2026 dotfiles tutorial means running Neovim.

None of this is a knock on Vim. It's the cost Vim pays to stay backwards-compatible with three decades of muscle memory and .vimrc files. The Neovim project explicitly opted out of that constraint.

/ 03

Where Vim still wins

Configuring Neovim into an IDE is a great move for the machine you write code on every day. It is not a great move for every editor session.

  • Ubiquity. vim ships with virtually every Unix system. SSH into anything, git commit, edit a Dockerfile, fix a config — Vim is there. Neovim usually isn't, especially in stripped-down server images.
  • Small footprint. Vim runs in maybe 10MB of memory with no Lua runtime. On a Raspberry Pi, an Alpine container, or a cramped CI runner, Vim is the right choice.
  • No config. When you vim /etc/some-config-file over SSH, you don't want plugins, themes, or LSP. You want a clean modal editor that opens instantly. Vanilla Vim is that editor.

The practical conclusion: install both, learn the shared core in Row 1 (which runs in real Vim), and treat your Neovim setup as the editor you reach for inside your own projects.

/ 04

Your path through this curriculum

Vim Sensei splits the two intentionally:

  • Vim motions runs in real Vim, restricted-mode (rvim) inside the browser. Every motion you drill is the same motion in Neovim — the binary swap is invisible to your hands. The point of Row 1 is mastering the shared core, on the editor you'll actually find on every machine you SSH into.
  • Neovim config switches to Neovim, because nothing here works in vanilla Vim: a Lua plugin manager (lazy.nvim), the LSP client, the modern fuzzy finder, mason for installing language servers. Row 2 is "build Neovim into your IDE," and that exercise is Neovim-shaped from the first lesson onward.

When you finish Row 2, you walk away with an init.lua you own and understand. That config runs on your local Neovim — same plugins, same theme, same keybinds, same behaviour as the lessons. Real Vim still sits beside it, ready for every server, container, and emergency edit you'll do for the rest of your career.

/ Helpful?

Was this guide useful? One tap, no signup needed.

/ 05 — Now Practice

New keybinding → new muscle memory.

Reading only gets you so far. Your fingers need reps.