Set up LuaSnip with VSCode-style snippets, configure autopairs for smart bracket matching, and create your own snippet library with dynamic placeholders.
Neovim's Lua API means your editor config is a real program — not a pile of Vimscript variables. You get functions, loops, conditionals, and lazy loading for free.
By the end of this 10 min guide, you'll have a working Neovim setup and practical Neovim workflows you can use immediately.
Install Neovim:
brew install neovim ripgrepneovim --version or neovim -V after installing.Structure your config into modular files under lua/. Each file handles one concern: options, keymaps, plugins, autocmds.
Here's a foundational configuration to start with:
-- keymaps.lua
vim.keymap.set("n", "w", ":w", { desc = "Save" })
vim.keymap.set("n", "q", ":q", { desc = "Quit" })
vim.keymap.set("n", "e", ":NvimTreeToggle", { desc = "Toggle file tree" }) With Neovim configured, these Neovim-specific workflows will save you time every day:
<leader>ff find files with Telescope<leader>fg live grep across projectgd go to definition via LSPgr list references<C-h/j/k/l> navigate window splitsOnce you're comfortable with Neovim basics, these advanced techniques will transform your Neovim workflow:
autocmd to run code on file type changesHere are the most common Neovim issues and how to fix them:
:LspInfo to check active clients:TSUpdate to update parsers:Lazy sync to install all:Lazy profile to find the bottleneckCongratulations — you now have a solid Neovim foundation. Here's where to go next: