My personal Neovim setup, optimized for development productivity. This configuration leverages Lua for a modern and efficient experience, with plugins managed by lazy.nvim and optimized for fast startup through strategic lazy loading.
Keymaps are documented in docs/keymaps.md.
Included docs:
- docs/keymaps.md: grouped keymap reference for core navigation, LSP, Telescope, Treesitter, and plugin workflows.
Key features include:
- IDE-like Experience: Language Server Protocol (LSP) integration via
lsp-zero.nvim,mason.nvim, andnvim-cmp, with inline diagnostics, inlay hints, symbol outline viaaerial.nvim, diagnostics panes viatrouble.nvim, progress notifications viafidget.nvim, and Rust support throughrustaceanvim. - Version Control: Seamless Git workflow with
neogit,diffview.nvim, and inline hunk/blame actions fromgitsigns.nvim. - Navigation & Discovery: Powerful fuzzy finding with
telescope.nvimfor files, buffers, and project-wide search.oil.nvimprovides a Vim-style file explorer. - Code Quality & Formatting: Automatic code formatting on save using
conform.nvim, linting vianvim-lint, intelligent syntax highlighting and indentation withnvim-treesitter, and color highlighting for various contexts (nvim-colorizer.lua,tailwindcss-colorizer-cmp.nvim). - User Interface: A functional statusline powered by
lualine.nvim, completion popups tuned for an IDE-like feel, and a welcoming dashboard usingdashboard-nvim. - Text Editing Enhancements: Smart autocompletion of pairs with
nvim-autopairsand convenient commenting/uncommenting withComment.nvim. - Language-Aware Lua Editing: Better Neovim Lua completion and typing support through
lazydev.nvim. - Specialized Workflows: Dedicated support for LaTeX projects with
vimtex, a powerful note-taking system usingneorg, and GitHub integration withocto.nvim.
Some features rely on tools outside Neovim being available on your PATH.
- LSP servers installed through
mason.nvim - Formatters such as
stylua,black,isort,prettier, andeslint_d - Linters such as
ruffandshellcheck