diff options
Diffstat (limited to 'lua/gabrielgio/dap.lua')
-rw-r--r-- | lua/gabrielgio/dap.lua | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/lua/gabrielgio/dap.lua b/lua/gabrielgio/dap.lua new file mode 100644 index 0000000..2534c7a --- /dev/null +++ b/lua/gabrielgio/dap.lua @@ -0,0 +1,32 @@ +local dap = require("dap") +local key = require("gabrielgio.key") +local dapgo = require("dap-go") + +dapgo.setup({delve = {build_flags = "-tags=unit,integration,e2e"}}) + +key.nnoremap("<F5>", ":lua require'dap'.continue()<CR>") +key.nnoremap("<F10>", ":lua require'dap'.step_over()<CR>") +key.nnoremap("<F11>", ":lua require'dap'.step_into()<CR>") +key.nnoremap("<F12>", ":lua require'dap'.step_out()<CR>") +key.nnoremap("<leader>b", ":lua require'dap'.toggle_breakpoint()<CR>") +key.nnoremap("<leader>B", ":lua require'dap'.set_breakpoint(vim.fn.input('Condition: '))<CR>") +key.nnoremap("<leader>dt", ":lua require'dap-go'.debug_test()<CR>") +key.nnoremap("<leader>dr", ":lua require'dap'.repl.open()<CR>") + +dap.adapters.gdb = { + type = "executable", + command = "gdb", + args = { "-i", "dap" } +} + +dap.configurations.c = { + { + name = "Launch", + type = "gdb", + request = "launch", + program = function() + return vim.fn.input('Path to executable: ', vim.fn.getcwd() .. '/', 'file') + end, + cwd = "${workspaceFolder}", + }, +} |