aboutsummaryrefslogtreecommitdiffstats
path: root/nvim/lua/user/dap.lua
diff options
context:
space:
mode:
Diffstat (limited to 'nvim/lua/user/dap.lua')
-rw-r--r--nvim/lua/user/dap.lua67
1 files changed, 67 insertions, 0 deletions
diff --git a/nvim/lua/user/dap.lua b/nvim/lua/user/dap.lua
new file mode 100644
index 0000000..93942b8
--- /dev/null
+++ b/nvim/lua/user/dap.lua
@@ -0,0 +1,67 @@
+local M = {
+ "mfussenegger/nvim-dap",
+ commit = "6b12294a57001d994022df8acbe2ef7327d30587",
+ event = "VeryLazy",
+}
+
+function M.config()
+ local dap = require "dap"
+
+ local dap_ui_status_ok, dapui = pcall(require, "dapui")
+ if not dap_ui_status_ok then
+ return
+ end
+
+ dap.listeners.after.event_initialized["dapui_config"] = function()
+ dapui.open()
+ end
+
+ dap.listeners.before.event_terminated["dapui_config"] = function()
+ dapui.close()
+ end
+
+ dap.listeners.before.event_exited["dapui_config"] = function()
+ dapui.close()
+ end
+
+ dap.adapters.codelldb = {
+ type = "server",
+ port = "${port}",
+ executable = {
+ -- provide the absolute path for `codelldb` command if not using the one installed using `mason.nvim`
+ command = "codelldb",
+ args = { "--port", "${port}" },
+ -- On windows you may have to uncomment this:
+ -- detached = false,
+ },
+ }
+ dap.configurations.c = {
+ {
+ name = "Launch file",
+ type = "codelldb",
+ request = "launch",
+ program = function()
+ local path
+ vim.ui.input({ prompt = "Path to executable: ", default = vim.loop.cwd() .. "/build/" }, function(input)
+ path = input
+ end)
+ vim.cmd [[redraw]]
+ return path
+ end,
+ cwd = "${workspaceFolder}",
+ stopOnEntry = false,
+ },
+ }
+end
+
+M = {
+ "ravenxrz/DAPInstall.nvim",
+ commit = "8798b4c36d33723e7bba6ed6e2c202f84bb300de",
+ lazy = true,
+ config = function()
+ require("dap_install").setup {}
+ require("dap_install").config("python", {})
+ end,
+}
+
+return M