145 lines
4.2 KiB
Markdown
145 lines
4.2 KiB
Markdown
|
|
# Neovim Configuration Summary
|
||
|
|
|
||
|
|
## Plugin Management
|
||
|
|
- **Plugin Manager**: `lazy.nvim` (auto-bootstrapped)
|
||
|
|
- **Leader Key**: `<Space>`
|
||
|
|
- **Update Checker**: Enabled (silent notifications)
|
||
|
|
|
||
|
|
## Core Plugins & Features
|
||
|
|
|
||
|
|
### File Navigation & Search
|
||
|
|
- **Telescope** (v0.1.8): Fuzzy finder for files, buffers, grep, help tags, marks
|
||
|
|
- **nvim-tree**: File browser
|
||
|
|
- **Tagbar**: Code structure viewer (properties/methods)
|
||
|
|
|
||
|
|
### LSP & Code Intelligence
|
||
|
|
- **Mason + Mason-LSPConfig**: LSP server management
|
||
|
|
- **nvim-lspconfig**: LSP client configuration
|
||
|
|
- **Lspsaga**: Enhanced LSP UI (code actions, definitions, diagnostics, outline)
|
||
|
|
- **nvim-cmp**: Completion engine with:
|
||
|
|
- Buffer, path, LSP, cmdline sources
|
||
|
|
- LuaSnip snippets
|
||
|
|
- Custom Cursor AI completion source (`cursor-agent` integration)
|
||
|
|
|
||
|
|
### Syntax & Highlighting
|
||
|
|
- **nvim-treesitter**: Syntax highlighting via language parsers
|
||
|
|
- **nvim-colorizer**: Color previews (hex codes, etc.)
|
||
|
|
- **SyntaxAttr**: Display syntax highlighting info
|
||
|
|
- **Gruvbox**: Colorscheme
|
||
|
|
|
||
|
|
### UI Enhancements
|
||
|
|
- **lualine**: Status bar
|
||
|
|
- **nvim-scrollbar**: Scrollbar indicator
|
||
|
|
- **indent-blankline**: Indentation guides
|
||
|
|
- **rainbow-delimiters**: Color-coded brackets/braces
|
||
|
|
- **deadcolumn**: Visual indicator near line limit
|
||
|
|
- **alpha-nvim**: Custom welcome screen
|
||
|
|
|
||
|
|
### Git Integration
|
||
|
|
- **vim-fugitive**: Git wrapper
|
||
|
|
- **vim-gitgutter**: Git diff indicators in gutter
|
||
|
|
|
||
|
|
### Code Quality & Formatting
|
||
|
|
- **conform.nvim**: Code formatter (configured for Lua with stylua)
|
||
|
|
- **Trouble.nvim**: Diagnostics viewer
|
||
|
|
|
||
|
|
### Marks & Navigation
|
||
|
|
- **marks.nvim**: Visual marks with gutter indicators
|
||
|
|
- **vim-indentwise**: Indentation-based navigation
|
||
|
|
|
||
|
|
### Other Utilities
|
||
|
|
- **undotree**: Visual undo history
|
||
|
|
- **which-key.nvim**: Keybinding help menu
|
||
|
|
- **toggleterm.nvim**: Floating terminal
|
||
|
|
- **llama.vim**: Local AI integration (requires llama.cpp with CUDA)
|
||
|
|
- **mini.nvim**: Mini utilities collection
|
||
|
|
- **volt/menu**: Context menu system
|
||
|
|
- **minty**: Color picker
|
||
|
|
|
||
|
|
## Key Bindings
|
||
|
|
|
||
|
|
### Telescope (`<leader>f`)
|
||
|
|
- `ff` - Find files
|
||
|
|
- `fg` - Live grep
|
||
|
|
- `fb` - Find buffers
|
||
|
|
- `fc` - Find in current buffer
|
||
|
|
- `fh` - Help tags
|
||
|
|
- `fm` - Marks
|
||
|
|
- `fr` - Resume last search
|
||
|
|
|
||
|
|
### LSP (`<leader>l`)
|
||
|
|
- `lc` - Code actions
|
||
|
|
- `lo` - Outline
|
||
|
|
- `lr` - Rename
|
||
|
|
- `ld` - Go to definition
|
||
|
|
- `lf` - LSP finder
|
||
|
|
- `lp` - Preview definition
|
||
|
|
- `lw` - Workspace diagnostics
|
||
|
|
- `lb` - Buffer diagnostics
|
||
|
|
- `lm` - LMS fixer (custom)
|
||
|
|
|
||
|
|
### Other Important Bindings
|
||
|
|
- `<leader>u` - Undo tree
|
||
|
|
- `<leader>m` - Marks management
|
||
|
|
- `<leader>t` - Tab navigation
|
||
|
|
- `<leader>b` - Buffer management
|
||
|
|
- `<leader>i` - Indentation toggles
|
||
|
|
- `<leader>n` - Remove search highlight
|
||
|
|
- `<leader>e` - Show diagnostic
|
||
|
|
- `<leader><F5>` - Definition in new tab
|
||
|
|
- `<leader><F8>` - Tagbar toggle
|
||
|
|
- `<C-k>` - LSP hover
|
||
|
|
- `<C-]>` - Jump to definition in new tab
|
||
|
|
- `<Tab>/<S-Tab>` - Tab navigation
|
||
|
|
- `<C-h/j/k/l>` - Window navigation
|
||
|
|
- `<C-m>` - Move split to tab
|
||
|
|
- `<C-t>` - Context menu
|
||
|
|
|
||
|
|
## Editor Settings
|
||
|
|
|
||
|
|
### Display
|
||
|
|
- True color support enabled
|
||
|
|
- Cursor line/column highlighting
|
||
|
|
- Line numbers
|
||
|
|
- Color column at 81
|
||
|
|
- Scroll offset: 5 lines
|
||
|
|
- Sign column always visible
|
||
|
|
|
||
|
|
### Indentation & Formatting
|
||
|
|
- Expand tabs to spaces
|
||
|
|
- Tab width: 4 spaces
|
||
|
|
- Smart indentation
|
||
|
|
- Show whitespace characters (eol, tabs, trails)
|
||
|
|
- No text wrapping
|
||
|
|
|
||
|
|
### Search
|
||
|
|
- Case-insensitive (smart case)
|
||
|
|
- Incremental search
|
||
|
|
- Highlight search results
|
||
|
|
- Wildignore case enabled
|
||
|
|
|
||
|
|
### Folding
|
||
|
|
- Method: indent
|
||
|
|
- Fold level: 99 (mostly open)
|
||
|
|
- Fold column visible
|
||
|
|
|
||
|
|
### Behavior
|
||
|
|
- Auto-read changed files
|
||
|
|
- Arrow keys disabled (forces hjkl)
|
||
|
|
- Mouse disabled
|
||
|
|
- Shell commands run interactively (`-ic` flag)
|
||
|
|
|
||
|
|
## Special Features
|
||
|
|
1. **Cursor AI Integration**: Custom completion source using `cursor-agent` for AI-powered completions
|
||
|
|
2. **PHP Helper**: Custom function for inserting debug backtraces
|
||
|
|
3. **Custom Aliases**: `Bufdel` command for buffer management
|
||
|
|
4. **Quick Directory Navigation**: Shortcuts to LMS project directories (`<leader>c`)
|
||
|
|
|
||
|
|
## Architecture
|
||
|
|
- Modular structure: config split into logical files
|
||
|
|
- Plugin configs in `lua/config/plugin/`
|
||
|
|
- Main entry point: `init.lua`
|
||
|
|
- Uses Lua-based configuration throughout
|
||
|
|
|
||
|
|
This setup focuses on productivity with LSP integration, AI-assisted completion, and a clean UI.
|