summaryrefslogtreecommitdiff
path: root/lua
diff options
context:
space:
mode:
authorAotrix <[email protected]>2025-01-25 01:34:09 +0100
committerAotrix <[email protected]>2025-01-25 01:34:09 +0100
commit8a933ee2bf9ad73643a19f6a4d3e84142d1acea3 (patch)
treef49ed92f05c6ab42b2a084ce100e28225f9a590a /lua
parentcbfd9e0747ae2801eb812caaa07030f54db3a4b9 (diff)
added nvim-dap
Diffstat (limited to 'lua')
-rw-r--r--lua/nvim_dap/nvim_dap.lua37
-rw-r--r--lua/nvim_settings/remap.lua14
2 files changed, 51 insertions, 0 deletions
diff --git a/lua/nvim_dap/nvim_dap.lua b/lua/nvim_dap/nvim_dap.lua
new file mode 100644
index 0000000..209cab1
--- /dev/null
+++ b/lua/nvim_dap/nvim_dap.lua
@@ -0,0 +1,37 @@
+local dap = require "dap"
+local ui = require "dapui"
+
+require("dapui").setup()
+require("nvim-dap-virtual-text").setup()
+require("mason").setup()
+
+dap.adapters.codelldb = {
+ type = "executable",
+ command = "codelldb", -- or if not in $PATH: "/absolute/path/to/codelldb"
+}
+
+dap.configurations.cpp = {
+ {
+ name = "Launch file",
+ type = "codelldb",
+ request = "launch",
+ program = function()
+ return vim.fn.input('Path to executable: ', vim.fn.getcwd() .. '/', 'file')
+ end,
+ cwd = '${workspaceFolder}',
+ stopOnEntry = false,
+ },
+}
+
+dap.listeners.before.attach.dapui_config = function()
+ ui.open()
+end
+dap.listeners.before.launch.dapui_config = function()
+ ui.open()
+end
+dap.listeners.before.event_terminated.dapui_config = function()
+ ui.close()
+end
+dap.listeners.before.event_exited.dapui_config = function()
+ ui.close()
+end
diff --git a/lua/nvim_settings/remap.lua b/lua/nvim_settings/remap.lua
index 9f6a06d..7c5b5f0 100644
--- a/lua/nvim_settings/remap.lua
+++ b/lua/nvim_settings/remap.lua
@@ -35,3 +35,17 @@ vim.keymap.set("n", "gi", "<Plug>(coc-implementation)", {silent = true})
-- Remove <C-c> because it is not fast enough
vim.keymap.set({'n', 'i', 'v'}, '<C-c>', '<nop>')
+
+-- nvim-dap
+vim.keymap.set("n", "<space>b", function() require("dap").toggle_breakpoint() end)
+vim.keymap.set("n", "<space>gb", function() require("dap").run_to_cursor() end)
+-- Eval var under cursor
+vim.keymap.set("n", "<space>?", function()
+ require("dapui").eval(nil, { enter = true })
+end)
+vim.keymap.set("n", "<F1>", function() require("dap").continue() end)
+vim.keymap.set("n", "<F2>", function() require("dap").step_into() end)
+vim.keymap.set("n", "<F3>", function() require("dap").step_over() end)
+vim.keymap.set("n", "<F4>", function() require("dap").step_out() end)
+vim.keymap.set("n", "<F5>", function() require("dap").step_back() end)
+vim.keymap.set("n", "<F13>", function() require("dap").restart() end)