🚀 Neovim Nightly Configuration
A modular, high-performance Neovim configuration optimized for Neovim Nightly (0.13). This setup prioritizes speed, modern APIs, and a seamless writing and coding experience.
🏗️ Architecture
The configuration is strictly modular, following modern Lua best practices:
init.lua: Main entry point.lua/alowree/core/: Base configuration (options, keymaps, autocmds, diagnostics).lua/alowree/plugins/: Individual plugin specifications forlazy.nvim.ftplugin/: Filetype-specific settings (e.g., Markdown folding, indentation).
✨ Key Features
- Optimized for Nightly: Uses the latest
vim.lsp.configandvim.lsp.enableAPIs. - Lightning Fast Completion: Powered by
blink.cmpwith LSP, snippets, path, and dictionary sources. - Modern UI:
snacks.nvimfor high-performance pickers, notifications, and explorer.lualine.nvimfor a clean statusline.- Global statusline and global diagnostic configurations.
- Advanced Writing & Markdown:
- Custom Markdown folding logic (H1-H6) with optimized keymaps.
- Automatic Input Method Switching (IME) for Windows and macOS.
conform.nvimfor reliable formatting on save.
- Rich Intelligence:
- Treesitter for superior highlighting and text-objects.
- LSP with global capabilities integration.
⌨️ Essential Keymaps
General
| Key | Action |
|---|---|
<leader>S | Source init.lua (hot reload) |
<leader>R | Restart Neovim |
<C-s> | Save File |
<leader>qa | Quit All |
<esc> | Clear Search Highlights |
Navigation & Window Management
| Key | Action |
|---|---|
<C-h/j/k/l> | Move focus between windows |
<leader>sv | Split Window Vertically |
<leader>sh | Split Window Horizontally |
<C-Up/Down/Left/Right> | Resize Windows |
<leader>bn / bp | Next / Previous Buffer |
<leader>bb | Switch to Alternate Buffer |
<leader>bd | Delete Buffer |
Editing & Visual
| Key | Action |
|---|---|
<A-j / k> | Move Line Down / Up (Normal/Insert/Visual) |
<A-h / l> | Go to Start / End of Line |
< / > | Indent / Outdent (remains in visual mode) |
gco / gcO | Add Comment Below / Above |
<leader>sr | Search & Replace Word (under cursor) |
Snacks Picker (Search)
| Key | Action |
|---|---|
<leader><space> | Smart Find Files |
<leader>ff | Find Files |
<leader>fg | Find Git Files |
<leader>fr | Recent Files |
<leader>sg | Live Grep |
<leader>sk | Keymaps |
<leader>sd | Diagnostics |
LSP & Diagnostics
| Key | Action |
|---|---|
gd | Go to Definition |
gr | References (Snacks Picker) |
gI | Implementations |
gy | Type Definition |
gL | Toggle Virtual Lines (Diagnostics) |
<leader>lq | Send Diagnostics to Quickfix |
Markdown & Folding
| Key | Action |
|---|---|
zj / zk / zl / z; | Fold Headings Level 1-4+ |
zu | Unfold All Headings |
<CR> | Toggle Fold under cursor |
zi | Fold Heading cursor is currently on |
am / im | Around / Inside Code Block (Text Object) |
<leader>ts | Toggle Spell Check |
<leader>tw | Toggle Line Wrap |
🛠️ Requirements
- Neovim Nightly (0.13)
- Nerd Fonts (for icons)
- Ripgrep (for searching)
- External Tools:
im-select.exe(Windows) orInputSourceSelector(macOS) for IME switching.prettierd,stylua,black, etc., for formatting.