mfussenegger / nvim-dap

Debug Adapter Protocol client implementation for Neovim
GNU General Public License v3.0
5.09k stars 179 forks source link
debug-adapter-protocol debugger neovim neovim-plugin

DAP (Debug Adapter Protocol)

nvim-dap is a Debug Adapter Protocol client implementation for Neovim. nvim-dap allows you to:

demo

Installation

LuaRocks

Supported Neovim versions:

You'll need to install and configure a debug adapter per language. See

Usage

A typical debug flow consists of:

See :help dap.txt, :help dap-mapping and :help dap-api.

Supported languages

In theory all of the languages for which a debug adapter exists should be supported.

The Wiki is community maintained. If you got an adapter working that isn't listed yet, please extend the Wiki.

Some debug adapters have language specific extensions. Using them over a manual configuration is recommended, as they're usually better maintained.

If the instructions in the wiki for a debug adapter are not working, consider that debug adapters may have made changes since the instructions were written. You may want to read the release notes of the debug adapters or try with an older version. Please update the wiki if you discover outdated examples.

Goals

Extensions

All known extensions are listed in the Wiki. The wiki is community maintained. Please add new extensions if you built one or if you discovered one that's not listed.

Non-Goals

Alternatives

Contributing

Contributions are welcome:

Before making direct code contributions, please create a discussion or issue to clarify whether the change is in scope of the nvim-dap core.

Please keep pull requests focused and don't change multiple things at the same time.

Features