No description
Find a file
Mathias Fussenegger da9a4ba653 Add license file
2020-08-29 12:14:38 +02:00
.github Add linter github action 2020-08-29 11:28:26 +02:00
doc Show exception info when stopped due to exception 2020-08-27 18:46:10 +02:00
images Add screenshot to README 2020-04-17 14:29:06 +02:00
lua Add linter github action 2020-08-29 11:28:26 +02:00
plugin Add a repl 2020-04-17 00:21:55 +02:00
.editorconfig Add initial code 2020-04-15 19:43:53 +02:00
.gitignore Ignore generated docs 2020-07-16 21:31:35 +03:00
.luacheckrc Add initial code 2020-04-15 19:43:53 +02:00
LICENSE.txt Add license file 2020-08-29 12:14:38 +02:00
README.md Add support for exception breakpoints 2020-08-27 18:46:10 +02:00

DAP (Debug Adapter Protocol)

nvim-dap is a Debug Adapter Protocol client implementation for Neovim (>= 0.5)

Warning: This is in an early stage and not really usable yet.

Features

  • launch debug adapter
  • attach to debug adapter
  • toggle breakpoints
  • breakpoints with conditions
  • logpoints
  • set function breakpoints
  • set exception breakpoints
  • step over, step into, step out
  • step back, reverse continue
  • Goto
  • restart
  • stop
  • evaluate expressions
  • REPL
  • threads, scopes and variables ui (via REPL commands)

screenshot

Extensions

Motivation

Why another DAP implementation for Neovim if there is already Vimspector?

This project makes some different choices:

  • Uses the Lua API of Neovim, and therefore targets only Neovim instead of both Vim and Neovim.
  • Tries to follow a similar design as the LSP implementation within Neovim. The idea is to have an extendable core.

Out of scope

Debug adapter installations are out of scope of this project.

There may be a nvim-dap-configs project at some point, similar to nvim-lsp.

Installation

  • Requires Neovim HEAD/nightly
  • nvim-dap is a plugin. Install it like any other Vim plugin.
  • Call :packadd nvim-dap if you install nvim-dap to 'packpath'.

Usage

See :help dap and the Debug-Adapter Installation wiki. Keep in mind that the APIs are subject to change.