adopt neovim 0.12 native editing features

This commit is contained in:
Ray Elliott 2026-10-28 15:43:13 +00:00
commit 282e5e0f0b
18 changed files with 125 additions and 215 deletions

View file

@ -2,6 +2,8 @@
Living reference for session management, keymaps, commands, and plugin-specific features in this config.
The active runtime is Neovim 0.12.6 through `~/.local/bin/nvim`. Neovim 0.11.5 remains available at `/opt/neovim/nvim-linux-x86_64/bin/nvim` for emergency rollback; the config starts there with 0.12-only native completion and Undotree disabled.
## Session Management
Session support is automatic but user-controlled:
@ -240,13 +242,13 @@ Buffer-local keymaps available when inside a git repository:
| preview window | `<C-u>` / `<C-d>` | Scroll within UFO preview |
| preview window | `[` / `]` | Jump to top/bottom of preview |
### Undotree `lua/plugins/undotree.lua`
### Native Undotree `lua/keymaps.lua`
#### Keymaps
| Mode | Key | Description |
| --- | --- | --- |
| n | `<leader>u` | Toggle Undotree panel |
| n | `<leader>u` | Toggle Neovim's native Undotree panel (`:Undotree`) |
### Treesitter `lua/plugins/treesitter.lua`
@ -321,17 +323,33 @@ The configuration uses nvim-surround v4's default mappings.
| normal | `cs{old}{new}` | Change surround |
| normal | `cS{old}{new}` | Change surround (linewise) |
### Nvim-cmp (Completion) `lua/plugins/cmp.lua`
### Native Completion `lua/completion.lua`
#### Keymaps
| Mode | Key | Description |
| --- | --- | --- |
| insert | `<C-Space>` | Manually trigger completion |
| insert | `<CR>` | Confirm the explicitly selected completion item |
| insert | `<C-Space>` | Manually trigger LSP completion |
| insert | `<C-n>` | Next completion item |
| insert | `<C-p>` | Previous completion item |
| insert | `<C-e>` | Abort completion menu |
| insert | `<C-y>` | Accept the explicitly selected completion item |
| insert | `<C-e>` | Dismiss the completion menu |
| insert | `<C-x><C-n>` | Complete words from the current buffer |
| insert | `<C-x><C-f>` | Complete a filesystem path |
| insert/select | `<Tab>` / `<S-Tab>` | Jump forward/backward through native snippet tabstops |
Completion opens automatically after a 150 ms delay, uses fuzzy matching, and does not preselect an item. LSP buffers prioritize language-aware results exclusively; buffer words remain available explicitly with `<C-x><C-n>`. Buffers without an LSP autocomplete from a bounded set of nearby words.
### Copilot Inline Suggestions `lua/plugins/copilot.lua`
Copilot appears as ghost text rather than as an item in the native completion menu. Suggestions are hidden while that menu is visible.
| Mode | Key | Description |
| --- | --- | --- |
| insert | `<M-l>` | Accept the visible Copilot suggestion |
| insert | `<M-]>` | Show the next Copilot suggestion |
| insert | `<M-[>` | Show the previous Copilot suggestion |
| insert | `<C-]>` | Dismiss the Copilot suggestion |
### Nvim-autopairs `lua/plugins/autopairs.lua`