vimspector is a powerful debugging plugin for Vim and Neovim designed to bring IDE-style debugging capabilities (breakpoints, stepping, call stacks, watch windows) into the modal editor world. It supports multiple languages (C++, Python, TCL among others) via the Debug Adapter Protocol (DAP) model and provides an in-editor UI for viewing scopes, variables, stack frames, output windows and more. You configure it per-project via a .vimspector.json file (or per file type) specifying the adapter, launch configuration or attach process. Once configured you can run, pause, step into/out/over, set and clear breakpoints and inspect variables directly in Vim splits or floating windows. The UI is heavy compared to typical Vim plugins (multiple panes, layouts) but it fills the gap for users who want an integrated debug workflow without leaving the editor.
Features
- Multi-language debugging support via DAP (Debug Adapter Protocol) within Vim/Neovim
- UI panels for call stacks, variables/scopes, watches, output/debug console
- Configuration via .vimspector.json files and adapter modules for each project
- Commands and keybindings for run, pause, step into/over/out, restart, and stop
- Supports both launching new debug sessions and attaching to existing processes
- Customizable layouts and UI modules to suit your screen and workflow