Neovim¶
Bugsaur integrates with Neovim, but the relationship is not the usual one.
Bugsaur runs standalone. Neovim is an integration, not the owner.
The debugger is the only DAP client and the authoritative owner of session state. Neovim edits code, navigates sources and manages breakpoint UX. Close Neovim and the session keeps running; reconnect and it picks up the current state.
That is why the plugin's setup() carries only editor and window options.
Adapters, programs and launch arguments live in the project's
.bugsaur/config.toml, so one setup() serves any number of projects in any
language — Rust, Go and PHP differ in their own config files, not in branching
inside your editor configuration.
What the integration adds¶
| Starting sessions | :DebugStart, :DebugTest from where the cursor is |
| Breakpoint UX | :ToggleBreakpoint, signs in the gutter, conditions |
| Source navigation | on each stop the file opens at the stop location |
| Execution marker | ▶ and a highlighted line where execution stands |
| Execution control | :DebugContinue, the stepping commands, :DebugStop |
| Window control | :DebugFocus, and options for how the window behaves |
This section¶
- Installation — wire the plugin into your config.
- Quick Start — first session from the editor.
- Commands — every command, with what it does.
- Keymaps — the default mappings, and the window's own hotkeys.
- Breakpoint synchronization — how the set is shared.
- How the integration works — sockets, protocol, lifecycle.