48 lines
1.1 KiB
Lua
48 lines
1.1 KiB
Lua
local dap = require("dap")
|
|
|
|
dap.adapters.delve = {
|
|
type = "server",
|
|
port = "${port}",
|
|
executable = {
|
|
command = "dlv",
|
|
args = { "dap", "-l", "127.0.0.1:${port}" },
|
|
},
|
|
}
|
|
|
|
-- https://github.com/go-delve/delve/blob/master/Documentation/usage/dlv_dap.md
|
|
dap.configurations.go = {
|
|
{
|
|
type = "delve",
|
|
name = "Debug file",
|
|
request = "launch",
|
|
program = "${file}",
|
|
},
|
|
{
|
|
type = "delve",
|
|
name = "Debug test", -- configuration for debugging test files
|
|
request = "launch",
|
|
mode = "test",
|
|
program = "${file}",
|
|
},
|
|
-- works with go.mod packages and sub packages
|
|
{
|
|
type = "delve",
|
|
name = "Debug app (go.mod)",
|
|
request = "launch",
|
|
program = "./${relativeFileDirname}",
|
|
},
|
|
{
|
|
type = "delve",
|
|
name = "Debug test (go.mod)",
|
|
request = "launch",
|
|
mode = "test",
|
|
program = "./${relativeFileDirname}",
|
|
},
|
|
}
|
|
|
|
vim.keymap.set("n", "<leader>dc", dap.continue)
|
|
vim.keymap.set("n", "<leader>db", dap.toggle_breakpoint)
|
|
vim.keymap.set("n", "<leader>dn", dap.step_over)
|
|
vim.keymap.set("n", "<leader>dN", dap.step_back)
|
|
vim.keymap.set("n", "<leader>dr", dap.repl.toggle)
|