aboutsummaryrefslogtreecommitdiff
path: root/lua/gabrielgio/dap.lua
diff options
context:
space:
mode:
authorGabriel A. Giovanini <mail@gabrielgio.me>2024-06-14 19:06:50 +0200
committerGabriel A. Giovanini <mail@gabrielgio.me>2024-06-14 19:10:08 +0200
commitfb3c96d50d625db725940625120012c75afc17f6 (patch)
treeac50ce1016f2fbb97ae1a7bf04f75be2559e078d /lua/gabrielgio/dap.lua
downloadgabrielgio.lua-fb3c96d50d625db725940625120012c75afc17f6.tar.gz
gabrielgio.lua-fb3c96d50d625db725940625120012c75afc17f6.tar.bz2
gabrielgio.lua-fb3c96d50d625db725940625120012c75afc17f6.zip
feat: Initial commit
Diffstat (limited to 'lua/gabrielgio/dap.lua')
-rw-r--r--lua/gabrielgio/dap.lua32
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}",
+ },
+}