summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSanto Cariotti <santo@dcariotti.me>2024-10-25 12:06:51 +0200
committerSanto Cariotti <santo@dcariotti.me>2024-10-25 12:06:51 +0200
commitcf051a148112d3c9b944b18506119b7c160bd130 (patch)
tree16a6ac163ebe12e87d1185233a1d90c7abfc8c51
parentddefe1a4d3963fec2d5b640bb8cd39cef8872b3b (diff)
Add dap for c/c++/rust
-rw-r--r--.config/nvim/init.lua2
-rw-r--r--.config/nvim/lua/dap_conf.lua (renamed from .config/nvim/lua/test-dap.lua)22
2 files changed, 23 insertions, 1 deletions
diff --git a/.config/nvim/init.lua b/.config/nvim/init.lua
index faa58e1..887de5e 100644
--- a/.config/nvim/init.lua
+++ b/.config/nvim/init.lua
@@ -208,7 +208,7 @@ vim.cmd.highlight('clear @ibl.scope.underline.1')
-- General settings
require('git') -- Load git-related settings
require('lsp_conf') -- Load LSP configuration
-require('test-dap')
+require('dap_conf')
-- Set up language client for Go
vim.g.LanguageClient_serverCommands = { go = { 'gopls' } }
diff --git a/.config/nvim/lua/test-dap.lua b/.config/nvim/lua/dap_conf.lua
index 4053c51..94abc72 100644
--- a/.config/nvim/lua/test-dap.lua
+++ b/.config/nvim/lua/dap_conf.lua
@@ -9,6 +9,28 @@ dap.listeners.before.launch.dapui_config = function()
dapui.open()
end
+dap.adapters.gdb = {
+ type = "executable",
+ command = "gdb",
+ args = { "--interpreter=dap", "--eval-command", "set print pretty on" }
+}
+
+local configurations = {'c', 'cpp', 'rust'}
+
+for _, conf in ipairs(configurations) do
+ dap.configurations[conf] = {
+ {
+ name = "Launch",
+ type = "gdb",
+ request = "launch",
+ program = function()
+ return vim.fn.input('Path to executable: ', vim.fn.getcwd() .. '/', 'file')
+ end,
+ cwd = "${workspaceFolder}",
+ stopAtBeginningOfMainSubprogram = false,
+ },
+ }
+end
-- Include the next few lines until the comment only if you feel you need it
dap.listeners.before.event_terminated.dapui_config = function()